{"resource_docs":[{"operation_id":"OBPv3.0.0-getCurrentUser","implemented_by":{"version":"OBPv3.0.0","function":"getCurrentUser"},"request_verb":"GET","request_url":"/obp/v3.0.0/users/current","summary":"Get User (Current)","description":"
Get the logged in user
\nAuthentication is Mandatory
\nJSON response body fields:
\naccount_id: 8ca8a7e4-6d02-40e3-a129-0b2bf89de9f0
\nbank_id: gh.29.uk
\n\n\n\nlist:
\nprovider: ETHEREUM
\n\n\nuser_id: 9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1
\nusername: felixsmith
\nview_id: owner
\n\n","description_markdown":"Get the logged in user\n\nAuthentication is Mandatory\n\n\n**JSON response body fields:**\n\n\n\n[**account_id**](/glossary#): 8ca8a7e4-6d02-40e3-a129-0b2bf89de9f0\n\n\n\n[**bank_id**](/glossary#): gh.29.uk\n\n\n\n[**email**](/glossary#): felixsmith@example.com\n\n\n\n[**entitlement_id**](/glossary#entitlement_id): \n\n\n\n[**entitlements**](/glossary#entitlements): \n\n\n\n[**list**](/glossary#list): \n\n\n\n[**provider**](/glossary#provider): ETHEREUM\n\n\n\n[**provider_id**](/glossary#provider_id): \n\n\n\n[**role_name**](/glossary#role_name): \n\n\n\n[**user_id**](/glossary#): 9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1\n\n\n\n[**username**](/glossary#): felixsmith\n\n\n\n[**view_id**](/glossary#): owner\n\n\n\n[views](/glossary#views): \n\n\n","success_response_body":{"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"}]},"views":{"list":[{"bank_id":"gh.29.uk","account_id":"8ca8a7e4-6d02-40e3-a129-0b2bf89de9f0","view_id":"owner"}]}},"error_response_bodies":["OBP-20001: User not logged in. Authentication is required!","OBP-50000: Unknown Error."],"tags":["User"],"typed_success_response_body":{"type":"object","properties":{"provider":{"type":"string"},"email":{"type":"string"},"provider_id":{"type":"string"},"entitlements":{"type":"object","properties":{"list":{"type":"array","items":{"type":"object","properties":{"role_name":{"type":"string"},"bank_id":{"type":"string"},"entitlement_id":{"type":"string"}}}}}},"username":{"type":"string"},"views":{"type":"object","properties":{"list":{"type":"array","items":{"type":"object","properties":{"bank_id":{"type":"string"},"view_id":{"type":"string"},"account_id":{"type":"string"}}}}}},"user_id":{"type":"string"}}},"is_featured":false,"special_instructions":"","specified_url":"/obp/v5.1.0/users/current","connector_methods":["obp.getBankAccountsForUser"]},{"operation_id":"OBPv4.0.0-createUserWithRoles","implemented_by":{"version":"OBPv4.0.0","function":"createUserWithRoles"},"request_verb":"POST","request_url":"/obp/v4.0.0/user-entitlements","summary":"Create (DAuth) User with Roles","description":"This endpoint is used as part of the DAuth solution to grant Entitlements for Roles to a smart contract on the blockchain.
\nPut the smart contract address in username
\nFor provider use "dauth"
\nThis endpoint will create the User with username and provider if the User does not already exist.
\nThen it will create Entitlements i.e. grant Roles to the User.
\nEntitlements are used to grant System or Bank level roles to Users. (For Account level privileges, see Views)
\ni.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.
\nFor a System level Role (.e.g CanGetAnyUser), set bank_id to an empty string i.e. "bank_id":""
\nFor a Bank level Role (e.g. CanCreateAccount), set bank_id to a valid value e.g. "bank_id":"my-bank-id"
\nNote: The Roles actually granted will depend on the Roles that the calling user has.
\nIf you try to grant Entitlements to a user that already exist (duplicate entitilements) you will get an error.
\nFor information about DAuth see below:
\nDAuth is an experimental authentication mechanism that aims to pin an ethereum or other blockchain Smart Contract to an OBP "User".
\nIn 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.
\nThus, 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".
\nDAuth is invoked by the REST client (caller) including a specific header (see step 3 below) in any OBP REST call.
\nWhen 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.
\nIf you are calling OBP-API via an API3 Airnode, the Airnode will take care of constructing the required header.
\nWhen 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.
\nNote: The DAuth flow does not require an explicit POST like Direct Login to create the token.
\nPermissions may be assigned to an OBP User at any time, via the UserAuthContext, Views, Entitlements to Roles or Consents.
\nNote: DAuth is enabled.
\nNote: The DAuth client is responsible for creating a token which will be trusted by OBP absolutely!
\nTo use DAuth:
\nSet up properties in your props file
\n# -- DAuth --------------------------------------\n# Define secret used to validate JWT token\n# jwt.public_key_rsa=path-to-the-pem-file\n# Enable/Disable DAuth communication at all\n# In case isn't defined default value is false\n# allow_dauth=false\n# Define comma separated list of allowed IP addresses\n# dauth.host=127.0.0.1\n# -------------------------------------- DAuth--\n
\nPlease 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.
\nThe following videos are available:
\n* DAuth in local environment
HEADER:ALGORITHM & TOKEN TYPE
\n{\n "alg": "RS256",\n "typ": "JWT"\n}\n
\nPAYLOAD:DATA
\n{\n "smart_contract_address": "0xe123425E7734CE288F8367e1Bb143E90bb3F051224",\n "network_name": "AIRNODE.TESTNET.ETHEREUM",\n "msg_sender": "0xe12340927f1725E7734CE288F8367e1Bb143E90fhku767",\n "consumer_key": "0x1234a4ec31e89cea54d1f125db7536e874ab4a96b4d4f6438668b6bb10a6adb",\n "timestamp": "2021-11-04T14:13:40Z",\n "request_id": "0Xe876987694328763492876348928736497869273649"\n}\n
\nVERIFY SIGNATURE
\nRSASHA256(\n base64UrlEncode(header) + "." +\n base64UrlEncode(payload),\n) your-RSA-key-pair
\n
\nHere is an example token:
\neyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzbWFydF9jb250cmFjdF9hZGRyZXNzIjoiMHhlMTIzNDI1RTc3MzRDRTI4OEY4MzY3ZTFCYjE0M0U5MGJiM0YwNTEyMjQiLCJuZXR3b3JrX25hbWUiOiJFVEhFUkVVTSIsIm1zZ19zZW5kZXIiOiIweGUxMjM0MDkyN2YxNzI1RTc3MzRDRTI4OEY4MzY3ZTFCYjE0M0U5MGZoa3U3NjciLCJjb25zdW1lcl9rZXkiOiIweDEyMzRhNGVjMzFlODljZWE1NGQxZjEyNWRiNzUzNmU4NzRhYjRhOTZiNGQ0ZjY0Mzg2NjhiNmJiMTBhNmFkYiIsInRpbWVzdGFtcCI6IjIwMjEtMTEtMDRUMTQ6MTM6NDBaIiwicmVxdWVzdF9pZCI6IjBYZTg3Njk4NzY5NDMyODc2MzQ5Mjg3NjM0ODkyODczNjQ5Nzg2OTI3MzY0OSJ9.XSiQxjEVyCouf7zT8MubEKsbOBZuReGVhnt9uck6z6k\n
\nUsing your favorite http client:
\nGET https://api3.openbankproject.com/obp/v3.0.0/users/current
\nBody
\nLeave Empty!
\nHeaders:
\n DAuth: your-jwt-from-step-above\n
\nHere is it all together:
\nGET https://api3.openbankproject.com/obp/v3.0.0/users/current HTTP/1.1
\nHost: localhost:8080
\nUser-Agent: curl/7.47.0
\nAccept: /
\nDAuth: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzbWFydF9jb250cmFjdF9hZGRyZXNzIjoiMHhlMTIzNDI1RTc3MzRDRTI4OEY4MzY3ZTFCYjE0M0U5MGJiM0YwNTEyMjQiLCJuZXR3b3JrX25hbWUiOiJFVEhFUkVVTSIsIm1zZ19zZW5kZXIiOiIweGUxMjM0MDkyN2YxNzI1RTc3MzRDRTI4OEY4MzY3ZTFCYjE0M0U5MGZoa3U3NjciLCJjb25zdW1lcl9rZXkiOiIweDEyMzRhNGVjMzFlODljZWE1NGQxZjEyNWRiNzUzNmU4NzRhYjRhOTZiNGQ0ZjY0Mzg2NjhiNmJiMTBhNmFkYiIsInRpbWVzdGFtcCI6IjIwMjEtMTEtMDRUMTQ6MTM6NDBaIiwicmVxdWVzdF9pZCI6IjBYZTg3Njk4NzY5NDMyODc2MzQ5Mjg3NjM0ODkyODczNjQ5Nzg2OTI3MzY0OSJ9.XSiQxjEVyCouf7zT8MubEKsbOBZuReGVhnt9uck6z6k
CURL example
\ncurl -v -H 'DAuth: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzbWFydF9jb250cmFjdF9hZGRyZXNzIjoiMHhlMTIzNDI1RTc3MzRDRTI4OEY4MzY3ZTFCYjE0M0U5MGJiM0YwNTEyMjQiLCJuZXR3b3JrX25hbWUiOiJFVEhFUkVVTSIsIm1zZ19zZW5kZXIiOiIweGUxMjM0MDkyN2YxNzI1RTc3MzRDRTI4OEY4MzY3ZTFCYjE0M0U5MGZoa3U3NjciLCJjb25zdW1lcl9rZXkiOiIweDEyMzRhNGVjMzFlODljZWE1NGQxZjEyNWRiNzUzNmU4NzRhYjRhOTZiNGQ0ZjY0Mzg2NjhiNmJiMTBhNmFkYiIsInRpbWVzdGFtcCI6IjIwMjEtMTEtMDRUMTQ6MTM6NDBaIiwicmVxdWVzdF9pZCI6IjBYZTg3Njk4NzY5NDMyODc2MzQ5Mjg3NjM0ODkyODczNjQ5Nzg2OTI3MzY0OSJ9.XSiQxjEVyCouf7zT8MubEKsbOBZuReGVhnt9uck6z6k' https://api3.openbankproject.com/obp/v3.0.0/users/current\n
\nYou should receive a response like:
\n{\n "user_id": "4c4d3175-1e5c-4cfd-9b08-dcdc209d8221",\n "email": "",\n "provider_id": "0xe123425E7734CE288F8367e1Bb143E90bb3F051224",\n "provider": "ETHEREUM",\n "username": "0xe123425E7734CE288F8367e1Bb143E90bb3F051224",\n "entitlements": {\n "list": []\n }\n}\n
\nThe file, dauth.scala handles the DAuth,
\nWe:
\n-> Check if Props allow_dauth is true\n -> Check if DAuth header exists\n -> Check if getRemoteIpAddress is OK\n -> Look for "token"\n -> parse the JWT token and getOrCreate the user\n -> get the data of the user\n
\nParameter names and values are case sensitive.
\nEach parameter MUST NOT appear more than once per request.
Authentication is Mandatory
\nJSON request body fields:
\nbank_id: gh.29.uk
\nprovider: ETHEREUM
\n\nroles: CanCreateMyUser
\nusername: felixsmith
\nJSON response body fields:
\nbank_id: gh.29.uk
\n\nlist:
\n\nuser_id: 9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1
\n","description_markdown":"This endpoint is used as part of the DAuth solution to grant Entitlements for Roles to a smart contract on the blockchain.\n\nPut the smart contract address in username\n\nFor provider use \"dauth\"\n\nThis endpoint will create the User with username and provider if the User does not already exist.\n\nThen it will create Entitlements i.e. grant Roles to the User.\n\nEntitlements are used to grant System or Bank level roles to Users. (For Account level privileges, see Views)\n\ni.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.\n\nFor a System level Role (.e.g CanGetAnyUser), set bank_id to an empty string i.e. \"bank_id\":\"\"\n\nFor a Bank level Role (e.g. CanCreateAccount), set bank_id to a valid value e.g. \"bank_id\":\"my-bank-id\"\n\nNote: The Roles actually granted will depend on the Roles that the calling user has.\n\nIf you try to grant Entitlements to a user that already exist (duplicate entitilements) you will get an error.\n\nFor information about DAuth see below:\n\n\nDAuth is an experimental authentication mechanism that aims to pin an ethereum or other blockchain Smart Contract to an OBP "User".
\nIn 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.
\nThus, 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".
\nDAuth is invoked by the REST client (caller) including a specific header (see step 3 below) in any OBP REST call.
\nWhen 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.
\nIf you are calling OBP-API via an API3 Airnode, the Airnode will take care of constructing the required header.
\nWhen 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.
\nNote: The DAuth flow does not require an explicit POST like Direct Login to create the token.
\nPermissions may be assigned to an OBP User at any time, via the UserAuthContext, Views, Entitlements to Roles or Consents.
\nNote: DAuth is enabled.
\nNote: The DAuth client is responsible for creating a token which will be trusted by OBP absolutely!
\nTo use DAuth:
\nSet up properties in your props file
\n# -- DAuth --------------------------------------\n# Define secret used to validate JWT token\n# jwt.public_key_rsa=path-to-the-pem-file\n# Enable/Disable DAuth communication at all\n# In case isn't defined default value is false\n# allow_dauth=false\n# Define comma separated list of allowed IP addresses\n# dauth.host=127.0.0.1\n# -------------------------------------- DAuth--\n
\nPlease 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.
\nThe following videos are available:
\n* DAuth in local environment
HEADER:ALGORITHM & TOKEN TYPE
\n{\n "alg": "RS256",\n "typ": "JWT"\n}\n
\nPAYLOAD:DATA
\n{\n "smart_contract_address": "0xe123425E7734CE288F8367e1Bb143E90bb3F051224",\n "network_name": "AIRNODE.TESTNET.ETHEREUM",\n "msg_sender": "0xe12340927f1725E7734CE288F8367e1Bb143E90fhku767",\n "consumer_key": "0x1234a4ec31e89cea54d1f125db7536e874ab4a96b4d4f6438668b6bb10a6adb",\n "timestamp": "2021-11-04T14:13:40Z",\n "request_id": "0Xe876987694328763492876348928736497869273649"\n}\n
\nVERIFY SIGNATURE
\nRSASHA256(\n base64UrlEncode(header) + "." +\n base64UrlEncode(payload),\n\n) your-RSA-key-pair\n
\nHere is an example token:
\neyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzbWFydF9jb250cmFjdF9hZGRyZXNzIjoiMHhlMTIzNDI1RTc3MzRDRTI4OEY4MzY3ZTFCYjE0M0U5MGJiM0YwNTEyMjQiLCJuZXR3b3JrX25hbWUiOiJFVEhFUkVVTSIsIm1zZ19zZW5kZXIiOiIweGUxMjM0MDkyN2YxNzI1RTc3MzRDRTI4OEY4MzY3ZTFCYjE0M0U5MGZoa3U3NjciLCJjb25zdW1lcl9rZXkiOiIweDEyMzRhNGVjMzFlODljZWE1NGQxZjEyNWRiNzUzNmU4NzRhYjRhOTZiNGQ0ZjY0Mzg2NjhiNmJiMTBhNmFkYiIsInRpbWVzdGFtcCI6IjIwMjEtMTEtMDRUMTQ6MTM6NDBaIiwicmVxdWVzdF9pZCI6IjBYZTg3Njk4NzY5NDMyODc2MzQ5Mjg3NjM0ODkyODczNjQ5Nzg2OTI3MzY0OSJ9.XSiQxjEVyCouf7zT8MubEKsbOBZuReGVhnt9uck6z6k\n
\nUsing your favorite http client:
\nGET https://api3.openbankproject.com/obp/v3.0.0/users/current
\nBody
\nLeave Empty!
\nHeaders:
\n DAuth: your-jwt-from-step-above\n
\nHere is it all together:
\nGET https://api3.openbankproject.com/obp/v3.0.0/users/current HTTP/1.1
\nHost: localhost:8080
\nUser-Agent: curl/7.47.0
\nAccept: /
\nDAuth: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzbWFydF9jb250cmFjdF9hZGRyZXNzIjoiMHhlMTIzNDI1RTc3MzRDRTI4OEY4MzY3ZTFCYjE0M0U5MGJiM0YwNTEyMjQiLCJuZXR3b3JrX25hbWUiOiJFVEhFUkVVTSIsIm1zZ19zZW5kZXIiOiIweGUxMjM0MDkyN2YxNzI1RTc3MzRDRTI4OEY4MzY3ZTFCYjE0M0U5MGZoa3U3NjciLCJjb25zdW1lcl9rZXkiOiIweDEyMzRhNGVjMzFlODljZWE1NGQxZjEyNWRiNzUzNmU4NzRhYjRhOTZiNGQ0ZjY0Mzg2NjhiNmJiMTBhNmFkYiIsInRpbWVzdGFtcCI6IjIwMjEtMTEtMDRUMTQ6MTM6NDBaIiwicmVxdWVzdF9pZCI6IjBYZTg3Njk4NzY5NDMyODc2MzQ5Mjg3NjM0ODkyODczNjQ5Nzg2OTI3MzY0OSJ9.XSiQxjEVyCouf7zT8MubEKsbOBZuReGVhnt9uck6z6k
CURL example
\ncurl -v -H 'DAuth: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzbWFydF9jb250cmFjdF9hZGRyZXNzIjoiMHhlMTIzNDI1RTc3MzRDRTI4OEY4MzY3ZTFCYjE0M0U5MGJiM0YwNTEyMjQiLCJuZXR3b3JrX25hbWUiOiJFVEhFUkVVTSIsIm1zZ19zZW5kZXIiOiIweGUxMjM0MDkyN2YxNzI1RTc3MzRDRTI4OEY4MzY3ZTFCYjE0M0U5MGZoa3U3NjciLCJjb25zdW1lcl9rZXkiOiIweDEyMzRhNGVjMzFlODljZWE1NGQxZjEyNWRiNzUzNmU4NzRhYjRhOTZiNGQ0ZjY0Mzg2NjhiNmJiMTBhNmFkYiIsInRpbWVzdGFtcCI6IjIwMjEtMTEtMDRUMTQ6MTM6NDBaIiwicmVxdWVzdF9pZCI6IjBYZTg3Njk4NzY5NDMyODc2MzQ5Mjg3NjM0ODkyODczNjQ5Nzg2OTI3MzY0OSJ9.XSiQxjEVyCouf7zT8MubEKsbOBZuReGVhnt9uck6z6k' https://api3.openbankproject.com/obp/v3.0.0/users/current\n
\nYou should receive a response like:
\n{\n "user_id": "4c4d3175-1e5c-4cfd-9b08-dcdc209d8221",\n "email": "",\n "provider_id": "0xe123425E7734CE288F8367e1Bb143E90bb3F051224",\n "provider": "ETHEREUM",\n "username": "0xe123425E7734CE288F8367e1Bb143E90bb3F051224",\n "entitlements": {\n "list": []\n }\n}\n
\nThe file, dauth.scala handles the DAuth,
\nWe:
\n-> Check if Props allow_dauth is true\n -> Check if DAuth header exists\n -> Check if getRemoteIpAddress is OK\n -> Look for "token"\n -> parse the JWT token and getOrCreate the user\n -> get the data of the user\n
\nParameter names and values are case sensitive.
\nEach parameter MUST NOT appear more than once per request.
This endpoint continues the process of creating a Consent. It starts the SCA flow which changes the status of the consent from INITIATED to ACCEPTED or REJECTED.
\nPlease note that the Consent cannot elevate the privileges logged in user already have.
Authentication is Mandatory
\nURL Parameters:
\nCONSENT_REQUEST_ID: 8ca8a7e4-6d02-40e3-a129-0b2bf89de9f0
\nSMS:
\nJSON request body fields:
\nJSON response body fields:
\n\njwt:
\n\nconsent_request_id: 8ca8a7e4-6d02-40e3-a129-0b2bf89de9f0
\n","description_markdown":"This endpoint continues the process of creating a Consent. It starts the SCA flow which changes the status of the consent from INITIATED to ACCEPTED or REJECTED.\nPlease note that the Consent cannot elevate the privileges logged in user already have. \n\n\n\nAuthentication is Mandatory\n\n\n**URL Parameters:**\n\n[CONSENT_REQUEST_ID](/glossary#consent_request_id): 8ca8a7e4-6d02-40e3-a129-0b2bf89de9f0\n\n\n\n[SMS](/glossary#sms): \n\n\n\n\n\n**JSON request body fields:**\n\n\n\n\n\n**JSON response body fields:**\n\n\n\n[**consent_id**](/glossary#consent_id): \n\n\n\n[**jwt**](/glossary#jwt): \n\n\n\n[**status**](/glossary#status): \n\n\n\n[consent_request_id](/glossary#consent_request_id): 8ca8a7e4-6d02-40e3-a129-0b2bf89de9f0\n\n\n","success_response_body":{"consent_id":"9d429899-24f5-42c8-8565-943ffa6a7945","jwt":"eyJhbGciOiJIUzI1NiJ9.eyJlbnRpdGxlbWVudHMiOltdLCJjcmVhdGVkQnlVc2VySWQiOiJhYjY1MzlhOS1iMTA1LTQ0ODktYTg4My0wYWQ4ZDZjNjE2NTciLCJzdWIiOiIyMWUxYzhjYy1mOTE4LTRlYWMtYjhlMy01ZTVlZWM2YjNiNGIiLCJhdWQiOiJlanpuazUwNWQxMzJyeW9tbmhieDFxbXRvaHVyYnNiYjBraWphanNrIiwibmJmIjoxNTUzNTU0ODk5LCJpc3MiOiJodHRwczpcL1wvd3d3Lm9wZW5iYW5rcHJvamVjdC5jb20iLCJleHAiOjE1NTM1NTg0OTksImlhdCI6MTU1MzU1NDg5OSwianRpIjoiMDlmODhkNWYtZWNlNi00Mzk4LThlOTktNjYxMWZhMWNkYmQ1Iiwidmlld3MiOlt7ImFjY291bnRfaWQiOiJtYXJrb19wcml2aXRlXzAxIiwiYmFua19pZCI6ImdoLjI5LnVrLngiLCJ2aWV3X2lkIjoib3duZXIifSx7ImFjY291bnRfaWQiOiJtYXJrb19wcml2aXRlXzAyIiwiYmFua19pZCI6ImdoLjI5LnVrLngiLCJ2aWV3X2lkIjoib3duZXIifV19.8cc7cBEf2NyQvJoukBCmDLT7LXYcuzTcSYLqSpbxLp4","status":"INITIATED","consent_request_id":"8ca8a7e4-6d02-40e3-a129-0b2bf89de9f0"},"error_response_bodies":["OBP-20001: User not logged in. Authentication is required!","OBP-30001: Bank not found. Please specify a valid value for BANK_ID.","OBP-10001: Incorrect json format.","OBP-35029: The CONSENT_REQUEST_ID is invalid. ","OBP-35009: Only SMS and EMAIL are supported as SCA methods. ","OBP-35013: Consents can only contain Roles that you already have access to.","OBP-35014: Consents can only contain Views that you already have access to.","OBP-30019: Consumer not found. Please specify a valid value for CONSUMER_ID.","OBP-20058: Consumer is disabled.","OBP-00010: Missing props value at this API instance - ","OBP-35010: SMS server is not working or SMS server can not send the message to the phone number:","OBP-50200: Connector cannot return the data we requested.","OBP-50000: Unknown Error."],"tags":["Consent","Account Information Service (AIS)","PSD2"],"typed_success_response_body":{"type":"object","properties":{"consent_request_id":{"type":"string"},"consent_id":{"type":"string"},"status":{"type":"string"},"jwt":{"type":"string"}}},"is_featured":false,"special_instructions":"","specified_url":"/obp/v5.1.0/consumer/consent-requests/CONSENT_REQUEST_ID/SMS/consents","connector_methods":["obp.getBankAccountByRouting","obp.sendCustomerNotification","obp.getBankAccountsForUser"]},{"operation_id":"OBPv4.0.0-deleteUser","implemented_by":{"version":"OBPv4.0.0","function":"deleteUser"},"request_verb":"DELETE","request_url":"/obp/v4.0.0/users/USER_ID","summary":"Delete a User","description":"Delete a User.
\nAuthentication is Mandatory
\nURL Parameters:
\nUSER_ID: 9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1
\nJSON response body fields:
\n","description_markdown":"Delete a User.\n\n\nAuthentication is Mandatory\n\n\n**URL Parameters:**\n\n[USER_ID](/glossary#User.user_id): 9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1\n\n\n\n\n\n**JSON response body fields:**\n\n\n","error_response_bodies":["OBP-20001: User not logged in. Authentication is required!","OBP-20006: User is missing one or more roles: ","OBP-50000: Unknown Error."],"tags":["User"],"roles":[{"role":"CanDeleteUser","requires_bank_id":false}],"is_featured":false,"special_instructions":"","specified_url":"/obp/v5.1.0/users/USER_ID","connector_methods":[]},{"operation_id":"OBPv5.0.0-getMyCustomersAtAnyBank","implemented_by":{"version":"OBPv5.0.0","function":"getMyCustomersAtAnyBank"},"request_verb":"GET","request_url":"/obp/v5.0.0/my/customers","summary":"Get My Customers","description":"Gets all Customers that are linked to me.
\nAuthentication via OAuth is required.
\nAuthentication is Mandatory
\nJSON response body fields:
\namount: 10.12
\nbank_id: gh.29.uk
\ncurrency: EUR
\ncustomer_id: 7uy8a7e4-6d02-40e3-a129-0b2bf89de8uh
\ncustomer_number: 5987953
\ndate: 2020-01-27
\ndate_of_birth: 2018-03-09
\ndependants: 1
\ndob_of_dependants: [2019-09-08, 2017-07-12]
\n\nemployment_status: worker
\n\nhighest_education_attained: Master
\nkyc_status: true
\nlast_ok_date: 2023-03-28T00:00:41.846Z
\nlegal_name: Eveline Tripman
\nmobile_phone_number: +49 30 901820
\n\nrelationship_status: single
\n\nurl: http://www.example.com/id-docs/123/image.png
\n\n\n","description_markdown":"Gets all Customers that are linked to me.\n\nAuthentication via OAuth is required.\n\nAuthentication is Mandatory\n\n\n**JSON response body fields:**\n\n\n\n[**amount**](/glossary#): 10.12\n\n\n\n[**bank_id**](/glossary#): gh.29.uk\n\n\n\n[**currency**](/glossary#): EUR\n\n\n\n[**customer_id**](/glossary#): 7uy8a7e4-6d02-40e3-a129-0b2bf89de8uh\n\n\n\n[**customer_number**](/glossary#): 5987953\n\n\n\n[**date**](/glossary#): 2020-01-27\n\n\n\n[**date_of_birth**](/glossary#): 2018-03-09\n\n\n\n[**dependants**](/glossary#): 1\n\n\n\n[**dob_of_dependants**](/glossary#dob_of_dependants): [2019-09-08, 2017-07-12]\n\n\n\n[**email**](/glossary#): felixsmith@example.com\n\n\n\n[**employment_status**](/glossary#): worker\n\n\n\n[**face_image**](/glossary#face_image): \n\n\n\n[**highest_education_attained**](/glossary#): Master\n\n\n\n[**kyc_status**](/glossary#): true\n\n\n\n[**last_ok_date**](/glossary#last_ok_date): 2023-03-28T00:00:41.846Z\n\n\n\n[**legal_name**](/glossary#): Eveline Tripman\n\n\n\n[**mobile_phone_number**](/glossary#mobile_phone_number): +49 30 901820\n\n\n\n[**rating**](/glossary#): \n\n\n\n[**relationship_status**](/glossary#): single\n\n\n\n[**source**](/glossary#): \n\n\n\n[**url**](/glossary#): http://www.example.com/id-docs/123/image.png\n\n\n\n[credit_limit](/glossary#credit_limit): \n\n\n\n[credit_rating](/glossary#credit_rating): \n\n\n","success_response_body":{"bank_id":"gh.29.uk","customer_id":"7uy8a7e4-6d02-40e3-a129-0b2bf89de8uh","customer_number":"5987953","legal_name":"Eveline Tripman","mobile_phone_number":"+44 07972 444 876","email":"felixsmith@example.com","face_image":{"url":"www.openbankproject","date":"1100-01-01T00:00:00Z"},"date_of_birth":"1100-01-01T00:00:00Z","relationship_status":"single","dependants":1,"dob_of_dependants":["1100-01-01T00:00:00Z"],"credit_rating":{"rating":"OBP","source":"OBP"},"credit_limit":{"currency":"EUR","amount":"0"},"highest_education_attained":"Master","employment_status":"worker","kyc_status":true,"last_ok_date":"2023-03-28T00:00:42Z"},"error_response_bodies":["OBP-20001: User not logged in. Authentication is required!","OBP-30008: User Customer Link not found by USER_ID","OBP-50000: Unknown Error."],"tags":["Customer","User"],"typed_success_response_body":{"type":"object","properties":{"dependants":{"type":"integer"},"dob_of_dependants":{"type":"array","items":{"type":"string","format":"date-time"}},"face_image":{"type":"object","properties":{"url":{"type":"string"},"date":{"type":"string","format":"date-time"}}},"credit_limit":{"type":"object","properties":{"currency":{"type":"string"},"amount":{"type":"string"}}},"employment_status":{"type":"string"},"email":{"type":"string"},"customer_id":{"type":"string"},"relationship_status":{"type":"string"},"bank_id":{"type":"string"},"highest_education_attained":{"type":"string"},"customer_number":{"type":"string"},"credit_rating":{"type":"object","properties":{"rating":{"type":"string"},"source":{"type":"string"}}},"legal_name":{"type":"string"},"date_of_birth":{"type":"string","format":"date-time"},"mobile_phone_number":{"type":"string"},"kyc_status":{"type":"boolean"},"last_ok_date":{"type":"string","format":"date-time"}}},"is_featured":false,"special_instructions":"","specified_url":"/obp/v5.1.0/my/customers","connector_methods":["obp.getCustomersByUserId"]},{"operation_id":"OBPv4.0.0-createUserWithAccountAccess","implemented_by":{"version":"OBPv4.0.0","function":"createUserWithAccountAccess"},"request_verb":"POST","request_url":"/obp/v4.0.0/banks/BANK_ID/accounts/ACCOUNT_ID/user-account-access","summary":"Create (DAuth) User with Account Access","description":"This endpoint is used as part of the DAuth solution to grant access to account and transaction data to a smart contract on the blockchain.
\nPut the smart contract address in username
\nFor provider use "dauth"
\nThis endpoint will create the (DAuth) User with username and provider if the User does not already exist.
\nAuthentication is Mandatory and the logged in user needs to be account holder.
\nFor information about DAuth see below:
\nDAuth is an experimental authentication mechanism that aims to pin an ethereum or other blockchain Smart Contract to an OBP "User".
\nIn 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.
\nThus, 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".
\nDAuth is invoked by the REST client (caller) including a specific header (see step 3 below) in any OBP REST call.
\nWhen 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.
\nIf you are calling OBP-API via an API3 Airnode, the Airnode will take care of constructing the required header.
\nWhen 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.
\nNote: The DAuth flow does not require an explicit POST like Direct Login to create the token.
\nPermissions may be assigned to an OBP User at any time, via the UserAuthContext, Views, Entitlements to Roles or Consents.
\nNote: DAuth is enabled.
\nNote: The DAuth client is responsible for creating a token which will be trusted by OBP absolutely!
\nTo use DAuth:
\nSet up properties in your props file
\n# -- DAuth --------------------------------------\n# Define secret used to validate JWT token\n# jwt.public_key_rsa=path-to-the-pem-file\n# Enable/Disable DAuth communication at all\n# In case isn't defined default value is false\n# allow_dauth=false\n# Define comma separated list of allowed IP addresses\n# dauth.host=127.0.0.1\n# -------------------------------------- DAuth--\n
\nPlease 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.
\nThe following videos are available:
\n* DAuth in local environment
HEADER:ALGORITHM & TOKEN TYPE
\n{\n "alg": "RS256",\n "typ": "JWT"\n}\n
\nPAYLOAD:DATA
\n{\n "smart_contract_address": "0xe123425E7734CE288F8367e1Bb143E90bb3F051224",\n "network_name": "AIRNODE.TESTNET.ETHEREUM",\n "msg_sender": "0xe12340927f1725E7734CE288F8367e1Bb143E90fhku767",\n "consumer_key": "0x1234a4ec31e89cea54d1f125db7536e874ab4a96b4d4f6438668b6bb10a6adb",\n "timestamp": "2021-11-04T14:13:40Z",\n "request_id": "0Xe876987694328763492876348928736497869273649"\n}\n
\nVERIFY SIGNATURE
\nRSASHA256(\n base64UrlEncode(header) + "." +\n base64UrlEncode(payload),\n) your-RSA-key-pair
\n
\nHere is an example token:
\neyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzbWFydF9jb250cmFjdF9hZGRyZXNzIjoiMHhlMTIzNDI1RTc3MzRDRTI4OEY4MzY3ZTFCYjE0M0U5MGJiM0YwNTEyMjQiLCJuZXR3b3JrX25hbWUiOiJFVEhFUkVVTSIsIm1zZ19zZW5kZXIiOiIweGUxMjM0MDkyN2YxNzI1RTc3MzRDRTI4OEY4MzY3ZTFCYjE0M0U5MGZoa3U3NjciLCJjb25zdW1lcl9rZXkiOiIweDEyMzRhNGVjMzFlODljZWE1NGQxZjEyNWRiNzUzNmU4NzRhYjRhOTZiNGQ0ZjY0Mzg2NjhiNmJiMTBhNmFkYiIsInRpbWVzdGFtcCI6IjIwMjEtMTEtMDRUMTQ6MTM6NDBaIiwicmVxdWVzdF9pZCI6IjBYZTg3Njk4NzY5NDMyODc2MzQ5Mjg3NjM0ODkyODczNjQ5Nzg2OTI3MzY0OSJ9.XSiQxjEVyCouf7zT8MubEKsbOBZuReGVhnt9uck6z6k\n
\nUsing your favorite http client:
\nGET https://api3.openbankproject.com/obp/v3.0.0/users/current
\nBody
\nLeave Empty!
\nHeaders:
\n DAuth: your-jwt-from-step-above\n
\nHere is it all together:
\nGET https://api3.openbankproject.com/obp/v3.0.0/users/current HTTP/1.1
\nHost: localhost:8080
\nUser-Agent: curl/7.47.0
\nAccept: /
\nDAuth: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzbWFydF9jb250cmFjdF9hZGRyZXNzIjoiMHhlMTIzNDI1RTc3MzRDRTI4OEY4MzY3ZTFCYjE0M0U5MGJiM0YwNTEyMjQiLCJuZXR3b3JrX25hbWUiOiJFVEhFUkVVTSIsIm1zZ19zZW5kZXIiOiIweGUxMjM0MDkyN2YxNzI1RTc3MzRDRTI4OEY4MzY3ZTFCYjE0M0U5MGZoa3U3NjciLCJjb25zdW1lcl9rZXkiOiIweDEyMzRhNGVjMzFlODljZWE1NGQxZjEyNWRiNzUzNmU4NzRhYjRhOTZiNGQ0ZjY0Mzg2NjhiNmJiMTBhNmFkYiIsInRpbWVzdGFtcCI6IjIwMjEtMTEtMDRUMTQ6MTM6NDBaIiwicmVxdWVzdF9pZCI6IjBYZTg3Njk4NzY5NDMyODc2MzQ5Mjg3NjM0ODkyODczNjQ5Nzg2OTI3MzY0OSJ9.XSiQxjEVyCouf7zT8MubEKsbOBZuReGVhnt9uck6z6k
CURL example
\ncurl -v -H 'DAuth: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzbWFydF9jb250cmFjdF9hZGRyZXNzIjoiMHhlMTIzNDI1RTc3MzRDRTI4OEY4MzY3ZTFCYjE0M0U5MGJiM0YwNTEyMjQiLCJuZXR3b3JrX25hbWUiOiJFVEhFUkVVTSIsIm1zZ19zZW5kZXIiOiIweGUxMjM0MDkyN2YxNzI1RTc3MzRDRTI4OEY4MzY3ZTFCYjE0M0U5MGZoa3U3NjciLCJjb25zdW1lcl9rZXkiOiIweDEyMzRhNGVjMzFlODljZWE1NGQxZjEyNWRiNzUzNmU4NzRhYjRhOTZiNGQ0ZjY0Mzg2NjhiNmJiMTBhNmFkYiIsInRpbWVzdGFtcCI6IjIwMjEtMTEtMDRUMTQ6MTM6NDBaIiwicmVxdWVzdF9pZCI6IjBYZTg3Njk4NzY5NDMyODc2MzQ5Mjg3NjM0ODkyODczNjQ5Nzg2OTI3MzY0OSJ9.XSiQxjEVyCouf7zT8MubEKsbOBZuReGVhnt9uck6z6k' https://api3.openbankproject.com/obp/v3.0.0/users/current\n
\nYou should receive a response like:
\n{\n "user_id": "4c4d3175-1e5c-4cfd-9b08-dcdc209d8221",\n "email": "",\n "provider_id": "0xe123425E7734CE288F8367e1Bb143E90bb3F051224",\n "provider": "ETHEREUM",\n "username": "0xe123425E7734CE288F8367e1Bb143E90bb3F051224",\n "entitlements": {\n "list": []\n }\n}\n
\nThe file, dauth.scala handles the DAuth,
\nWe:
\n-> Check if Props allow_dauth is true\n -> Check if DAuth header exists\n -> Check if getRemoteIpAddress is OK\n -> Look for "token"\n -> parse the JWT token and getOrCreate the user\n -> get the data of the user\n
\nParameter names and values are case sensitive.
\nEach parameter MUST NOT appear more than once per request.
URL Parameters:
\nACCOUNT_ID: 8ca8a7e4-6d02-40e3-a129-0b2bf89de9f0
\nBANK_ID: gh.29.uk
\nJSON request body fields:
\nis_system: true
\nprovider: ETHEREUM
\nusername: felixsmith
\nview_id: owner
\n\nJSON response body fields:
\n\n\n\ncan_add_counterparty: true
\n\ncan_add_image_url: true
\ncan_add_more_info: true
\n\n\n\n\ncan_add_tag: true
\ncan_add_transaction_request_to_any_account:
\ncan_add_transaction_request_to_own_account:
\n\n\ncan_create_direct_debit: true
\n\n\ncan_delete_corporate_location: true
\ncan_delete_image: true
\n\n\ncan_delete_where_tag: true
\ncan_edit_owner_comment: true
\ncan_query_available_funds: true
\n\ncan_see_bank_account_bank_name: true
\ncan_see_bank_account_credit_limit: true
\ncan_see_bank_account_currency:
\n\ncan_see_bank_account_label: true
\ncan_see_bank_account_national_identifier:
\ncan_see_bank_account_number: true
\ncan_see_bank_account_owners: true
\ncan_see_bank_account_routing_address:
\ncan_see_bank_account_routing_scheme:
\ncan_see_bank_account_swift_bic:
\n\ncan_see_bank_routing_address: true
\n\n\ncan_see_corporate_location: true
\ncan_see_image_url: true
\ncan_see_images: true
\n\n\ncan_see_other_account_bank_name:
\n\n\ncan_see_other_account_metadata:
\ncan_see_other_account_national_identifier: true
\ncan_see_other_account_number: true
\ncan_see_other_account_routing_address: true
\ncan_see_other_account_routing_scheme:
\ncan_see_other_account_swift_bic: true
\ncan_see_other_bank_routing_address:
\ncan_see_other_bank_routing_scheme:
\n\n\n\n\n\ncan_see_transaction_amount: true
\n\n\ncan_see_transaction_description: true
\ncan_see_transaction_finish_date:
\n\ncan_see_transaction_other_bank_account:
\ncan_see_transaction_start_date:
\ncan_see_transaction_this_bank_account:
\n\ncan_see_url: true
\ncan_see_where_tag: true
\ndescription: This an optional field. Maximum length is 2000. It can be any characters here.
\n\nid: d8839721-ad8f-45dd-9f78-2080414b93f9
\nis_public: true
\nis_system: true
\n\n\n\n","description_markdown":"This endpoint is used as part of the DAuth solution to grant access to account and transaction data to a smart contract on the blockchain.\n\nPut the smart contract address in username\n\nFor provider use \"dauth\"\n\nThis endpoint will create the (DAuth) User with username and provider if the User does not already exist.\n\nAuthentication is Mandatory and the logged in user needs to be account holder.\n\nFor information about DAuth see below:\n\n\nDAuth is an experimental authentication mechanism that aims to pin an ethereum or other blockchain Smart Contract to an OBP "User".
\nIn 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.
\nThus, 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".
\nDAuth is invoked by the REST client (caller) including a specific header (see step 3 below) in any OBP REST call.
\nWhen 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.
\nIf you are calling OBP-API via an API3 Airnode, the Airnode will take care of constructing the required header.
\nWhen 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.
\nNote: The DAuth flow does not require an explicit POST like Direct Login to create the token.
\nPermissions may be assigned to an OBP User at any time, via the UserAuthContext, Views, Entitlements to Roles or Consents.
\nNote: DAuth is enabled.
\nNote: The DAuth client is responsible for creating a token which will be trusted by OBP absolutely!
\nTo use DAuth:
\nSet up properties in your props file
\n# -- DAuth --------------------------------------\n# Define secret used to validate JWT token\n# jwt.public_key_rsa=path-to-the-pem-file\n# Enable/Disable DAuth communication at all\n# In case isn't defined default value is false\n# allow_dauth=false\n# Define comma separated list of allowed IP addresses\n# dauth.host=127.0.0.1\n# -------------------------------------- DAuth--\n
\nPlease 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.
\nThe following videos are available:
\n* DAuth in local environment
HEADER:ALGORITHM & TOKEN TYPE
\n{\n "alg": "RS256",\n "typ": "JWT"\n}\n
\nPAYLOAD:DATA
\n{\n "smart_contract_address": "0xe123425E7734CE288F8367e1Bb143E90bb3F051224",\n "network_name": "AIRNODE.TESTNET.ETHEREUM",\n "msg_sender": "0xe12340927f1725E7734CE288F8367e1Bb143E90fhku767",\n "consumer_key": "0x1234a4ec31e89cea54d1f125db7536e874ab4a96b4d4f6438668b6bb10a6adb",\n "timestamp": "2021-11-04T14:13:40Z",\n "request_id": "0Xe876987694328763492876348928736497869273649"\n}\n
\nVERIFY SIGNATURE
\nRSASHA256(\n base64UrlEncode(header) + "." +\n base64UrlEncode(payload),\n\n) your-RSA-key-pair\n
\nHere is an example token:
\neyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzbWFydF9jb250cmFjdF9hZGRyZXNzIjoiMHhlMTIzNDI1RTc3MzRDRTI4OEY4MzY3ZTFCYjE0M0U5MGJiM0YwNTEyMjQiLCJuZXR3b3JrX25hbWUiOiJFVEhFUkVVTSIsIm1zZ19zZW5kZXIiOiIweGUxMjM0MDkyN2YxNzI1RTc3MzRDRTI4OEY4MzY3ZTFCYjE0M0U5MGZoa3U3NjciLCJjb25zdW1lcl9rZXkiOiIweDEyMzRhNGVjMzFlODljZWE1NGQxZjEyNWRiNzUzNmU4NzRhYjRhOTZiNGQ0ZjY0Mzg2NjhiNmJiMTBhNmFkYiIsInRpbWVzdGFtcCI6IjIwMjEtMTEtMDRUMTQ6MTM6NDBaIiwicmVxdWVzdF9pZCI6IjBYZTg3Njk4NzY5NDMyODc2MzQ5Mjg3NjM0ODkyODczNjQ5Nzg2OTI3MzY0OSJ9.XSiQxjEVyCouf7zT8MubEKsbOBZuReGVhnt9uck6z6k\n
\nUsing your favorite http client:
\nGET https://api3.openbankproject.com/obp/v3.0.0/users/current
\nBody
\nLeave Empty!
\nHeaders:
\n DAuth: your-jwt-from-step-above\n
\nHere is it all together:
\nGET https://api3.openbankproject.com/obp/v3.0.0/users/current HTTP/1.1
\nHost: localhost:8080
\nUser-Agent: curl/7.47.0
\nAccept: /
\nDAuth: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzbWFydF9jb250cmFjdF9hZGRyZXNzIjoiMHhlMTIzNDI1RTc3MzRDRTI4OEY4MzY3ZTFCYjE0M0U5MGJiM0YwNTEyMjQiLCJuZXR3b3JrX25hbWUiOiJFVEhFUkVVTSIsIm1zZ19zZW5kZXIiOiIweGUxMjM0MDkyN2YxNzI1RTc3MzRDRTI4OEY4MzY3ZTFCYjE0M0U5MGZoa3U3NjciLCJjb25zdW1lcl9rZXkiOiIweDEyMzRhNGVjMzFlODljZWE1NGQxZjEyNWRiNzUzNmU4NzRhYjRhOTZiNGQ0ZjY0Mzg2NjhiNmJiMTBhNmFkYiIsInRpbWVzdGFtcCI6IjIwMjEtMTEtMDRUMTQ6MTM6NDBaIiwicmVxdWVzdF9pZCI6IjBYZTg3Njk4NzY5NDMyODc2MzQ5Mjg3NjM0ODkyODczNjQ5Nzg2OTI3MzY0OSJ9.XSiQxjEVyCouf7zT8MubEKsbOBZuReGVhnt9uck6z6k
CURL example
\ncurl -v -H 'DAuth: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzbWFydF9jb250cmFjdF9hZGRyZXNzIjoiMHhlMTIzNDI1RTc3MzRDRTI4OEY4MzY3ZTFCYjE0M0U5MGJiM0YwNTEyMjQiLCJuZXR3b3JrX25hbWUiOiJFVEhFUkVVTSIsIm1zZ19zZW5kZXIiOiIweGUxMjM0MDkyN2YxNzI1RTc3MzRDRTI4OEY4MzY3ZTFCYjE0M0U5MGZoa3U3NjciLCJjb25zdW1lcl9rZXkiOiIweDEyMzRhNGVjMzFlODljZWE1NGQxZjEyNWRiNzUzNmU4NzRhYjRhOTZiNGQ0ZjY0Mzg2NjhiNmJiMTBhNmFkYiIsInRpbWVzdGFtcCI6IjIwMjEtMTEtMDRUMTQ6MTM6NDBaIiwicmVxdWVzdF9pZCI6IjBYZTg3Njk4NzY5NDMyODc2MzQ5Mjg3NjM0ODkyODczNjQ5Nzg2OTI3MzY0OSJ9.XSiQxjEVyCouf7zT8MubEKsbOBZuReGVhnt9uck6z6k' https://api3.openbankproject.com/obp/v3.0.0/users/current\n
\nYou should receive a response like:
\n{\n "user_id": "4c4d3175-1e5c-4cfd-9b08-dcdc209d8221",\n "email": "",\n "provider_id": "0xe123425E7734CE288F8367e1Bb143E90bb3F051224",\n "provider": "ETHEREUM",\n "username": "0xe123425E7734CE288F8367e1Bb143E90bb3F051224",\n "entitlements": {\n "list": []\n }\n}\n
\nThe file, dauth.scala handles the DAuth,
\nWe:
\n-> Check if Props allow_dauth is true\n -> Check if DAuth header exists\n -> Check if getRemoteIpAddress is OK\n -> Look for "token"\n -> parse the JWT token and getOrCreate the user\n -> get the data of the user\n
\nParameter names and values are case sensitive.
\nEach parameter MUST NOT appear more than once per request.
Delete the Non Personal User Attribute specified by ENTITLEMENT_REQUEST_ID for a user specified by USER_ID
\nAuthentication is Mandatory
\nURL Parameters:
\nUSER_ATTRIBUTE_ID: 7uy8a7e4-6d02-40e3-a129-0b2bf89de8uh
\nUSER_ID: 9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1
\nJSON response body fields:
\n","description_markdown":"Delete the Non Personal User Attribute specified by ENTITLEMENT_REQUEST_ID for a user specified by USER_ID\n\nAuthentication is Mandatory\n\n\n**URL Parameters:**\n\n[USER_ATTRIBUTE_ID](/glossary#): 7uy8a7e4-6d02-40e3-a129-0b2bf89de8uh\n\n\n\n[USER_ID](/glossary#User.user_id): 9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1\n\n\n\n\n\n**JSON response body fields:**\n\n\n","error_response_bodies":["OBP-20001: User not logged in. Authentication is required!","OBP-20006: User is missing one or more roles: ","OBP-50200: Connector cannot return the data we requested.","OBP-50000: Unknown Error."],"tags":["User"],"roles":[{"role":"CanDeleteNonPersonalUserAttribute","requires_bank_id":false}],"is_featured":false,"special_instructions":"","specified_url":"/obp/v5.1.0/users/USER_ID/non-personal/attributes/USER_ATTRIBUTE_ID","connector_methods":["obp.deleteUserAttribute","obp.getBankAccountsForUser"]},{"operation_id":"OBPv4.0.0-getCustomersAtAnyBank","implemented_by":{"version":"OBPv4.0.0","function":"getCustomersAtAnyBank"},"request_verb":"GET","request_url":"/obp/v4.0.0/customers","summary":"Get Customers at Any Bank","description":"Get Customers at Any Bank.
\nAuthentication is Mandatory
\nJSON response body fields:
\namount: 10.12
\nbank_id: gh.29.uk
\nbranch_id: DERBY6
\ncurrency: EUR
\ncustomer_id: 7uy8a7e4-6d02-40e3-a129-0b2bf89de8uh
\ncustomer_number: 5987953
\n\ndate: 2020-01-27
\ndate_of_birth: 2018-03-09
\ndependants: 1
\ndob_of_dependants: [2019-09-08, 2017-07-12]
\n\nemployment_status: worker
\n\nhighest_education_attained: Master
\nkyc_status: true
\nlast_ok_date: 2023-03-28T00:00:41.846Z
\nlegal_name: Eveline Tripman
\nmobile_phone_number: +49 30 901820
\nname_suffix: Sr
\n\nrelationship_status: single
\n\ntitle: Dr.
\nurl: http://www.example.com/id-docs/123/image.png
\n\n\n","description_markdown":"Get Customers at Any Bank.\n\n\nAuthentication is Mandatory\n\n\n**JSON response body fields:**\n\n\n\n[**amount**](/glossary#): 10.12\n\n\n\n[**bank_id**](/glossary#): gh.29.uk\n\n\n\n[**branch_id**](/glossary#): DERBY6\n\n\n\n[**currency**](/glossary#): EUR\n\n\n\n[**customer_id**](/glossary#): 7uy8a7e4-6d02-40e3-a129-0b2bf89de8uh\n\n\n\n[**customer_number**](/glossary#): 5987953\n\n\n\n[**customers**](/glossary#customers): \n\n\n\n[**date**](/glossary#): 2020-01-27\n\n\n\n[**date_of_birth**](/glossary#): 2018-03-09\n\n\n\n[**dependants**](/glossary#): 1\n\n\n\n[**dob_of_dependants**](/glossary#dob_of_dependants): [2019-09-08, 2017-07-12]\n\n\n\n[**email**](/glossary#): felixsmith@example.com\n\n\n\n[**employment_status**](/glossary#): worker\n\n\n\n[**face_image**](/glossary#face_image): \n\n\n\n[**highest_education_attained**](/glossary#): Master\n\n\n\n[**kyc_status**](/glossary#): true\n\n\n\n[**last_ok_date**](/glossary#last_ok_date): 2023-03-28T00:00:41.846Z\n\n\n\n[**legal_name**](/glossary#): Eveline Tripman\n\n\n\n[**mobile_phone_number**](/glossary#mobile_phone_number): +49 30 901820\n\n\n\n[**name_suffix**](/glossary#): Sr\n\n\n\n[**rating**](/glossary#): \n\n\n\n[**relationship_status**](/glossary#): single\n\n\n\n[**source**](/glossary#): \n\n\n\n[**title**](/glossary#): Dr.\n\n\n\n[**url**](/glossary#): http://www.example.com/id-docs/123/image.png\n\n\n\n[credit_limit](/glossary#credit_limit): \n\n\n\n[credit_rating](/glossary#credit_rating): \n\n\n","success_response_body":{"customers":[{"bank_id":"gh.29.uk","customer_id":"7uy8a7e4-6d02-40e3-a129-0b2bf89de8uh","customer_number":"5987953","legal_name":"Eveline Tripman","mobile_phone_number":"+44 07972 444 876","email":"felixsmith@example.com","face_image":{"url":"www.openbankproject","date":"1100-01-01T00:00:00Z"},"date_of_birth":"19900101","relationship_status":"single","dependants":1,"dob_of_dependants":["19900101"],"credit_rating":{"rating":"OBP","source":"OBP"},"credit_limit":{"currency":"EUR","amount":"0"},"highest_education_attained":"Master","employment_status":"worker","kyc_status":true,"last_ok_date":"2023-03-28T00:00:42Z","title":"Dr.","branch_id":"DERBY6","name_suffix":"Sr"}]},"error_response_bodies":["OBP-20001: User not logged in. Authentication is required!","OBP-30008: User Customer Link not found by USER_ID","OBP-50000: Unknown Error.","OBP-20006: User is missing one or more roles: "],"tags":["Customer","User"],"typed_success_response_body":{"type":"object","properties":{"customers":{"type":"array","items":{"type":"object","properties":{"dependants":{"type":"integer"},"face_image":{"type":"object","properties":{"url":{"type":"string"},"date":{"type":"string","format":"date-time"}}},"credit_limit":{"type":"object","properties":{"currency":{"type":"string"},"amount":{"type":"string"}}},"employment_status":{"type":"string"},"email":{"type":"string"},"customer_id":{"type":"string"},"relationship_status":{"type":"string"},"last_ok_date":{"type":"string","format":"date-time"},"bank_id":{"type":"string"},"highest_education_attained":{"type":"string"},"customer_number":{"type":"string"},"credit_rating":{"type":"object","properties":{"rating":{"type":"string"},"source":{"type":"string"}}},"name_suffix":{"type":"string"},"date_of_birth":{"type":"string"},"legal_name":{"type":"string"},"title":{"type":"string"},"dob_of_dependants":{"type":"array","items":{"type":"string"}},"branch_id":{"type":"string"},"mobile_phone_number":{"type":"string"},"kyc_status":{"type":"boolean"}}}}}},"roles":[{"role":"CanGetCustomersAtAnyBank","requires_bank_id":false}],"is_featured":false,"special_instructions":"","specified_url":"/obp/v5.1.0/customers","connector_methods":["obp.getCustomersAtAllBanks"]},{"operation_id":"OBPv3.1.0-refreshUser","implemented_by":{"version":"OBPv3.1.0","function":"refreshUser"},"request_verb":"POST","request_url":"/obp/v3.1.0/users/USER_ID/refresh","summary":"Refresh User","description":"The endpoint is used for updating the accounts, views, account holders for the user.
\nAs to the Json body, you can leave it as Empty.
\nThis call will get data from backend, no need to prepare the json body in api side.
Authentication is Mandatory
\nURL Parameters:
\nUSER_ID: 9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1
\nJSON request body fields:
\nJSON response body fields:
\nduration_time: 60
\n","description_markdown":"The endpoint is used for updating the accounts, views, account holders for the user.\n As to the Json body, you can leave it as Empty. \n This call will get data from backend, no need to prepare the json body in api side.\n\nAuthentication is Mandatory\n\n\n**URL Parameters:**\n\n[USER_ID](/glossary#User.user_id): 9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1\n\n\n\n\n\n**JSON request body fields:**\n\n\n\n\n\n**JSON response body fields:**\n\n\n\n[**duration_time**](/glossary#duration_time): 60\n\n\n","success_response_body":{"duration_time":"10 ms"},"error_response_bodies":["OBP-20006: User is missing one or more roles: ","OBP-50000: Unknown Error.","OBP-20001: User not logged in. Authentication is required!"],"tags":["User"],"typed_success_response_body":{"type":"object","properties":{"duration_time":{"type":"string"}}},"roles":[{"role":"CanRefreshUser","requires_bank_id":false}],"is_featured":false,"special_instructions":"","specified_url":"/obp/v5.1.0/users/USER_ID/refresh","connector_methods":["obp.getBankAccountsForUser"]},{"operation_id":"OBPv4.0.0-getConsents","implemented_by":{"version":"OBPv4.0.0","function":"getConsents"},"request_verb":"GET","request_url":"/obp/v4.0.0/banks/BANK_ID/my/consents","summary":"Get Consents","description":"This endpoint gets the Consents that the current User created.
\nAuthentication is Mandatory
\nURL Parameters:
\nBANK_ID: gh.29.uk
\nJSON response body fields:
\napi_standard: api_standard
\n\n\n\njwt:
\n\n","description_markdown":"This endpoint gets the Consents that the current User created.\n\nAuthentication is Mandatory\n\n\n**URL Parameters:**\n\n[BANK_ID](/glossary#Bank.bank_id): gh.29.uk\n\n\n\n\n\n**JSON response body fields:**\n\n\n\n[**api_standard**](/glossary#): api_standard\n\n\n\n[**api_version**](/glossary#api_version): \n\n\n\n[**consent_id**](/glossary#consent_id): \n\n\n\n[**consents**](/glossary#consents): \n\n\n\n[**jwt**](/glossary#jwt): \n\n\n\n[**status**](/glossary#status): \n\n\n","success_response_body":{"consents":[{"consent_id":"9d429899-24f5-42c8-8565-943ffa6a7945","jwt":"eyJhbGciOiJIUzI1NiJ9.eyJlbnRpdGxlbWVudHMiOltdLCJjcmVhdGVkQnlVc2VySWQiOiJhYjY1MzlhOS1iMTA1LTQ0ODktYTg4My0wYWQ4ZDZjNjE2NTciLCJzdWIiOiIyMWUxYzhjYy1mOTE4LTRlYWMtYjhlMy01ZTVlZWM2YjNiNGIiLCJhdWQiOiJlanpuazUwNWQxMzJyeW9tbmhieDFxbXRvaHVyYnNiYjBraWphanNrIiwibmJmIjoxNTUzNTU0ODk5LCJpc3MiOiJodHRwczpcL1wvd3d3Lm9wZW5iYW5rcHJvamVjdC5jb20iLCJleHAiOjE1NTM1NTg0OTksImlhdCI6MTU1MzU1NDg5OSwianRpIjoiMDlmODhkNWYtZWNlNi00Mzk4LThlOTktNjYxMWZhMWNkYmQ1Iiwidmlld3MiOlt7ImFjY291bnRfaWQiOiJtYXJrb19wcml2aXRlXzAxIiwiYmFua19pZCI6ImdoLjI5LnVrLngiLCJ2aWV3X2lkIjoib3duZXIifSx7ImFjY291bnRfaWQiOiJtYXJrb19wcml2aXRlXzAyIiwiYmFua19pZCI6ImdoLjI5LnVrLngiLCJ2aWV3X2lkIjoib3duZXIifV19.8cc7cBEf2NyQvJoukBCmDLT7LXYcuzTcSYLqSpbxLp4","status":"INITIATED","api_standard":"Berlin Group","api_version":"v1.3"}]},"error_response_bodies":["OBP-20001: User not logged in. Authentication is required!","OBP-30001: Bank not found. Please specify a valid value for BANK_ID.","OBP-50000: Unknown Error."],"tags":["Consent","Account Information Service (AIS)","PSD2"],"typed_success_response_body":{"type":"object","properties":{"consents":{"type":"array","items":{"type":"object","properties":{"api_standard":{"type":"string"},"consent_id":{"type":"string"},"status":{"type":"string"},"jwt":{"type":"string"},"api_version":{"type":"string"}}}}}},"is_featured":false,"special_instructions":"","specified_url":"/obp/v5.1.0/banks/BANK_ID/my/consents","connector_methods":[]},{"operation_id":"OBPv4.0.0-getCustomersMinimalAtAnyBank","implemented_by":{"version":"OBPv4.0.0","function":"getCustomersMinimalAtAnyBank"},"request_verb":"GET","request_url":"/obp/v4.0.0/customers-minimal","summary":"Get Customers Minimal at Any Bank","description":"Get Customers Minimal at Any Bank.
\nAuthentication is Mandatory
\nJSON response body fields:
\nbank_id: gh.29.uk
\ncustomer_id: 7uy8a7e4-6d02-40e3-a129-0b2bf89de8uh
\n\n","description_markdown":"Get Customers Minimal at Any Bank.\n\n\nAuthentication is Mandatory\n\n\n**JSON response body fields:**\n\n\n\n[**bank_id**](/glossary#): gh.29.uk\n\n\n\n[**customer_id**](/glossary#): 7uy8a7e4-6d02-40e3-a129-0b2bf89de8uh\n\n\n\n[**customers**](/glossary#customers): \n\n\n","success_response_body":{"customers":[{"bank_id":"gh.29.uk","customer_id":"7uy8a7e4-6d02-40e3-a129-0b2bf89de8uh"}]},"error_response_bodies":["OBP-20001: User not logged in. Authentication is required!","OBP-30008: User Customer Link not found by USER_ID","OBP-50000: Unknown Error.","OBP-20006: User is missing one or more roles: "],"tags":["Customer","User"],"typed_success_response_body":{"type":"object","properties":{"customers":{"type":"array","items":{"type":"object","properties":{"customer_id":{"type":"string"},"bank_id":{"type":"string"}}}}}},"roles":[{"role":"CanGetCustomersMinimalAtAnyBank","requires_bank_id":false}],"is_featured":false,"special_instructions":"","specified_url":"/obp/v5.1.0/customers-minimal","connector_methods":["obp.getCustomersAtAllBanks"]},{"operation_id":"OBPv4.0.0-revokeUserAccessToView","implemented_by":{"version":"OBPv4.0.0","function":"revokeUserAccessToView"},"request_verb":"POST","request_url":"/obp/v4.0.0/banks/BANK_ID/accounts/ACCOUNT_ID/account-access/revoke","summary":"Revoke User access to View","description":"Revoke the User identified by USER_ID access to the view identified by VIEW_ID.
\nAuthentication is Mandatory and the user needs to be account holder.
\nURL Parameters:
\nACCOUNT_ID: 8ca8a7e4-6d02-40e3-a129-0b2bf89de9f0
\nBANK_ID: gh.29.uk
\nJSON request body fields:
\nis_system: true
\nuser_id: 9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1
\nview:
\nview_id: owner
\nJSON response body fields:
\n\n","description_markdown":"Revoke the User identified by USER_ID access to the view identified by VIEW_ID.\n\nAuthentication is Mandatory and the user needs to be account holder.\n\n\n**URL Parameters:**\n\n[ACCOUNT_ID](/glossary#Account.account_id): 8ca8a7e4-6d02-40e3-a129-0b2bf89de9f0\n\n\n\n[BANK_ID](/glossary#Bank.bank_id): gh.29.uk\n\n\n\n\n\n**JSON request body fields:**\n\n\n\n[**is_system**](/glossary#): true\n\n\n\n[**user_id**](/glossary#): 9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1\n\n\n\n[**view**](/glossary#view): \n\n\n\n[**view_id**](/glossary#): owner\n\n\n\n\n\n**JSON response body fields:**\n\n\n\n[**revoked**](/glossary#revoked): \n\n\n","example_request_body":{"user_id":"9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1","view":{"view_id":"owner","is_system":true}},"success_response_body":{"revoked":true},"error_response_bodies":["OBP-20001: User not logged in. Authentication is required!","OBP-20047: User must have access to the owner view or must be an account holder.","OBP-10001: Incorrect json format.","OBP-20005: User not found. Please specify a valid value for USER_ID.","OBP-30252: System view not found. Please specify a valid value for VIEW_ID","OBP-30005: View not found for Account. Please specify a valid value for VIEW_ID","OBP-30064: Cannot revoke account access.","OBP-30065: Cannot find account access.","OBP-50000: Unknown Error."],"tags":["Account-Access","View-Custom","Account","User","OwnerViewRequired"],"typed_request_body":{"type":"object","properties":{"view":{"type":"object","properties":{"is_system":{"type":"boolean"},"view_id":{"type":"string"}}},"user_id":{"type":"string"}}},"typed_success_response_body":{"type":"object","properties":{"revoked":{"type":"boolean"}}},"is_featured":false,"special_instructions":"","specified_url":"/obp/v5.1.0/banks/BANK_ID/accounts/ACCOUNT_ID/account-access/revoke","connector_methods":[]},{"operation_id":"OBPv3.0.0-getEntitlementRequests","implemented_by":{"version":"OBPv3.0.0","function":"getEntitlementRequests"},"request_verb":"GET","request_url":"/obp/v3.0.0/users/USER_ID/entitlement-requests","summary":"Get Entitlement Requests for a User","description":"Get Entitlement Requests for a User.
\nAuthentication is Mandatory
\nURL Parameters:
\nUSER_ID: 9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1
\nJSON response body fields:
\nbank_id: gh.29.uk
\n\n\n\n\n\n\nlist:
\nprovider: ETHEREUM
\n\n\nuser:
\nuser_id: 9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1
\nusername: felixsmith
\n","description_markdown":"Get Entitlement Requests for a User.\n\n\nAuthentication is Mandatory\n\n\n**URL Parameters:**\n\n[USER_ID](/glossary#User.user_id): 9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1\n\n\n\n\n\n**JSON response body fields:**\n\n\n\n[**bank_id**](/glossary#): gh.29.uk\n\n\n\n[**created**](/glossary#created): \n\n\n\n[**email**](/glossary#): felixsmith@example.com\n\n\n\n[**entitlement_id**](/glossary#entitlement_id): \n\n\n\n[**entitlement_request_id**](/glossary#entitlement_request_id): \n\n\n\n[**entitlement_requests**](/glossary#entitlement_requests): \n\n\n\n[**entitlements**](/glossary#entitlements): \n\n\n\n[**list**](/glossary#list): \n\n\n\n[**provider**](/glossary#provider): ETHEREUM\n\n\n\n[**provider_id**](/glossary#provider_id): \n\n\n\n[**role_name**](/glossary#role_name): \n\n\n\n[**user**](/glossary#User): \n\n\n\n[**user_id**](/glossary#): 9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1\n\n\n\n[**username**](/glossary#): felixsmith\n\n\n","success_response_body":{"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"}]},"error_response_bodies":["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: "],"tags":["Role","Entitlement","User"],"typed_success_response_body":{"type":"object","properties":{"entitlement_requests":{"type":"array","items":{"type":"object","properties":{"entitlement_request_id":{"type":"string"},"role_name":{"type":"string"},"bank_id":{"type":"string"},"user":{"type":"object","properties":{"provider":{"type":"string"},"email":{"type":"string"},"provider_id":{"type":"string"},"entitlements":{"type":"object","properties":{"list":{"type":"array","items":{"type":"object","properties":{"role_name":{"type":"string"},"bank_id":{"type":"string"},"entitlement_id":{"type":"string"}}}}}},"username":{"type":"string"},"user_id":{"type":"string"}}},"created":{"type":"string","format":"date-time"}}}}}},"roles":[{"role":"CanGetEntitlementRequestsAtAnyBank","requires_bank_id":false}],"is_featured":false,"special_instructions":"","specified_url":"/obp/v5.1.0/users/USER_ID/entitlement-requests","connector_methods":["obp.getBankAccountsForUser"]},{"operation_id":"OBPv3.0.0-getAllEntitlementRequests","implemented_by":{"version":"OBPv3.0.0","function":"getAllEntitlementRequests"},"request_verb":"GET","request_url":"/obp/v3.0.0/entitlement-requests","summary":"Get all Entitlement Requests","description":"Get all Entitlement Requests
\nAuthentication is Mandatory
\nJSON response body fields:
\nbank_id: gh.29.uk
\n\n\n\n\n\n\nlist:
\nprovider: ETHEREUM
\n\n\nuser:
\nuser_id: 9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1
\nusername: felixsmith
\n","description_markdown":"Get all Entitlement Requests\n\nAuthentication is Mandatory\n\n\n**JSON response body fields:**\n\n\n\n[**bank_id**](/glossary#): gh.29.uk\n\n\n\n[**created**](/glossary#created): \n\n\n\n[**email**](/glossary#): felixsmith@example.com\n\n\n\n[**entitlement_id**](/glossary#entitlement_id): \n\n\n\n[**entitlement_request_id**](/glossary#entitlement_request_id): \n\n\n\n[**entitlement_requests**](/glossary#entitlement_requests): \n\n\n\n[**entitlements**](/glossary#entitlements): \n\n\n\n[**list**](/glossary#list): \n\n\n\n[**provider**](/glossary#provider): ETHEREUM\n\n\n\n[**provider_id**](/glossary#provider_id): \n\n\n\n[**role_name**](/glossary#role_name): \n\n\n\n[**user**](/glossary#User): \n\n\n\n[**user_id**](/glossary#): 9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1\n\n\n\n[**username**](/glossary#): felixsmith\n\n\n","success_response_body":{"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"}]},"error_response_bodies":["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: "],"tags":["Role","Entitlement","User"],"typed_success_response_body":{"type":"object","properties":{"entitlement_requests":{"type":"array","items":{"type":"object","properties":{"entitlement_request_id":{"type":"string"},"role_name":{"type":"string"},"bank_id":{"type":"string"},"user":{"type":"object","properties":{"provider":{"type":"string"},"email":{"type":"string"},"provider_id":{"type":"string"},"entitlements":{"type":"object","properties":{"list":{"type":"array","items":{"type":"object","properties":{"role_name":{"type":"string"},"bank_id":{"type":"string"},"entitlement_id":{"type":"string"}}}}}},"username":{"type":"string"},"user_id":{"type":"string"}}},"created":{"type":"string","format":"date-time"}}}}}},"roles":[{"role":"CanGetEntitlementRequestsAtAnyBank","requires_bank_id":false}],"is_featured":false,"special_instructions":"","specified_url":"/obp/v5.1.0/entitlement-requests","connector_methods":["obp.getBankAccountsForUser"]},{"operation_id":"OBPv5.0.0-createUserAuthContextUpdateRequest","implemented_by":{"version":"OBPv5.0.0","function":"createUserAuthContextUpdateRequest"},"request_verb":"POST","request_url":"/obp/v5.0.0/banks/BANK_ID/users/current/auth-context-updates/SCA_METHOD","summary":"Create User Auth Context Update Request","description":"Create User Auth Context Update Request.
\nAuthentication is Mandatory
A One Time Password (OTP) (AKA security challenge) is sent Out of Band (OOB) to the User via the transport defined in SCA_METHOD
\nSCA_METHOD is typically "SMS" or "EMAIL". "EMAIL" is used for testing purposes.
URL Parameters:
\nBANK_ID: gh.29.uk
\n\nJSON request body fields:
\nkey: CustomerNumber
\nvalue: 5987953
\nJSON response body fields:
\nconsumer_id: 7uy8a7e4-6d02-40e3-a129-0b2bf89de8uh
\nkey: CustomerNumber
\n\n\nuser_id: 9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1
\nvalue: 5987953
\n","description_markdown":"Create User Auth Context Update Request.\nAuthentication is Mandatory\n\nA One Time Password (OTP) (AKA security challenge) is sent Out of Band (OOB) to the User via the transport defined in SCA_METHOD\nSCA_METHOD is typically \"SMS\" or \"EMAIL\". \"EMAIL\" is used for testing purposes.\n\n\n**URL Parameters:**\n\n[BANK_ID](/glossary#Bank.bank_id): gh.29.uk\n\n\n\n[SCA_METHOD](/glossary#sca_method): \n\n\n\n\n\n**JSON request body fields:**\n\n\n\n[**key**](/glossary#): CustomerNumber\n\n\n\n[**value**](/glossary#): 5987953\n\n\n\n\n\n**JSON response body fields:**\n\n\n\n[**consumer_id**](/glossary#): 7uy8a7e4-6d02-40e3-a129-0b2bf89de8uh\n\n\n\n[**key**](/glossary#): CustomerNumber\n\n\n\n[**status**](/glossary#status): \n\n\n\n[**user_auth_context_update_id**](/glossary#user_auth_context_update_id): \n\n\n\n[**user_id**](/glossary#): 9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1\n\n\n\n[**value**](/glossary#): 5987953\n\n\n","example_request_body":{"key":"CUSTOMER_NUMBER","value":"78987432"},"success_response_body":{"user_auth_context_update_id":"613c83ea-80f9-4560-8404-b9cd4ec42a7f","user_id":"9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1","key":"CUSTOMER_NUMBER","value":"78987432","status":"INITIATED","consumer_id":"7uy8a7e4-6d02-40e3-a129-0b2bf89de8uh"},"error_response_bodies":["OBP-20001: User not logged in. Authentication is required!","OBP-30001: Bank not found. Please specify a valid value for BANK_ID.","OBP-10001: Incorrect json format.","OBP-30053: Could not insert the UserAuthContext","OBP-50000: Unknown Error."],"tags":["User"],"typed_request_body":{"type":"object","properties":{"key":{"type":"string"},"value":{"type":"string"}}},"typed_success_response_body":{"type":"object","properties":{"user_auth_context_update_id":{"type":"string","format":"date-time"},"consumer_id":{"type":"string"},"key":{"type":"string"},"status":{"type":"string"},"value":{"type":"string"},"user_id":{"type":"string"}}},"is_featured":false,"special_instructions":"","specified_url":"/obp/v5.1.0/banks/BANK_ID/users/current/auth-context-updates/SCA_METHOD","connector_methods":["obp.validateUserAuthContextUpdateRequest","obp.getBankAccountsForUser"]},{"operation_id":"OBPv5.1.0-createNonPersonalUserAttribute","implemented_by":{"version":"OBPv5.1.0","function":"createNonPersonalUserAttribute"},"request_verb":"POST","request_url":"/obp/v5.1.0/users/USER_ID/non-personal/attributes","summary":"Create Non Personal User Attribute","description":"Create Non Personal User Attribute
\nThe type field must be one of "STRING", "INTEGER", "DOUBLE" or DATE_WITH_DAY"
\nAuthentication is Mandatory
\nURL Parameters:
\nUSER_ID: 9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1
\nJSON request body fields:
\nname: ACCOUNT_MANAGEMENT_FEE
\ntype:
\nvalue: 5987953
\nJSON response body fields:
\ninsert_date: 2020-01-27
\nis_personal: is_personal
\nname: ACCOUNT_MANAGEMENT_FEE
\ntype:
\nuser_attribute_id: 7uy8a7e4-6d02-40e3-a129-0b2bf89de8uh
\nvalue: 5987953
\n","description_markdown":"Create Non Personal User Attribute\n\nThe type field must be one of \"STRING\", \"INTEGER\", \"DOUBLE\" or DATE_WITH_DAY\"\n\nAuthentication is Mandatory\n\n\n**URL Parameters:**\n\n[USER_ID](/glossary#User.user_id): 9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1\n\n\n\n\n\n**JSON request body fields:**\n\n\n\n[**name**](/glossary#name): ACCOUNT_MANAGEMENT_FEE\n\n\n\n[**type**](/glossary#type): \n\n\n\n[**value**](/glossary#): 5987953\n\n\n\n\n\n**JSON response body fields:**\n\n\n\n[**insert_date**](/glossary#): 2020-01-27\n\n\n\n[**is_personal**](/glossary#): is_personal\n\n\n\n[**name**](/glossary#name): ACCOUNT_MANAGEMENT_FEE\n\n\n\n[**type**](/glossary#type): \n\n\n\n[**user_attribute_id**](/glossary#): 7uy8a7e4-6d02-40e3-a129-0b2bf89de8uh\n\n\n\n[**value**](/glossary#): 5987953\n\n\n","example_request_body":{"name":"BATTERY_LEVEL","type":"STRING","value":"90"},"success_response_body":{"user_attribute_id":"7uy8a7e4-6d02-40e3-a129-0b2bf89de8uh","name":"BATTERY_LEVEL","type":"STRING","value":"90","is_personal":false,"insert_date":"2024-03-28T00:00:42Z"},"error_response_bodies":["OBP-20001: User not logged in. Authentication is required!","OBP-20006: User is missing one or more roles: ","OBP-10001: Incorrect json format.","OBP-50000: Unknown Error."],"tags":["User"],"typed_request_body":{"type":"object","properties":{"value":{"type":"string"},"type":{"type":"string"},"name":{"type":"string"}}},"typed_success_response_body":{"type":"object","properties":{"insert_date":{"type":"string","format":"date-time"},"value":{"type":"string"},"user_attribute_id":{"type":"string"},"type":{"type":"string"},"is_personal":{"type":"boolean"},"name":{"type":"string"}}},"roles":[{"role":"CanCreateNonPersonalUserAttribute","requires_bank_id":false}],"is_featured":false,"special_instructions":"","specified_url":"/obp/v5.1.0/users/USER_ID/non-personal/attributes","connector_methods":["obp.createOrUpdateUserAttribute"]},{"operation_id":"OBPv4.0.0-createMyPersonalUserAttribute","implemented_by":{"version":"OBPv4.0.0","function":"createMyPersonalUserAttribute"},"request_verb":"POST","request_url":"/obp/v4.0.0/my/user/attributes","summary":"Create My Personal User Attribute","description":"Create My Personal User Attribute
\nThe type
field must be one of "STRING", "INTEGER", "DOUBLE" or DATE_WITH_DAY"
Authentication is Mandatory
\nJSON request body fields:
\nname: ACCOUNT_MANAGEMENT_FEE
\ntype:
\nvalue: 5987953
\nJSON response body fields:
\ninsert_date: 2020-01-27
\nname: ACCOUNT_MANAGEMENT_FEE
\ntype:
\nuser_attribute_id: 7uy8a7e4-6d02-40e3-a129-0b2bf89de8uh
\nvalue: 5987953
\n","description_markdown":"Create My Personal User Attribute\n\nThe `type` field must be one of \"STRING\", \"INTEGER\", \"DOUBLE\" or DATE_WITH_DAY\"\n\nAuthentication is Mandatory\n\n\n**JSON request body fields:**\n\n\n\n[**name**](/glossary#name): ACCOUNT_MANAGEMENT_FEE\n\n\n\n[**type**](/glossary#type): \n\n\n\n[**value**](/glossary#): 5987953\n\n\n\n\n\n**JSON response body fields:**\n\n\n\n[**insert_date**](/glossary#): 2020-01-27\n\n\n\n[**name**](/glossary#name): ACCOUNT_MANAGEMENT_FEE\n\n\n\n[**type**](/glossary#type): \n\n\n\n[**user_attribute_id**](/glossary#): 7uy8a7e4-6d02-40e3-a129-0b2bf89de8uh\n\n\n\n[**value**](/glossary#): 5987953\n\n\n","example_request_body":{"name":"BATTERY_LEVEL","type":"STRING","value":"90"},"success_response_body":{"user_attribute_id":"7uy8a7e4-6d02-40e3-a129-0b2bf89de8uh","name":"BATTERY_LEVEL","type":"STRING","value":"90","insert_date":"2024-03-28T00:00:42Z"},"error_response_bodies":["OBP-20001: User not logged in. Authentication is required!","OBP-10001: Incorrect json format.","OBP-50000: Unknown Error."],"tags":["User"],"typed_request_body":{"type":"object","properties":{"value":{"type":"string"},"type":{"type":"string"},"name":{"type":"string"}}},"typed_success_response_body":{"type":"object","properties":{"value":{"type":"string"},"user_attribute_id":{"type":"string"},"type":{"type":"string"},"insert_date":{"type":"string","format":"date-time"},"name":{"type":"string"}}},"roles":[],"is_featured":false,"special_instructions":"","specified_url":"/obp/v5.1.0/my/user/attributes","connector_methods":["obp.createOrUpdateUserAttribute"]},{"operation_id":"OBPv3.1.0-revokeConsent","implemented_by":{"version":"OBPv3.1.0","function":"revokeConsent"},"request_verb":"GET","request_url":"/obp/v3.1.0/banks/BANK_ID/my/consents/CONSENT_ID/revoke","summary":"Revoke Consent","description":"Revoke Consent for current user specified by CONSENT_ID
\nThere are a few reasons you might need to revoke an application’s access to a user’s account:
\n- The user explicitly wishes to revoke the application’s access
\n- You as the service provider have determined an application is compromised or malicious, and want to disable it
\n- etc.
Please note that this endpoint only supports the case:: "The user explicitly wishes to revoke the application’s access"
\nOBP as a resource server stores access tokens in a database, then it is relatively easy to revoke some token that belongs to a particular user.
\nThe status of the token is changed to "REVOKED" so the next time the revoked client makes a request, their token will fail to validate.
Authentication is Mandatory
\nURL Parameters:
\nBANK_ID: gh.29.uk
\n\nJSON response body fields:
\n\njwt:
\n\n","description_markdown":"Revoke Consent for current user specified by CONSENT_ID\n\nThere are a few reasons you might need to revoke an application’s access to a user’s account:\n - The user explicitly wishes to revoke the application’s access\n - You as the service provider have determined an application is compromised or malicious, and want to disable it\n - etc.\n\nPlease note that this endpoint only supports the case:: \"The user explicitly wishes to revoke the application’s access\"\n\nOBP as a resource server stores access tokens in a database, then it is relatively easy to revoke some token that belongs to a particular user.\nThe status of the token is changed to \"REVOKED\" so the next time the revoked client makes a request, their token will fail to validate.\n\nAuthentication is Mandatory\n\n\n**URL Parameters:**\n\n[BANK_ID](/glossary#Bank.bank_id): gh.29.uk\n\n\n\n[CONSENT_ID](/glossary#consent_id): \n\n\n\n\n\n**JSON response body fields:**\n\n\n\n[**consent_id**](/glossary#consent_id): \n\n\n\n[**jwt**](/glossary#jwt): \n\n\n\n[**status**](/glossary#status): \n\n\n","success_response_body":{"consent_id":"9d429899-24f5-42c8-8565-943ffa6a7945","jwt":"eyJhbGciOiJIUzI1NiJ9.eyJlbnRpdGxlbWVudHMiOltdLCJjcmVhdGVkQnlVc2VySWQiOiJhYjY1MzlhOS1iMTA1LTQ0ODktYTg4My0wYWQ4ZDZjNjE2NTciLCJzdWIiOiIyMWUxYzhjYy1mOTE4LTRlYWMtYjhlMy01ZTVlZWM2YjNiNGIiLCJhdWQiOiJlanpuazUwNWQxMzJyeW9tbmhieDFxbXRvaHVyYnNiYjBraWphanNrIiwibmJmIjoxNTUzNTU0ODk5LCJpc3MiOiJodHRwczpcL1wvd3d3Lm9wZW5iYW5rcHJvamVjdC5jb20iLCJleHAiOjE1NTM1NTg0OTksImlhdCI6MTU1MzU1NDg5OSwianRpIjoiMDlmODhkNWYtZWNlNi00Mzk4LThlOTktNjYxMWZhMWNkYmQ1Iiwidmlld3MiOlt7ImFjY291bnRfaWQiOiJtYXJrb19wcml2aXRlXzAxIiwiYmFua19pZCI6ImdoLjI5LnVrLngiLCJ2aWV3X2lkIjoib3duZXIifSx7ImFjY291bnRfaWQiOiJtYXJrb19wcml2aXRlXzAyIiwiYmFua19pZCI6ImdoLjI5LnVrLngiLCJ2aWV3X2lkIjoib3duZXIifV19.8cc7cBEf2NyQvJoukBCmDLT7LXYcuzTcSYLqSpbxLp4","status":"REJECTED"},"error_response_bodies":["OBP-20001: User not logged in. Authentication is required!","OBP-30001: Bank not found. Please specify a valid value for BANK_ID.","OBP-50000: Unknown Error."],"tags":["Consent","Account Information Service (AIS)","PSD2"],"typed_success_response_body":{"type":"object","properties":{"status":{"type":"string"},"consent_id":{"type":"string"},"jwt":{"type":"string"}}},"is_featured":false,"special_instructions":"","specified_url":"/obp/v5.1.0/banks/BANK_ID/my/consents/CONSENT_ID/revoke","connector_methods":["obp.getBank","obp.getBankAccountsForUser"]},{"operation_id":"OBPv5.0.0-answerUserAuthContextUpdateChallenge","implemented_by":{"version":"OBPv5.0.0","function":"answerUserAuthContextUpdateChallenge"},"request_verb":"POST","request_url":"/obp/v5.0.0/banks/BANK_ID/users/current/auth-context-updates/AUTH_CONTEXT_UPDATE_ID/challenge","summary":"Answer User Auth Context Update Challenge","description":"Answer User Auth Context Update Challenge.
\nAuthentication is Mandatory
\nURL Parameters:
\n\nBANK_ID: gh.29.uk
\nJSON request body fields:
\n\nJSON response body fields:
\nconsumer_id: 7uy8a7e4-6d02-40e3-a129-0b2bf89de8uh
\nkey: CustomerNumber
\n\n\nuser_id: 9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1
\nvalue: 5987953
\n","description_markdown":"Answer User Auth Context Update Challenge.\n\n\nAuthentication is Mandatory\n\n\n**URL Parameters:**\n\n[AUTH_CONTEXT_UPDATE_ID](/glossary#auth_context_update_id): \n\n\n\n[BANK_ID](/glossary#Bank.bank_id): gh.29.uk\n\n\n\n\n\n**JSON request body fields:**\n\n\n\n[**answer**](/glossary#answer): \n\n\n\n\n\n**JSON response body fields:**\n\n\n\n[**consumer_id**](/glossary#): 7uy8a7e4-6d02-40e3-a129-0b2bf89de8uh\n\n\n\n[**key**](/glossary#): CustomerNumber\n\n\n\n[**status**](/glossary#status): \n\n\n\n[**user_auth_context_update_id**](/glossary#user_auth_context_update_id): \n\n\n\n[**user_id**](/glossary#): 9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1\n\n\n\n[**value**](/glossary#): 5987953\n\n\n","example_request_body":{"answer":"123"},"success_response_body":{"user_auth_context_update_id":"613c83ea-80f9-4560-8404-b9cd4ec42a7f","user_id":"9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1","key":"CUSTOMER_NUMBER","value":"78987432","status":"INITIATED","consumer_id":"7uy8a7e4-6d02-40e3-a129-0b2bf89de8uh"},"error_response_bodies":["OBP-20001: User not logged in. Authentication is required!","OBP-30001: Bank not found. Please specify a valid value for BANK_ID.","OBP-10001: Incorrect json format.","OBP-50200: Connector cannot return the data we requested.","OBP-50000: Unknown Error."],"tags":["User"],"typed_request_body":{"type":"object","properties":{"answer":{"type":"string"}}},"typed_success_response_body":{"type":"object","properties":{"user_auth_context_update_id":{"type":"string","format":"date-time"},"consumer_id":{"type":"string"},"key":{"type":"string"},"status":{"type":"string"},"value":{"type":"string"},"user_id":{"type":"string"}}},"is_featured":false,"special_instructions":"","specified_url":"/obp/v5.1.0/banks/BANK_ID/users/current/auth-context-updates/AUTH_CONTEXT_UPDATE_ID/challenge","connector_methods":["obp.getCustomerByCustomerNumber","obp.createUserAuthContext","obp.checkAnswer","obp.getBankAccountsForUser"]},{"operation_id":"OBPv4.0.0-getUserWithAttributes","implemented_by":{"version":"OBPv4.0.0","function":"getUserWithAttributes"},"request_verb":"GET","request_url":"/obp/v4.0.0/users/USER_ID/attributes","summary":"Get User with Attributes by USER_ID","description":"Get User Attributes for the user defined via USER_ID.
\nAuthentication is Mandatory
\nURL Parameters:
\nUSER_ID: 9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1
\nJSON response body fields:
\n\ninsert_date: 2020-01-27
\nname: ACCOUNT_MANAGEMENT_FEE
\nprovider: ETHEREUM
\n\ntype:
\nuser_attribute_id: 7uy8a7e4-6d02-40e3-a129-0b2bf89de8uh
\nuser_attributes: user_attributes
\nuser_id: 9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1
\nusername: felixsmith
\nvalue: 5987953
\n","description_markdown":"Get User Attributes for the user defined via USER_ID.\n\nAuthentication is Mandatory\n\n\n**URL Parameters:**\n\n[USER_ID](/glossary#User.user_id): 9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1\n\n\n\n\n\n**JSON response body fields:**\n\n\n\n[**email**](/glossary#): felixsmith@example.com\n\n\n\n[**insert_date**](/glossary#): 2020-01-27\n\n\n\n[**name**](/glossary#name): ACCOUNT_MANAGEMENT_FEE\n\n\n\n[**provider**](/glossary#provider): ETHEREUM\n\n\n\n[**provider_id**](/glossary#provider_id): \n\n\n\n[**type**](/glossary#type): \n\n\n\n[**user_attribute_id**](/glossary#): 7uy8a7e4-6d02-40e3-a129-0b2bf89de8uh\n\n\n\n[**user_attributes**](/glossary#): user_attributes\n\n\n\n[**user_id**](/glossary#): 9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1\n\n\n\n[**username**](/glossary#): felixsmith\n\n\n\n[**value**](/glossary#): 5987953\n\n\n","success_response_body":{"user_id":"9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1","email":"felixsmith@example.com","provider_id":"Chris","provider":"http://127.0.0.1:8080","username":"felixsmith","user_attributes":[{"user_attribute_id":"7uy8a7e4-6d02-40e3-a129-0b2bf89de8uh","name":"BATTERY_LEVEL","type":"STRING","value":"90","insert_date":"2024-03-28T00:00:42Z"}]},"error_response_bodies":["OBP-20001: User not logged in. Authentication is required!","OBP-50000: Unknown Error.","OBP-20006: User is missing one or more roles: "],"tags":["User"],"typed_success_response_body":{"type":"object","properties":{"provider":{"type":"string"},"email":{"type":"string"},"provider_id":{"type":"string"},"user_attributes":{"type":"array","items":{"type":"object","properties":{"value":{"type":"string"},"user_attribute_id":{"type":"string"},"type":{"type":"string"},"insert_date":{"type":"string","format":"date-time"},"name":{"type":"string"}}}},"username":{"type":"string"},"user_id":{"type":"string"}}},"roles":[{"role":"CanGetUsersWithAttributes","requires_bank_id":false}],"is_featured":false,"special_instructions":"","specified_url":"/obp/v5.1.0/users/USER_ID/attributes","connector_methods":["obp.getUserAttributes"]},{"operation_id":"OBPv4.0.0-getMySpaces","implemented_by":{"version":"OBPv4.0.0","function":"getMySpaces"},"request_verb":"GET","request_url":"/obp/v4.0.0/my/spaces","summary":"Get My Spaces","description":"Get My Spaces.
\nAuthentication is Mandatory
\nJSON response body fields:
\nbank_ids: bank_ids
\n","description_markdown":"Get My Spaces.\n\nAuthentication is Mandatory\n\n\n**JSON response body fields:**\n\n\n\n[**bank_ids**](/glossary#): bank_ids\n\n\n","success_response_body":{"bank_ids":["gh.29.uk"]},"error_response_bodies":["OBP-20001: User not logged in. Authentication is required!","OBP-50000: Unknown Error."],"tags":["User"],"typed_success_response_body":{"type":"object","properties":{"bank_ids":{"type":"array","items":{"type":"string"}}}},"is_featured":false,"special_instructions":"","specified_url":"/obp/v5.1.0/my/spaces","connector_methods":[]},{"operation_id":"OBPv2.1.0-getEntitlementsByBankAndUser","implemented_by":{"version":"OBPv2.1.0","function":"getEntitlementsByBankAndUser"},"request_verb":"GET","request_url":"/obp/v2.1.0/banks/BANK_ID/users/USER_ID/entitlements","summary":"Get Entitlements for User at Bank","description":"Get Entitlements specified by BANK_ID and USER_ID
\nAuthentication is Mandatory
\nURL Parameters:
\nBANK_ID: gh.29.uk
\nUSER_ID: 9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1
\nJSON response body fields:
\nbank_id: gh.29.uk
\n\nlist:
\n\n","description_markdown":"Get Entitlements specified by BANK_ID and USER_ID\n\nAuthentication is Mandatory\n\n\n**URL Parameters:**\n\n[BANK_ID](/glossary#Bank.bank_id): gh.29.uk\n\n\n\n[USER_ID](/glossary#User.user_id): 9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1\n\n\n\n\n\n**JSON response body fields:**\n\n\n\n[**bank_id**](/glossary#): gh.29.uk\n\n\n\n[**entitlement_id**](/glossary#entitlement_id): \n\n\n\n[**list**](/glossary#list): \n\n\n\n[**role_name**](/glossary#role_name): \n\n\n","example_request_body":{"jsonString":"{}"},"success_response_body":{"list":[{"entitlement_id":"6fb17583-1e49-4435-bb74-a14fe0996723","role_name":"CanQueryOtherUser","bank_id":"gh.29.uk"}]},"error_response_bodies":["OBP-20001: User not logged in. Authentication is required!","OBP-20006: User is missing one or more roles: ","OBP-50000: Unknown Error."],"tags":["Role","Entitlement","User"],"typed_request_body":{"type":"object","properties":{"jsonString":{"type":"string"}}},"typed_success_response_body":{"type":"object","properties":{"list":{"type":"array","items":{"type":"object","properties":{"role_name":{"type":"string"},"bank_id":{"type":"string"},"entitlement_id":{"type":"string"}}}}}},"roles":[{"role":"CanGetEntitlementsForAnyUserAtOneBank","requires_bank_id":true},{"role":"CanGetEntitlementsForAnyUserAtAnyBank","requires_bank_id":false}],"is_featured":false,"special_instructions":"","specified_url":"/obp/v5.1.0/banks/BANK_ID/users/USER_ID/entitlements","connector_methods":["obp.getBank","obp.getBankAccountsForUser"]},{"operation_id":"OBPv4.0.0-getConsentInfos","implemented_by":{"version":"OBPv4.0.0","function":"getConsentInfos"},"request_verb":"GET","request_url":"/obp/v4.0.0/banks/BANK_ID/my/consent-infos","summary":"Get Consents Info","description":"This endpoint gets the Consents that the current User created.
\nAuthentication is Mandatory
\nURL Parameters:
\nBANK_ID: gh.29.uk
\nJSON response body fields:
\napi_standard: api_standard
\n\n\n\nconsumer_id: 7uy8a7e4-6d02-40e3-a129-0b2bf89de8uh
\n\nlast_action_date: last_action_date
\nlast_usage_date: last_usage_date
\n\n","description_markdown":"This endpoint gets the Consents that the current User created.\n\nAuthentication is Mandatory\n\n\n**URL Parameters:**\n\n[BANK_ID](/glossary#Bank.bank_id): gh.29.uk\n\n\n\n\n\n**JSON response body fields:**\n\n\n\n[**api_standard**](/glossary#): api_standard\n\n\n\n[**api_version**](/glossary#api_version): \n\n\n\n[**consent_id**](/glossary#consent_id): \n\n\n\n[**consents**](/glossary#consents): \n\n\n\n[**consumer_id**](/glossary#): 7uy8a7e4-6d02-40e3-a129-0b2bf89de8uh\n\n\n\n[**created_by_user_id**](/glossary#created_by_user_id): \n\n\n\n[**last_action_date**](/glossary#): last_action_date\n\n\n\n[**last_usage_date**](/glossary#): last_usage_date\n\n\n\n[**status**](/glossary#status): \n\n\n","success_response_body":{"consents":[{"consent_id":"9d429899-24f5-42c8-8565-943ffa6a7945","consumer_id":"7uy8a7e4-6d02-40e3-a129-0b2bf89de8uh","created_by_user_id":"9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1","last_action_date":"2020-01-27","last_usage_date":"2021-04-08T09:12:27Z","status":"INITIATED","api_standard":"Berlin Group","api_version":"v1.3"}]},"error_response_bodies":["OBP-20001: User not logged in. Authentication is required!","OBP-30001: Bank not found. Please specify a valid value for BANK_ID.","OBP-50000: Unknown Error."],"tags":["Consent","Account Information Service (AIS)","PSD2"],"typed_success_response_body":{"type":"object","properties":{"consents":{"type":"array","items":{"type":"object","properties":{"created_by_user_id":{"type":"string"},"api_standard":{"type":"string"},"consumer_id":{"type":"string"},"last_usage_date":{"type":"string","format":"date-time"},"last_action_date":{"type":"string","format":"date-time"},"consent_id":{"type":"string"},"status":{"type":"string"},"api_version":{"type":"string"}}}}}},"is_featured":false,"special_instructions":"","specified_url":"/obp/v5.1.0/banks/BANK_ID/my/consent-infos","connector_methods":[]},{"operation_id":"OBPv4.0.0-grantUserAccessToView","implemented_by":{"version":"OBPv4.0.0","function":"grantUserAccessToView"},"request_verb":"POST","request_url":"/obp/v4.0.0/banks/BANK_ID/accounts/ACCOUNT_ID/account-access/grant","summary":"Grant User access to View","description":"Grants the User identified by USER_ID access to the view identified by VIEW_ID.
\nAuthentication is Mandatory and the user needs to be account holder.
\nURL Parameters:
\nACCOUNT_ID: 8ca8a7e4-6d02-40e3-a129-0b2bf89de9f0
\nBANK_ID: gh.29.uk
\nJSON request body fields:
\nis_system: true
\nuser_id: 9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1
\nview:
\nview_id: owner
\nJSON response body fields:
\n\n\n\ncan_add_counterparty: true
\n\ncan_add_image_url: true
\ncan_add_more_info: true
\n\n\n\n\ncan_add_tag: true
\ncan_add_transaction_request_to_any_account:
\ncan_add_transaction_request_to_own_account:
\n\n\ncan_create_direct_debit: true
\n\n\ncan_delete_corporate_location: true
\ncan_delete_image: true
\n\n\ncan_delete_where_tag: true
\ncan_edit_owner_comment: true
\ncan_query_available_funds: true
\n\ncan_see_bank_account_bank_name: true
\ncan_see_bank_account_credit_limit: true
\ncan_see_bank_account_currency:
\n\ncan_see_bank_account_label: true
\ncan_see_bank_account_national_identifier:
\ncan_see_bank_account_number: true
\ncan_see_bank_account_owners: true
\ncan_see_bank_account_routing_address:
\ncan_see_bank_account_routing_scheme:
\ncan_see_bank_account_swift_bic:
\n\ncan_see_bank_routing_address: true
\n\n\ncan_see_corporate_location: true
\ncan_see_image_url: true
\ncan_see_images: true
\n\n\ncan_see_other_account_bank_name:
\n\n\ncan_see_other_account_metadata:
\ncan_see_other_account_national_identifier: true
\ncan_see_other_account_number: true
\ncan_see_other_account_routing_address: true
\ncan_see_other_account_routing_scheme:
\ncan_see_other_account_swift_bic: true
\ncan_see_other_bank_routing_address:
\ncan_see_other_bank_routing_scheme:
\n\n\n\n\n\ncan_see_transaction_amount: true
\n\n\ncan_see_transaction_description: true
\ncan_see_transaction_finish_date:
\n\ncan_see_transaction_other_bank_account:
\ncan_see_transaction_start_date:
\ncan_see_transaction_this_bank_account:
\n\ncan_see_url: true
\ncan_see_where_tag: true
\ndescription: This an optional field. Maximum length is 2000. It can be any characters here.
\n\nid: d8839721-ad8f-45dd-9f78-2080414b93f9
\nis_public: true
\nis_system: true
\n\n\n\n","description_markdown":"Grants the User identified by USER_ID access to the view identified by VIEW_ID.\n\nAuthentication is Mandatory and the user needs to be account holder.\n\n\n**URL Parameters:**\n\n[ACCOUNT_ID](/glossary#Account.account_id): 8ca8a7e4-6d02-40e3-a129-0b2bf89de9f0\n\n\n\n[BANK_ID](/glossary#Bank.bank_id): gh.29.uk\n\n\n\n\n\n**JSON request body fields:**\n\n\n\n[**is_system**](/glossary#): true\n\n\n\n[**user_id**](/glossary#): 9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1\n\n\n\n[**view**](/glossary#view): \n\n\n\n[**view_id**](/glossary#): owner\n\n\n\n\n\n**JSON response body fields:**\n\n\n\n[**alias**](/glossary#alias): \n\n\n\n[**can_add_comment**](/glossary#can_add_comment): \n\n\n\n[**can_add_corporate_location**](/glossary#can_add_corporate_location): \n\n\n\n[**can_add_counterparty**](/glossary#can_add_counterparty): true\n\n\n\n[**can_add_image**](/glossary#can_add_image): \n\n\n\n[**can_add_image_url**](/glossary#can_add_image_url): true\n\n\n\n[**can_add_more_info**](/glossary#can_add_more_info): true\n\n\n\n[**can_add_open_corporates_url**](/glossary#can_add_open_corporates_url): \n\n\n\n[**can_add_physical_location**](/glossary#can_add_physical_location): \n\n\n\n[**can_add_private_alias**](/glossary#can_add_private_alias): \n\n\n\n[**can_add_public_alias**](/glossary#can_add_public_alias): \n\n\n\n[**can_add_tag**](/glossary#can_add_tag): true\n\n\n\n[**can_add_transaction_request_to_any_account**](/glossary#can_add_transaction_request_to_any_account): \n\n\n\n[**can_add_transaction_request_to_own_account**](/glossary#can_add_transaction_request_to_own_account): \n\n\n\n[**can_add_url**](/glossary#can_add_url): \n\n\n\n[**can_add_where_tag**](/glossary#can_add_where_tag): \n\n\n\n[**can_create_direct_debit**](/glossary#can_create_direct_debit): true\n\n\n\n[**can_create_standing_order**](/glossary#can_create_standing_order): \n\n\n\n[**can_delete_comment**](/glossary#can_delete_comment): \n\n\n\n[**can_delete_corporate_location**](/glossary#can_delete_corporate_location): true\n\n\n\n[**can_delete_image**](/glossary#can_delete_image): true\n\n\n\n[**can_delete_physical_location**](/glossary#can_delete_physical_location): \n\n\n\n[**can_delete_tag**](/glossary#can_delete_tag): \n\n\n\n[**can_delete_where_tag**](/glossary#can_delete_where_tag): true\n\n\n\n[**can_edit_owner_comment**](/glossary#can_edit_owner_comment): true\n\n\n\n[**can_query_available_funds**](/glossary#can_query_available_funds): true\n\n\n\n[**can_see_bank_account_balance**](/glossary#can_see_bank_account_balance): \n\n\n\n[**can_see_bank_account_bank_name**](/glossary#can_see_bank_account_bank_name): true\n\n\n\n[**can_see_bank_account_credit_limit**](/glossary#can_see_bank_account_credit_limit): true\n\n\n\n[**can_see_bank_account_currency**](/glossary#can_see_bank_account_currency): \n\n\n\n[**can_see_bank_account_iban**](/glossary#can_see_bank_account_iban): \n\n\n\n[**can_see_bank_account_label**](/glossary#can_see_bank_account_label): true\n\n\n\n[**can_see_bank_account_national_identifier**](/glossary#can_see_bank_account_national_identifier): \n\n\n\n[**can_see_bank_account_number**](/glossary#can_see_bank_account_number): true\n\n\n\n[**can_see_bank_account_owners**](/glossary#can_see_bank_account_owners): true\n\n\n\n[**can_see_bank_account_routing_address**](/glossary#can_see_bank_account_routing_address): \n\n\n\n[**can_see_bank_account_routing_scheme**](/glossary#can_see_bank_account_routing_scheme): \n\n\n\n[**can_see_bank_account_swift_bic**](/glossary#can_see_bank_account_swift_bic): \n\n\n\n[**can_see_bank_account_type**](/glossary#can_see_bank_account_type): \n\n\n\n[**can_see_bank_routing_address**](/glossary#can_see_bank_routing_address): true\n\n\n\n[**can_see_bank_routing_scheme**](/glossary#can_see_bank_routing_scheme): \n\n\n\n[**can_see_comments**](/glossary#can_see_comments): \n\n\n\n[**can_see_corporate_location**](/glossary#can_see_corporate_location): true\n\n\n\n[**can_see_image_url**](/glossary#can_see_image_url): true\n\n\n\n[**can_see_images**](/glossary#can_see_images): true\n\n\n\n[**can_see_more_info**](/glossary#can_see_more_info): \n\n\n\n[**can_see_open_corporates_url**](/glossary#can_see_open_corporates_url): \n\n\n\n[**can_see_other_account_bank_name**](/glossary#can_see_other_account_bank_name): \n\n\n\n[**can_see_other_account_iban**](/glossary#can_see_other_account_iban): \n\n\n\n[**can_see_other_account_kind**](/glossary#can_see_other_account_kind): \n\n\n\n[**can_see_other_account_metadata**](/glossary#can_see_other_account_metadata): \n\n\n\n[**can_see_other_account_national_identifier**](/glossary#can_see_other_account_national_identifier): true\n\n\n\n[**can_see_other_account_number**](/glossary#can_see_other_account_number): true\n\n\n\n[**can_see_other_account_routing_address**](/glossary#can_see_other_account_routing_address): true\n\n\n\n[**can_see_other_account_routing_scheme**](/glossary#can_see_other_account_routing_scheme): \n\n\n\n[**can_see_other_account_swift_bic**](/glossary#can_see_other_account_swift_bic): true\n\n\n\n[**can_see_other_bank_routing_address**](/glossary#can_see_other_bank_routing_address): \n\n\n\n[**can_see_other_bank_routing_scheme**](/glossary#can_see_other_bank_routing_scheme): \n\n\n\n[**can_see_owner_comment**](/glossary#can_see_owner_comment): \n\n\n\n[**can_see_physical_location**](/glossary#can_see_physical_location): \n\n\n\n[**can_see_private_alias**](/glossary#can_see_private_alias): \n\n\n\n[**can_see_public_alias**](/glossary#can_see_public_alias): \n\n\n\n[**can_see_tags**](/glossary#can_see_tags): \n\n\n\n[**can_see_transaction_amount**](/glossary#can_see_transaction_amount): true\n\n\n\n[**can_see_transaction_balance**](/glossary#can_see_transaction_balance): \n\n\n\n[**can_see_transaction_currency**](/glossary#can_see_transaction_currency): \n\n\n\n[**can_see_transaction_description**](/glossary#can_see_transaction_description): true\n\n\n\n[**can_see_transaction_finish_date**](/glossary#can_see_transaction_finish_date): \n\n\n\n[**can_see_transaction_metadata**](/glossary#can_see_transaction_metadata): \n\n\n\n[**can_see_transaction_other_bank_account**](/glossary#can_see_transaction_other_bank_account): \n\n\n\n[**can_see_transaction_start_date**](/glossary#can_see_transaction_start_date): \n\n\n\n[**can_see_transaction_this_bank_account**](/glossary#can_see_transaction_this_bank_account): \n\n\n\n[**can_see_transaction_type**](/glossary#can_see_transaction_type): \n\n\n\n[**can_see_url**](/glossary#can_see_url): true\n\n\n\n[**can_see_where_tag**](/glossary#can_see_where_tag): true\n\n\n\n[**description**](/glossary#description): This an optional field. Maximum length is 2000. It can be any characters here.\n\n\n\n[**hide_metadata_if_alias_used**](/glossary#hide_metadata_if_alias_used): \n\n\n\n[**id**](/glossary#id): d8839721-ad8f-45dd-9f78-2080414b93f9\n\n\n\n[**is_public**](/glossary#is_public): true\n\n\n\n[**is_system**](/glossary#): true\n\n\n\n[**metadata_view**](/glossary#metadata_view): \n\n\n\n[**short_name**](/glossary#short_name): \n\n\n\n[is_firehose](/glossary#is_firehose): \n\n\n","example_request_body":{"user_id":"9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1","view":{"view_id":"owner","is_system":true}},"success_response_body":{"id":"1234","short_name":"short_name","description":"description","metadata_view":"owner","is_public":true,"is_system":true,"alias":"No","hide_metadata_if_alias_used":true,"can_add_comment":true,"can_add_corporate_location":true,"can_add_image":true,"can_add_image_url":true,"can_add_more_info":true,"can_add_open_corporates_url":true,"can_add_physical_location":true,"can_add_private_alias":true,"can_add_public_alias":true,"can_add_tag":true,"can_add_url":true,"can_add_where_tag":true,"can_delete_comment":true,"can_add_counterparty":true,"can_delete_corporate_location":true,"can_delete_image":true,"can_delete_physical_location":true,"can_delete_tag":true,"can_delete_where_tag":true,"can_edit_owner_comment":true,"can_see_bank_account_balance":true,"can_query_available_funds":true,"can_see_bank_account_bank_name":true,"can_see_bank_account_currency":true,"can_see_bank_account_iban":true,"can_see_bank_account_label":true,"can_see_bank_account_national_identifier":true,"can_see_bank_account_number":true,"can_see_bank_account_owners":true,"can_see_bank_account_swift_bic":true,"can_see_bank_account_type":true,"can_see_comments":true,"can_see_corporate_location":true,"can_see_image_url":true,"can_see_images":true,"can_see_more_info":true,"can_see_open_corporates_url":true,"can_see_other_account_bank_name":true,"can_see_other_account_iban":true,"can_see_other_account_kind":true,"can_see_other_account_metadata":true,"can_see_other_account_national_identifier":true,"can_see_other_account_number":true,"can_see_other_account_swift_bic":true,"can_see_owner_comment":true,"can_see_physical_location":true,"can_see_private_alias":true,"can_see_public_alias":true,"can_see_tags":true,"can_see_transaction_amount":true,"can_see_transaction_balance":true,"can_see_transaction_currency":true,"can_see_transaction_description":true,"can_see_transaction_finish_date":true,"can_see_transaction_metadata":true,"can_see_transaction_other_bank_account":true,"can_see_transaction_start_date":true,"can_see_transaction_this_bank_account":true,"can_see_transaction_type":true,"can_see_url":true,"can_see_where_tag":true,"can_see_bank_routing_scheme":true,"can_see_bank_routing_address":true,"can_see_bank_account_routing_scheme":true,"can_see_bank_account_routing_address":true,"can_see_other_bank_routing_scheme":true,"can_see_other_bank_routing_address":true,"can_see_other_account_routing_scheme":true,"can_see_other_account_routing_address":true,"can_add_transaction_request_to_own_account":true,"can_add_transaction_request_to_any_account":true,"can_see_bank_account_credit_limit":true,"can_create_direct_debit":true,"can_create_standing_order":true},"error_response_bodies":["OBP-20001: User not logged in. Authentication is required!","OBP-20047: User must have access to the owner view or must be an account holder.","OBP-10001: Incorrect json format.","OBP-20005: User not found. Please specify a valid value for USER_ID.","OBP-30252: System view not found. Please specify a valid value for VIEW_ID","OBP-30005: View not found for Account. Please specify a valid value for VIEW_ID","OBP-30063: Cannot grant account access.","OBP-50000: Unknown Error."],"tags":["Account-Access","View-Custom","Account","User","OwnerViewRequired"],"typed_request_body":{"type":"object","properties":{"view":{"type":"object","properties":{"is_system":{"type":"boolean"},"view_id":{"type":"string"}}},"user_id":{"type":"string"}}},"typed_success_response_body":{"type":"object","properties":{"can_see_other_account_swift_bic":{"type":"boolean"},"can_see_where_tag":{"type":"boolean"},"can_see_url":{"type":"boolean"},"can_create_direct_debit":{"type":"boolean"},"can_see_bank_account_swift_bic":{"type":"boolean"},"can_see_bank_account_routing_address":{"type":"boolean"},"can_see_tags":{"type":"boolean"},"can_see_transaction_balance":{"type":"boolean"},"can_delete_corporate_location":{"type":"boolean"},"can_add_image_url":{"type":"boolean"},"can_see_public_alias":{"type":"boolean"},"can_add_transaction_request_to_own_account":{"type":"boolean"},"can_add_comment":{"type":"boolean"},"can_see_other_bank_routing_scheme":{"type":"boolean"},"description":{"type":"string"},"can_see_corporate_location":{"type":"boolean"},"can_see_other_account_bank_name":{"type":"boolean"},"can_see_more_info":{"type":"boolean"},"can_add_counterparty":{"type":"boolean"},"is_system":{"type":"boolean"},"can_see_physical_location":{"type":"boolean"},"can_query_available_funds":{"type":"boolean"},"can_edit_owner_comment":{"type":"boolean"},"can_see_private_alias":{"type":"boolean"},"can_see_bank_account_credit_limit":{"type":"boolean"},"can_see_other_account_routing_address":{"type":"boolean"},"can_see_bank_account_balance":{"type":"boolean"},"can_add_public_alias":{"type":"boolean"},"can_see_bank_routing_scheme":{"type":"boolean"},"can_see_bank_account_owners":{"type":"boolean"},"can_see_other_account_metadata":{"type":"boolean"},"can_delete_physical_location":{"type":"boolean"},"hide_metadata_if_alias_used":{"type":"boolean"},"can_see_transaction_this_bank_account":{"type":"boolean"},"can_see_image_url":{"type":"boolean"},"can_see_transaction_type":{"type":"boolean"},"can_see_images":{"type":"boolean"},"can_see_transaction_amount":{"type":"boolean"},"metadata_view":{"type":"string"},"can_see_transaction_metadata":{"type":"boolean"},"can_see_comments":{"type":"boolean"},"can_see_other_account_iban":{"type":"boolean"},"can_add_image":{"type":"boolean"},"can_see_bank_account_routing_scheme":{"type":"boolean"},"can_see_bank_account_type":{"type":"boolean"},"can_see_other_account_kind":{"type":"boolean"},"can_see_bank_account_currency":{"type":"boolean"},"can_add_where_tag":{"type":"boolean"},"can_see_transaction_start_date":{"type":"boolean"},"can_see_bank_account_label":{"type":"boolean"},"can_add_private_alias":{"type":"boolean"},"can_see_transaction_currency":{"type":"boolean"},"can_add_more_info":{"type":"boolean"},"can_delete_comment":{"type":"boolean"},"can_create_standing_order":{"type":"boolean"},"can_see_other_bank_routing_address":{"type":"boolean"},"can_see_transaction_other_bank_account":{"type":"boolean"},"can_see_bank_account_number":{"type":"boolean"},"can_add_corporate_location":{"type":"boolean"},"alias":{"type":"string"},"can_add_url":{"type":"boolean"},"short_name":{"type":"string"},"can_delete_where_tag":{"type":"boolean"},"is_public":{"type":"boolean"},"can_see_owner_comment":{"type":"boolean"},"can_see_transaction_finish_date":{"type":"boolean"},"can_see_open_corporates_url":{"type":"boolean"},"can_add_physical_location":{"type":"boolean"},"can_see_bank_account_iban":{"type":"boolean"},"can_see_other_account_national_identifier":{"type":"boolean"},"can_see_bank_routing_address":{"type":"boolean"},"can_delete_image":{"type":"boolean"},"can_add_transaction_request_to_any_account":{"type":"boolean"},"can_add_tag":{"type":"boolean"},"id":{"type":"string"},"can_see_other_account_routing_scheme":{"type":"boolean"},"can_add_open_corporates_url":{"type":"boolean"},"can_delete_tag":{"type":"boolean"},"can_see_transaction_description":{"type":"boolean"},"can_see_bank_account_national_identifier":{"type":"boolean"},"can_see_other_account_number":{"type":"boolean"},"can_see_bank_account_bank_name":{"type":"boolean"}}},"is_featured":false,"special_instructions":"","specified_url":"/obp/v5.1.0/banks/BANK_ID/accounts/ACCOUNT_ID/account-access/grant","connector_methods":[]},{"operation_id":"OBPv3.1.0-createConsentEmail","implemented_by":{"version":"OBPv3.1.0","function":"createConsentEmail"},"request_verb":"POST","request_url":"/obp/v3.1.0/banks/BANK_ID/my/consents/EMAIL","summary":"Create Consent (EMAIL)","description":"This endpoint starts the process of creating a Consent.
\nThe Consent is created in an INITIATED state.
\nA One Time Password (OTP) (AKA security challenge) is sent Out of band (OOB) to the User via the transport defined in SCA_METHOD
\nSCA_METHOD is typically "SMS" or "EMAIL". "EMAIL" is used for testing purposes.
When the Consent is created, OBP (or a backend system) stores the challenge so it can be checked later against the value supplied by the User with the Answer Consent Challenge endpoint.
\nAn OBP Consent allows the holder of the Consent to call one or more endpoints.
\nConsents must be created and authorisied using SCA (Strong Customer Authentication).
\nThat is, Consents can be created by an authorised User via the OBP REST API but they must be confirmed via an out of band (OOB) mechanism such as a code sent to a mobile phone.
\nEach Consent has one of the following states: INITIATED, ACCEPTED, REJECTED, REVOKED, RECEIVED, VALID, REVOKEDBYPSU, EXPIRED, TERMINATEDBYTPP, AUTHORISED, AWAITINGAUTHORISATION.
\nEach Consent is bound to a consumer i.e. you need to identify yourself over request header value Consumer-Key.
\nFor example:
\nGET /obp/v4.0.0/users/current HTTP/1.1
\nHost: 127.0.0.1:8080
\nConsent-JWT: eyJhbGciOiJIUzI1NiJ9.eyJlbnRpdGxlbWVudHMiOlt7InJvbGVfbmFtZSI6IkNhbkdldEFueVVzZXIiLCJiYW5rX2lkIjoiIn
\n1dLCJjcmVhdGVkQnlVc2VySWQiOiJhYjY1MzlhOS1iMTA1LTQ0ODktYTg4My0wYWQ4ZDZjNjE2NTciLCJzdWIiOiIzNDc1MDEzZi03YmY5LTQyNj
\nEtOWUxYy0xZTdlNWZjZTJlN2UiLCJhdWQiOiI4MTVhMGVmMS00YjZhLTQyMDUtYjExMi1lNDVmZDZmNGQzYWQiLCJuYmYiOjE1ODA3NDE2NjcsIml
\nzcyI6Imh0dHA6XC9cLzEyNy4wLjAuMTo4MDgwIiwiZXhwIjoxNTgwNzQ1MjY3LCJpYXQiOjE1ODA3NDE2NjcsImp0aSI6ImJkYzVjZTk5LTE2ZTY
\ntNDM4Yi1hNjllLTU3MTAzN2RhMTg3OCIsInZpZXdzIjpbXX0.L3fEEEhdCVr3qnmyRKBBUaIQ7dk1VjiFaEBW8hUNjfg
Consumer-Key: ejznk505d132ryomnhbx1qmtohurbsbb0kijajsk
\ncache-control: no-cache
Maximum time to live of the token is specified over props value consents.max_time_to_live. In case isn't defined default value is 3600 seconds.
\nExample of POST JSON:
\n{
\n"everything": false,
\n"views": [
\n{
\n"bank_id": "GENODEM1GLS",
\n"account_id": "8ca8a7e4-6d02-40e3-a129-0b2bf89de9f0",
\n"view_id": "owner"
\n}
\n],
\n"entitlements": [
\n{
\n"bank_id": "GENODEM1GLS",
\n"role_name": "CanGetCustomer"
\n}
\n],
\n"consumer_id": "7uy8a7e4-6d02-40e3-a129-0b2bf89de8uh",
\n"email": "eveline@example.com",
\n"valid_from": "2020-02-07T08:43:34Z",
\n"time_to_live": 3600
\n}
\nPlease note that only optional fields are: consumer_id, valid_from and time_to_live.
\nIn case you omit they the default values are used:
\nconsumer_id = consumer of current user
\nvalid_from = current time
\ntime_to_live = consents.max_time_to_live
Authentication is Mandatory
\nExample 1:
\n{
\n"everything": true,
\n"views": [],
\n"entitlements": [],
\n"consumer_id": "7uy8a7e4-6d02-40e3-a129-0b2bf89de8uh",
\n"email": "eveline@example.com"
\n}
Please note that consumer_id is optional field
\nExample 2:
\n{
\n"everything": true,
\n"views": [],
\n"entitlements": [],
\n"email": "eveline@example.com"
\n}
Please note if everything=false you need to explicitly specify views and entitlements
\nExample 3:
\n{
\n"everything": false,
\n"views": [
\n{
\n"bank_id": "GENODEM1GLS",
\n"account_id": "8ca8a7e4-6d02-40e3-a129-0b2bf89de9f0",
\n"view_id": "owner"
\n}
\n],
\n"entitlements": [
\n{
\n"bank_id": "GENODEM1GLS",
\n"role_name": "CanGetCustomer"
\n}
\n],
\n"consumer_id": "7uy8a7e4-6d02-40e3-a129-0b2bf89de8uh",
\n"email": "eveline@example.com"
\n}
URL Parameters:
\nBANK_ID: gh.29.uk
\n\nJSON request body fields:
\naccount_id: 8ca8a7e4-6d02-40e3-a129-0b2bf89de9f0
\nbank_id: gh.29.uk
\n\n\n\n\nview_id: owner
\n\nconsumer_id: 7uy8a7e4-6d02-40e3-a129-0b2bf89de8uh
\n\nvalid_from: 2020-01-27
\nJSON response body fields:
\n\njwt:
\n\n","description_markdown":"This endpoint starts the process of creating a Consent.\n\nThe Consent is created in an INITIATED state.\n\nA One Time Password (OTP) (AKA security challenge) is sent Out of band (OOB) to the User via the transport defined in SCA_METHOD\nSCA_METHOD is typically \"SMS\" or \"EMAIL\". \"EMAIL\" is used for testing purposes.\n\nWhen the Consent is created, OBP (or a backend system) stores the challenge so it can be checked later against the value supplied by the User with the Answer Consent Challenge endpoint.\n\n\n\nAn OBP Consent allows the holder of the Consent to call one or more endpoints.\n\nConsents must be created and authorisied using SCA (Strong Customer Authentication).\n\nThat is, Consents can be created by an authorised User via the OBP REST API but they must be confirmed via an out of band (OOB) mechanism such as a code sent to a mobile phone.\n\nEach Consent has one of the following states: INITIATED, ACCEPTED, REJECTED, REVOKED, RECEIVED, VALID, REVOKEDBYPSU, EXPIRED, TERMINATEDBYTPP, AUTHORISED, AWAITINGAUTHORISATION.\n\nEach Consent is bound to a consumer i.e. you need to identify yourself over request header value Consumer-Key. \nFor example:\nGET /obp/v4.0.0/users/current HTTP/1.1\nHost: 127.0.0.1:8080\nConsent-JWT: eyJhbGciOiJIUzI1NiJ9.eyJlbnRpdGxlbWVudHMiOlt7InJvbGVfbmFtZSI6IkNhbkdldEFueVVzZXIiLCJiYW5rX2lkIjoiIn\n1dLCJjcmVhdGVkQnlVc2VySWQiOiJhYjY1MzlhOS1iMTA1LTQ0ODktYTg4My0wYWQ4ZDZjNjE2NTciLCJzdWIiOiIzNDc1MDEzZi03YmY5LTQyNj\nEtOWUxYy0xZTdlNWZjZTJlN2UiLCJhdWQiOiI4MTVhMGVmMS00YjZhLTQyMDUtYjExMi1lNDVmZDZmNGQzYWQiLCJuYmYiOjE1ODA3NDE2NjcsIml\nzcyI6Imh0dHA6XC9cLzEyNy4wLjAuMTo4MDgwIiwiZXhwIjoxNTgwNzQ1MjY3LCJpYXQiOjE1ODA3NDE2NjcsImp0aSI6ImJkYzVjZTk5LTE2ZTY\ntNDM4Yi1hNjllLTU3MTAzN2RhMTg3OCIsInZpZXdzIjpbXX0.L3fEEEhdCVr3qnmyRKBBUaIQ7dk1VjiFaEBW8hUNjfg\n\nConsumer-Key: ejznk505d132ryomnhbx1qmtohurbsbb0kijajsk\ncache-control: no-cache\n\nMaximum time to live of the token is specified over props value consents.max_time_to_live. In case isn't defined default value is 3600 seconds.\n\nExample of POST JSON:\n{\n \"everything\": false,\n \"views\": [\n {\n \"bank_id\": \"GENODEM1GLS\",\n \"account_id\": \"8ca8a7e4-6d02-40e3-a129-0b2bf89de9f0\",\n \"view_id\": \"owner\"\n }\n ],\n \"entitlements\": [\n {\n \"bank_id\": \"GENODEM1GLS\",\n \"role_name\": \"CanGetCustomer\"\n }\n ],\n \"consumer_id\": \"7uy8a7e4-6d02-40e3-a129-0b2bf89de8uh\",\n \"email\": \"eveline@example.com\",\n \"valid_from\": \"2020-02-07T08:43:34Z\",\n \"time_to_live\": 3600\n}\nPlease note that only optional fields are: consumer_id, valid_from and time_to_live. \nIn case you omit they the default values are used:\nconsumer_id = consumer of current user\nvalid_from = current time\ntime_to_live = consents.max_time_to_live\n\n \n\nAuthentication is Mandatory\n\nExample 1: \n{\n \"everything\": true,\n \"views\": [],\n \"entitlements\": [],\n \"consumer_id\": \"7uy8a7e4-6d02-40e3-a129-0b2bf89de8uh\",\n \"email\": \"eveline@example.com\"\n}\n\nPlease note that consumer_id is optional field\nExample 2:\n{\n \"everything\": true,\n \"views\": [],\n \"entitlements\": [],\n \"email\": \"eveline@example.com\"\n}\n\nPlease note if everything=false you need to explicitly specify views and entitlements\nExample 3:\n{\n \"everything\": false,\n \"views\": [\n {\n \"bank_id\": \"GENODEM1GLS\",\n \"account_id\": \"8ca8a7e4-6d02-40e3-a129-0b2bf89de9f0\",\n \"view_id\": \"owner\"\n }\n ],\n \"entitlements\": [\n {\n \"bank_id\": \"GENODEM1GLS\",\n \"role_name\": \"CanGetCustomer\"\n }\n ],\n \"consumer_id\": \"7uy8a7e4-6d02-40e3-a129-0b2bf89de8uh\",\n \"email\": \"eveline@example.com\"\n}\n\n\n**URL Parameters:**\n\n[BANK_ID](/glossary#Bank.bank_id): gh.29.uk\n\n\n\n[EMAIL](/glossary#): felixsmith@example.com\n\n\n\n\n\n**JSON request body fields:**\n\n\n\n[**account_id**](/glossary#): 8ca8a7e4-6d02-40e3-a129-0b2bf89de9f0\n\n\n\n[**bank_id**](/glossary#): gh.29.uk\n\n\n\n[**email**](/glossary#): felixsmith@example.com\n\n\n\n[**entitlements**](/glossary#entitlements): \n\n\n\n[**everything**](/glossary#everything): \n\n\n\n[**role_name**](/glossary#role_name): \n\n\n\n[**view_id**](/glossary#): owner\n\n\n\n[**views**](/glossary#views): \n\n\n\n[consumer_id](/glossary#): 7uy8a7e4-6d02-40e3-a129-0b2bf89de8uh\n\n\n\n[time_to_live](/glossary#time_to_live): \n\n\n\n[valid_from](/glossary#valid_from): 2020-01-27\n\n\n\n\n\n**JSON response body fields:**\n\n\n\n[**consent_id**](/glossary#consent_id): \n\n\n\n[**jwt**](/glossary#jwt): \n\n\n\n[**status**](/glossary#status): \n\n\n","example_request_body":{"everything":false,"views":[{"bank_id":"gh.29.uk","account_id":"8ca8a7e4-6d02-40e3-a129-0b2bf89de9f0","view_id":"owner"}],"entitlements":[{"bank_id":"gh.29.uk","role_name":"CanGetCustomer"}],"consumer_id":"7uy8a7e4-6d02-40e3-a129-0b2bf89de8uh","email":"felixsmith@example.com","valid_from":"2024-03-28T00:00:42Z","time_to_live":3600},"success_response_body":{"consent_id":"9d429899-24f5-42c8-8565-943ffa6a7945","jwt":"eyJhbGciOiJIUzI1NiJ9.eyJlbnRpdGxlbWVudHMiOltdLCJjcmVhdGVkQnlVc2VySWQiOiJhYjY1MzlhOS1iMTA1LTQ0ODktYTg4My0wYWQ4ZDZjNjE2NTciLCJzdWIiOiIyMWUxYzhjYy1mOTE4LTRlYWMtYjhlMy01ZTVlZWM2YjNiNGIiLCJhdWQiOiJlanpuazUwNWQxMzJyeW9tbmhieDFxbXRvaHVyYnNiYjBraWphanNrIiwibmJmIjoxNTUzNTU0ODk5LCJpc3MiOiJodHRwczpcL1wvd3d3Lm9wZW5iYW5rcHJvamVjdC5jb20iLCJleHAiOjE1NTM1NTg0OTksImlhdCI6MTU1MzU1NDg5OSwianRpIjoiMDlmODhkNWYtZWNlNi00Mzk4LThlOTktNjYxMWZhMWNkYmQ1Iiwidmlld3MiOlt7ImFjY291bnRfaWQiOiJtYXJrb19wcml2aXRlXzAxIiwiYmFua19pZCI6ImdoLjI5LnVrLngiLCJ2aWV3X2lkIjoib3duZXIifSx7ImFjY291bnRfaWQiOiJtYXJrb19wcml2aXRlXzAyIiwiYmFua19pZCI6ImdoLjI5LnVrLngiLCJ2aWV3X2lkIjoib3duZXIifV19.8cc7cBEf2NyQvJoukBCmDLT7LXYcuzTcSYLqSpbxLp4","status":"INITIATED"},"error_response_bodies":["OBP-20001: User not logged in. Authentication is required!","OBP-30001: Bank not found. Please specify a valid value for BANK_ID.","OBP-10001: Incorrect json format.","OBP-35009: Only SMS and EMAIL are supported as SCA methods. ","OBP-35013: Consents can only contain Roles that you already have access to.","OBP-35014: Consents can only contain Views that you already have access to.","OBP-30019: Consumer not found. Please specify a valid value for CONSUMER_ID.","OBP-20058: Consumer is disabled.","OBP-50200: Connector cannot return the data we requested.","OBP-50000: Unknown Error."],"tags":["Consent","Account Information Service (AIS)","PSD2"],"typed_request_body":{"type":"object","properties":{"email":{"type":"string"},"entitlements":{"type":"array","items":{"type":"object","properties":{"bank_id":{"type":"string"},"role_name":{"type":"string"}}}},"everything":{"type":"boolean"},"views":{"type":"array","items":{"type":"object","properties":{"bank_id":{"type":"string"},"view_id":{"type":"string"},"account_id":{"type":"string"}}}},"consumer_id":{"type":"string"},"time_to_live":{"type":"integer"},"valid_from":{"type":"string","format":"date-time"}}},"typed_success_response_body":{"type":"object","properties":{"consent_id":{"type":"string"},"status":{"type":"string"},"jwt":{"type":"string"}}},"is_featured":false,"special_instructions":"","specified_url":"/obp/v5.1.0/banks/BANK_ID/my/consents/EMAIL","connector_methods":["obp.sendCustomerNotification","obp.getBank","obp.getBankAccountsForUser"]},{"operation_id":"OBPv5.0.0-getConsentByConsentRequestId","implemented_by":{"version":"OBPv5.0.0","function":"getConsentByConsentRequestId"},"request_verb":"GET","request_url":"/obp/v5.0.0/consumer/consent-requests/CONSENT_REQUEST_ID/consents","summary":"Get Consent By Consent Request Id","description":"This endpoint gets the Consent By consent request id.
\nAuthentication is Mandatory
\nURL Parameters:
\nCONSENT_REQUEST_ID: 8ca8a7e4-6d02-40e3-a129-0b2bf89de9f0
\nJSON response body fields:
\n\njwt:
\n\nconsent_request_id: 8ca8a7e4-6d02-40e3-a129-0b2bf89de9f0
\n","description_markdown":"This endpoint gets the Consent By consent request id.\n\nAuthentication is Mandatory\n\n\n**URL Parameters:**\n\n[CONSENT_REQUEST_ID](/glossary#consent_request_id): 8ca8a7e4-6d02-40e3-a129-0b2bf89de9f0\n\n\n\n\n\n**JSON response body fields:**\n\n\n\n[**consent_id**](/glossary#consent_id): \n\n\n\n[**jwt**](/glossary#jwt): \n\n\n\n[**status**](/glossary#status): \n\n\n\n[consent_request_id](/glossary#consent_request_id): 8ca8a7e4-6d02-40e3-a129-0b2bf89de9f0\n\n\n","success_response_body":{"consent_id":"9d429899-24f5-42c8-8565-943ffa6a7945","jwt":"eyJhbGciOiJIUzI1NiJ9.eyJlbnRpdGxlbWVudHMiOltdLCJjcmVhdGVkQnlVc2VySWQiOiJhYjY1MzlhOS1iMTA1LTQ0ODktYTg4My0wYWQ4ZDZjNjE2NTciLCJzdWIiOiIyMWUxYzhjYy1mOTE4LTRlYWMtYjhlMy01ZTVlZWM2YjNiNGIiLCJhdWQiOiJlanpuazUwNWQxMzJyeW9tbmhieDFxbXRvaHVyYnNiYjBraWphanNrIiwibmJmIjoxNTUzNTU0ODk5LCJpc3MiOiJodHRwczpcL1wvd3d3Lm9wZW5iYW5rcHJvamVjdC5jb20iLCJleHAiOjE1NTM1NTg0OTksImlhdCI6MTU1MzU1NDg5OSwianRpIjoiMDlmODhkNWYtZWNlNi00Mzk4LThlOTktNjYxMWZhMWNkYmQ1Iiwidmlld3MiOlt7ImFjY291bnRfaWQiOiJtYXJrb19wcml2aXRlXzAxIiwiYmFua19pZCI6ImdoLjI5LnVrLngiLCJ2aWV3X2lkIjoib3duZXIifSx7ImFjY291bnRfaWQiOiJtYXJrb19wcml2aXRlXzAyIiwiYmFua19pZCI6ImdoLjI5LnVrLngiLCJ2aWV3X2lkIjoib3duZXIifV19.8cc7cBEf2NyQvJoukBCmDLT7LXYcuzTcSYLqSpbxLp4","status":"INITIATED","consent_request_id":"8ca8a7e4-6d02-40e3-a129-0b2bf89de9f0"},"error_response_bodies":["OBP-20001: User not logged in. Authentication is required!","OBP-50000: Unknown Error."],"tags":["Consent","Account Information Service (AIS)","PSD2"],"typed_success_response_body":{"type":"object","properties":{"consent_request_id":{"type":"string"},"consent_id":{"type":"string"},"status":{"type":"string"},"jwt":{"type":"string"}}},"is_featured":false,"special_instructions":"","specified_url":"/obp/v5.1.0/consumer/consent-requests/CONSENT_REQUEST_ID/consents","connector_methods":["obp.getBankAccountsForUser"]},{"operation_id":"OBPv2.0.0-getPermissionsForBankAccount","implemented_by":{"version":"OBPv2.0.0","function":"getPermissionsForBankAccount"},"request_verb":"GET","request_url":"/obp/v2.0.0/banks/BANK_ID/accounts/ACCOUNT_ID/permissions","summary":"Get access","description":"Returns the list of the permissions at BANK_ID for account ACCOUNT_ID, with each time a pair composed of the user and the views that he has access to.
\nAuthentication is Mandatory
\nand the user needs to have access to the owner view.
URL Parameters:
\nACCOUNT_ID: 8ca8a7e4-6d02-40e3-a129-0b2bf89de9f0
\nBANK_ID: gh.29.uk
\nJSON response body fields:
\n\n\n\n\ncan_add_image_url: true
\ncan_add_more_info: true
\n\n\n\n\ncan_add_tag: true
\n\n\n\ncan_delete_corporate_location: true
\ncan_delete_image: true
\n\n\ncan_delete_where_tag: true
\ncan_edit_owner_comment: true
\n\ncan_see_bank_account_bank_name: true
\ncan_see_bank_account_currency:
\n\ncan_see_bank_account_label: true
\ncan_see_bank_account_national_identifier:
\ncan_see_bank_account_number: true
\ncan_see_bank_account_owners: true
\ncan_see_bank_account_swift_bic:
\n\n\ncan_see_corporate_location: true
\ncan_see_image_url: true
\ncan_see_images: true
\n\n\ncan_see_other_account_bank_name:
\n\n\ncan_see_other_account_metadata:
\ncan_see_other_account_national_identifier: true
\ncan_see_other_account_number: true
\ncan_see_other_account_swift_bic: true
\n\n\n\n\n\ncan_see_transaction_amount: true
\n\n\ncan_see_transaction_description: true
\ncan_see_transaction_finish_date:
\n\ncan_see_transaction_other_bank_account:
\ncan_see_transaction_start_date:
\ncan_see_transaction_this_bank_account:
\n\ncan_see_url: true
\ncan_see_where_tag: true
\ndescription: This an optional field. Maximum length is 2000. It can be any characters here.
\n\n\nid: d8839721-ad8f-45dd-9f78-2080414b93f9
\nis_public: true
\n\nprovider: ETHEREUM
\n\nuser:
\n\n","description_markdown":"Returns the list of the permissions at BANK_ID for account ACCOUNT_ID, with each time a pair composed of the user and the views that he has access to.\n\nAuthentication is Mandatory\nand the user needs to have access to the owner view.\n\n\n**URL Parameters:**\n\n[ACCOUNT_ID](/glossary#Account.account_id): 8ca8a7e4-6d02-40e3-a129-0b2bf89de9f0\n\n\n\n[BANK_ID](/glossary#Bank.bank_id): gh.29.uk\n\n\n\n\n\n**JSON response body fields:**\n\n\n\n[**alias**](/glossary#alias): \n\n\n\n[**can_add_comment**](/glossary#can_add_comment): \n\n\n\n[**can_add_corporate_location**](/glossary#can_add_corporate_location): \n\n\n\n[**can_add_image**](/glossary#can_add_image): \n\n\n\n[**can_add_image_url**](/glossary#can_add_image_url): true\n\n\n\n[**can_add_more_info**](/glossary#can_add_more_info): true\n\n\n\n[**can_add_open_corporates_url**](/glossary#can_add_open_corporates_url): \n\n\n\n[**can_add_physical_location**](/glossary#can_add_physical_location): \n\n\n\n[**can_add_private_alias**](/glossary#can_add_private_alias): \n\n\n\n[**can_add_public_alias**](/glossary#can_add_public_alias): \n\n\n\n[**can_add_tag**](/glossary#can_add_tag): true\n\n\n\n[**can_add_url**](/glossary#can_add_url): \n\n\n\n[**can_add_where_tag**](/glossary#can_add_where_tag): \n\n\n\n[**can_delete_comment**](/glossary#can_delete_comment): \n\n\n\n[**can_delete_corporate_location**](/glossary#can_delete_corporate_location): true\n\n\n\n[**can_delete_image**](/glossary#can_delete_image): true\n\n\n\n[**can_delete_physical_location**](/glossary#can_delete_physical_location): \n\n\n\n[**can_delete_tag**](/glossary#can_delete_tag): \n\n\n\n[**can_delete_where_tag**](/glossary#can_delete_where_tag): true\n\n\n\n[**can_edit_owner_comment**](/glossary#can_edit_owner_comment): true\n\n\n\n[**can_see_bank_account_balance**](/glossary#can_see_bank_account_balance): \n\n\n\n[**can_see_bank_account_bank_name**](/glossary#can_see_bank_account_bank_name): true\n\n\n\n[**can_see_bank_account_currency**](/glossary#can_see_bank_account_currency): \n\n\n\n[**can_see_bank_account_iban**](/glossary#can_see_bank_account_iban): \n\n\n\n[**can_see_bank_account_label**](/glossary#can_see_bank_account_label): true\n\n\n\n[**can_see_bank_account_national_identifier**](/glossary#can_see_bank_account_national_identifier): \n\n\n\n[**can_see_bank_account_number**](/glossary#can_see_bank_account_number): true\n\n\n\n[**can_see_bank_account_owners**](/glossary#can_see_bank_account_owners): true\n\n\n\n[**can_see_bank_account_swift_bic**](/glossary#can_see_bank_account_swift_bic): \n\n\n\n[**can_see_bank_account_type**](/glossary#can_see_bank_account_type): \n\n\n\n[**can_see_comments**](/glossary#can_see_comments): \n\n\n\n[**can_see_corporate_location**](/glossary#can_see_corporate_location): true\n\n\n\n[**can_see_image_url**](/glossary#can_see_image_url): true\n\n\n\n[**can_see_images**](/glossary#can_see_images): true\n\n\n\n[**can_see_more_info**](/glossary#can_see_more_info): \n\n\n\n[**can_see_open_corporates_url**](/glossary#can_see_open_corporates_url): \n\n\n\n[**can_see_other_account_bank_name**](/glossary#can_see_other_account_bank_name): \n\n\n\n[**can_see_other_account_iban**](/glossary#can_see_other_account_iban): \n\n\n\n[**can_see_other_account_kind**](/glossary#can_see_other_account_kind): \n\n\n\n[**can_see_other_account_metadata**](/glossary#can_see_other_account_metadata): \n\n\n\n[**can_see_other_account_national_identifier**](/glossary#can_see_other_account_national_identifier): true\n\n\n\n[**can_see_other_account_number**](/glossary#can_see_other_account_number): true\n\n\n\n[**can_see_other_account_swift_bic**](/glossary#can_see_other_account_swift_bic): true\n\n\n\n[**can_see_owner_comment**](/glossary#can_see_owner_comment): \n\n\n\n[**can_see_physical_location**](/glossary#can_see_physical_location): \n\n\n\n[**can_see_private_alias**](/glossary#can_see_private_alias): \n\n\n\n[**can_see_public_alias**](/glossary#can_see_public_alias): \n\n\n\n[**can_see_tags**](/glossary#can_see_tags): \n\n\n\n[**can_see_transaction_amount**](/glossary#can_see_transaction_amount): true\n\n\n\n[**can_see_transaction_balance**](/glossary#can_see_transaction_balance): \n\n\n\n[**can_see_transaction_currency**](/glossary#can_see_transaction_currency): \n\n\n\n[**can_see_transaction_description**](/glossary#can_see_transaction_description): true\n\n\n\n[**can_see_transaction_finish_date**](/glossary#can_see_transaction_finish_date): \n\n\n\n[**can_see_transaction_metadata**](/glossary#can_see_transaction_metadata): \n\n\n\n[**can_see_transaction_other_bank_account**](/glossary#can_see_transaction_other_bank_account): \n\n\n\n[**can_see_transaction_start_date**](/glossary#can_see_transaction_start_date): \n\n\n\n[**can_see_transaction_this_bank_account**](/glossary#can_see_transaction_this_bank_account): \n\n\n\n[**can_see_transaction_type**](/glossary#can_see_transaction_type): \n\n\n\n[**can_see_url**](/glossary#can_see_url): true\n\n\n\n[**can_see_where_tag**](/glossary#can_see_where_tag): true\n\n\n\n[**description**](/glossary#description): This an optional field. Maximum length is 2000. It can be any characters here.\n\n\n\n[**display_name**](/glossary#display_name): \n\n\n\n[**hide_metadata_if_alias_used**](/glossary#hide_metadata_if_alias_used): \n\n\n\n[**id**](/glossary#id): d8839721-ad8f-45dd-9f78-2080414b93f9\n\n\n\n[**is_public**](/glossary#is_public): true\n\n\n\n[**permissions**](/glossary#permissions): \n\n\n\n[**provider**](/glossary#provider): ETHEREUM\n\n\n\n[**short_name**](/glossary#short_name): \n\n\n\n[**user**](/glossary#User): \n\n\n\n[**views**](/glossary#views): \n\n\n","example_request_body":{"jsonString":"{}"},"success_response_body":{"permissions":[{"user":{"id":"5995d6a2-01b3-423c-a173-5481df49bdaf","provider":"http://127.0.0.1:8080","display_name":"OBP"},"views":[{"id":"123","short_name":"short_name","description":"description","is_public":true,"alias":"None","hide_metadata_if_alias_used":true,"can_add_comment":true,"can_add_corporate_location":true,"can_add_image":true,"can_add_image_url":true,"can_add_more_info":true,"can_add_open_corporates_url":true,"can_add_physical_location":true,"can_add_private_alias":true,"can_add_public_alias":true,"can_add_tag":true,"can_add_url":true,"can_add_where_tag":true,"can_delete_comment":true,"can_delete_corporate_location":true,"can_delete_image":true,"can_delete_physical_location":true,"can_delete_tag":true,"can_delete_where_tag":true,"can_edit_owner_comment":true,"can_see_bank_account_balance":true,"can_see_bank_account_bank_name":true,"can_see_bank_account_currency":true,"can_see_bank_account_iban":true,"can_see_bank_account_label":true,"can_see_bank_account_national_identifier":true,"can_see_bank_account_number":true,"can_see_bank_account_owners":true,"can_see_bank_account_swift_bic":true,"can_see_bank_account_type":true,"can_see_comments":true,"can_see_corporate_location":true,"can_see_image_url":true,"can_see_images":true,"can_see_more_info":true,"can_see_open_corporates_url":true,"can_see_other_account_bank_name":true,"can_see_other_account_iban":true,"can_see_other_account_kind":true,"can_see_other_account_metadata":true,"can_see_other_account_national_identifier":true,"can_see_other_account_number":true,"can_see_other_account_swift_bic":true,"can_see_owner_comment":true,"can_see_physical_location":true,"can_see_private_alias":true,"can_see_public_alias":true,"can_see_tags":true,"can_see_transaction_amount":true,"can_see_transaction_balance":true,"can_see_transaction_currency":true,"can_see_transaction_description":true,"can_see_transaction_finish_date":true,"can_see_transaction_metadata":true,"can_see_transaction_other_bank_account":true,"can_see_transaction_start_date":true,"can_see_transaction_this_bank_account":true,"can_see_transaction_type":true,"can_see_url":true,"can_see_where_tag":true}]}]},"error_response_bodies":["OBP-20001: User not logged in. Authentication is required!","OBP-30001: Bank not found. Please specify a valid value for BANK_ID.","OBP-30003: Account not found. Please specify a valid value for ACCOUNT_ID.","OBP-50000: Unknown Error."],"tags":["View-Custom","Account","User","Entitlement"],"typed_request_body":{"type":"object","properties":{"jsonString":{"type":"string"}}},"typed_success_response_body":{"type":"object","properties":{"permissions":{"type":"array","items":{"type":"object","properties":{"views":{"type":"array","items":{"type":"object","properties":{"can_see_other_account_swift_bic":{"type":"boolean"},"can_see_where_tag":{"type":"boolean"},"can_see_url":{"type":"boolean"},"can_see_bank_account_swift_bic":{"type":"boolean"},"can_see_tags":{"type":"boolean"},"can_see_transaction_balance":{"type":"boolean"},"can_delete_corporate_location":{"type":"boolean"},"can_add_image_url":{"type":"boolean"},"can_see_public_alias":{"type":"boolean"},"can_add_comment":{"type":"boolean"},"description":{"type":"string"},"can_see_corporate_location":{"type":"boolean"},"can_see_other_account_bank_name":{"type":"boolean"},"can_see_more_info":{"type":"boolean"},"can_see_physical_location":{"type":"boolean"},"can_edit_owner_comment":{"type":"boolean"},"can_see_private_alias":{"type":"boolean"},"can_see_bank_account_balance":{"type":"boolean"},"can_add_public_alias":{"type":"boolean"},"can_see_bank_account_owners":{"type":"boolean"},"can_see_other_account_metadata":{"type":"boolean"},"can_delete_physical_location":{"type":"boolean"},"hide_metadata_if_alias_used":{"type":"boolean"},"can_see_transaction_this_bank_account":{"type":"boolean"},"can_see_image_url":{"type":"boolean"},"can_see_transaction_type":{"type":"boolean"},"can_see_images":{"type":"boolean"},"can_see_transaction_amount":{"type":"boolean"},"can_see_transaction_metadata":{"type":"boolean"},"id":{"type":"string"},"can_see_comments":{"type":"boolean"},"can_see_other_account_iban":{"type":"boolean"},"can_add_image":{"type":"boolean"},"can_see_bank_account_type":{"type":"boolean"},"can_see_other_account_kind":{"type":"boolean"},"can_see_bank_account_currency":{"type":"boolean"},"can_add_where_tag":{"type":"boolean"},"can_see_transaction_start_date":{"type":"boolean"},"can_see_bank_account_label":{"type":"boolean"},"can_add_private_alias":{"type":"boolean"},"can_see_transaction_currency":{"type":"boolean"},"can_add_more_info":{"type":"boolean"},"can_delete_comment":{"type":"boolean"},"can_see_transaction_other_bank_account":{"type":"boolean"},"can_see_bank_account_number":{"type":"boolean"},"can_add_corporate_location":{"type":"boolean"},"can_add_url":{"type":"boolean"},"short_name":{"type":"string"},"can_delete_where_tag":{"type":"boolean"},"is_public":{"type":"boolean"},"can_see_owner_comment":{"type":"boolean"},"can_see_transaction_finish_date":{"type":"boolean"},"can_see_open_corporates_url":{"type":"boolean"},"can_add_physical_location":{"type":"boolean"},"can_see_bank_account_iban":{"type":"boolean"},"can_see_other_account_national_identifier":{"type":"boolean"},"can_delete_image":{"type":"boolean"},"can_add_tag":{"type":"boolean"},"can_add_open_corporates_url":{"type":"boolean"},"can_delete_tag":{"type":"boolean"},"can_see_transaction_description":{"type":"boolean"},"can_see_bank_account_national_identifier":{"type":"boolean"},"can_see_other_account_number":{"type":"boolean"},"can_see_bank_account_bank_name":{"type":"boolean"},"alias":{"type":"string"}}}},"user":{"type":"object","properties":{"provider":{"type":"string"},"display_name":{"type":"string"},"id":{"type":"string"}}}}}}}},"is_featured":false,"special_instructions":"","specified_url":"/obp/v5.1.0/banks/BANK_ID/accounts/ACCOUNT_ID/permissions","connector_methods":["obp.checkBankAccountExists","obp.getBank","obp.getBankAccountsForUser"]},{"operation_id":"OBPv5.1.0-unlockUserByProviderAndUsername","implemented_by":{"version":"OBPv5.1.0","function":"unlockUserByProviderAndUsername"},"request_verb":"PUT","request_url":"/obp/v5.1.0/users/PROVIDER/USERNAME/lock-status","summary":"Unlock the user","description":"Unlock a User.
\n(Perhaps the user was locked due to multiple failed login attempts)
\nAuthentication is Mandatory
\nURL Parameters:
\nPROVIDER: ETHEREUM
\nUSERNAME: felixsmith
\nJSON response body fields:
\nbad_attempts_since_last_success_or_reset:
\nlast_failure_date: 2020-01-27
\nusername: felixsmith
\n","description_markdown":"Unlock a User.\n\n(Perhaps the user was locked due to multiple failed login attempts)\n\nAuthentication is Mandatory\n\n\n**URL Parameters:**\n\n[PROVIDER](/glossary#provider): ETHEREUM\n\n\n\n[USERNAME](/glossary#): felixsmith\n\n\n\n\n\n**JSON response body fields:**\n\n\n\n[**bad_attempts_since_last_success_or_reset**](/glossary#bad_attempts_since_last_success_or_reset): \n\n\n\n[**last_failure_date**](/glossary#last_failure_date): 2020-01-27\n\n\n\n[**username**](/glossary#): felixsmith\n\n\n","success_response_body":{"username":"felixsmith","bad_attempts_since_last_success_or_reset":0,"last_failure_date":"1100-01-01T01:01:01Z"},"error_response_bodies":["OBP-20001: User not logged in. Authentication is required!","OBP-20027: User not found by provider and username.","OBP-20006: User is missing one or more roles: ","OBP-50000: Unknown Error."],"tags":["User"],"typed_success_response_body":{"type":"object","properties":{"last_failure_date":{"type":"string","format":"date-time"},"bad_attempts_since_last_success_or_reset":{"type":"integer"},"username":{"type":"string"}}},"roles":[{"role":"CanUnlockUser","requires_bank_id":false}],"is_featured":false,"special_instructions":"","specified_url":"/obp/v5.1.0/users/PROVIDER/USERNAME/lock-status","connector_methods":[]},{"operation_id":"OBPv4.0.0-getUsersByEmail","implemented_by":{"version":"OBPv4.0.0","function":"getUsersByEmail"},"request_verb":"GET","request_url":"/obp/v4.0.0/users/email/EMAIL/terminator","summary":"Get Users by Email Address","description":"Get users by email address
\nAuthentication is Mandatory
\nCanGetAnyUser entitlement is required,
URL Parameters:
\n\nJSON response body fields:
\naccount_id: 8ca8a7e4-6d02-40e3-a129-0b2bf89de9f0
\nbank_id: gh.29.uk
\n\n\n\nis_deleted: is_deleted
\nis_locked: is_locked
\nlist:
\nprovider: ETHEREUM
\n\n\ntext:
\ntype:
\nuser_id: 9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1
\nusername: felixsmith
\nusers: user list
\nview_id: owner
\nagreements: agreements
\nlast_marketing_agreement_signed_date: last_marketing_agreement_signed_date
\n\n","description_markdown":"Get users by email address\n\nAuthentication is Mandatory\nCanGetAnyUser entitlement is required,\n\n\n**URL Parameters:**\n\n[EMAIL](/glossary#): felixsmith@example.com\n\n\n\n\n\n**JSON response body fields:**\n\n\n\n[**account_id**](/glossary#): 8ca8a7e4-6d02-40e3-a129-0b2bf89de9f0\n\n\n\n[**bank_id**](/glossary#): gh.29.uk\n\n\n\n[**email**](/glossary#): felixsmith@example.com\n\n\n\n[**entitlement_id**](/glossary#entitlement_id): \n\n\n\n[**entitlements**](/glossary#entitlements): \n\n\n\n[**is_deleted**](/glossary#): is_deleted\n\n\n\n[**is_locked**](/glossary#): is_locked\n\n\n\n[**list**](/glossary#list): \n\n\n\n[**provider**](/glossary#provider): ETHEREUM\n\n\n\n[**provider_id**](/glossary#provider_id): \n\n\n\n[**role_name**](/glossary#role_name): \n\n\n\n[**text**](/glossary#text): \n\n\n\n[**type**](/glossary#type): \n\n\n\n[**user_id**](/glossary#): 9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1\n\n\n\n[**username**](/glossary#): felixsmith\n\n\n\n[**users**](/glossary#users): user list\n\n\n\n[**view_id**](/glossary#): owner\n\n\n\n[agreements](/glossary#): agreements\n\n\n\n[last_marketing_agreement_signed_date](/glossary#): last_marketing_agreement_signed_date\n\n\n\n[views](/glossary#views): \n\n\n","success_response_body":{"users":[{"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"}]},"views":{"list":[{"bank_id":"gh.29.uk","account_id":"8ca8a7e4-6d02-40e3-a129-0b2bf89de9f0","view_id":"owner"}]},"agreements":[{"type":"","text":""}],"is_deleted":false,"last_marketing_agreement_signed_date":"1100-01-01T00:00:00Z","is_locked":false}]},"error_response_bodies":["OBP-20001: User not logged in. Authentication is required!","OBP-20006: User is missing one or more roles: ","OBP-20007: User not found by email.","OBP-50000: Unknown Error."],"tags":["User"],"typed_success_response_body":{"type":"object","properties":{"users":{"type":"array","items":{"type":"object","properties":{"provider":{"type":"string"},"email":{"type":"string"},"last_marketing_agreement_signed_date":{"type":"string","format":"date-time"},"provider_id":{"type":"string"},"agreements":{"type":"array","items":{"type":"object","properties":{"type":{"type":"string"},"text":{"type":"string"}}}},"entitlements":{"type":"object","properties":{"list":{"type":"array","items":{"type":"object","properties":{"role_name":{"type":"string"},"bank_id":{"type":"string"},"entitlement_id":{"type":"string"}}}}}},"is_deleted":{"type":"boolean"},"is_locked":{"type":"boolean"},"username":{"type":"string"},"views":{"type":"object","properties":{"list":{"type":"array","items":{"type":"object","properties":{"bank_id":{"type":"string"},"view_id":{"type":"string"},"account_id":{"type":"string"}}}}}},"user_id":{"type":"string"}}}}}},"roles":[{"role":"CanGetAnyUser","requires_bank_id":false}],"is_featured":false,"special_instructions":"","specified_url":"/obp/v5.1.0/users/email/EMAIL/terminator","connector_methods":[]},{"operation_id":"OBPv2.0.0-createUser","implemented_by":{"version":"OBPv2.0.0","function":"createUser"},"request_verb":"POST","request_url":"/obp/v2.0.0/users","summary":"Create User","description":"Creates OBP user.
\nNo authorisation (currently) required.
Mimics current webform to Register.
\nRequires username(email) and password.
\nReturns 409 error if username not unique.
\nMay require validation of email address.
\nAuthentication is Mandatory
\nJSON request body fields:
\n\nfirst_name: Tom
\nlast_name: Smith
\npassword: password
\nusername: felixsmith
\nJSON response body fields:
\nbank_id: gh.29.uk
\n\n\n\nlist:
\nprovider: ETHEREUM
\n\n\nuser_id: 9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1
\nusername: felixsmith
\n","description_markdown":"Creates OBP user.\n No authorisation (currently) required.\n\n Mimics current webform to Register.\n\n Requires username(email) and password.\n\n Returns 409 error if username not unique.\n\n May require validation of email address.\n\n\n\nAuthentication is Mandatory\n\n\n**JSON request body fields:**\n\n\n\n[**email**](/glossary#): felixsmith@example.com\n\n\n\n[**first_name**](/glossary#first_name): Tom\n\n\n\n[**last_name**](/glossary#last_name): Smith\n\n\n\n[**password**](/glossary#): password\n\n\n\n[**username**](/glossary#): felixsmith\n\n\n\n\n\n**JSON response body fields:**\n\n\n\n[**bank_id**](/glossary#): gh.29.uk\n\n\n\n[**email**](/glossary#): felixsmith@example.com\n\n\n\n[**entitlement_id**](/glossary#entitlement_id): \n\n\n\n[**entitlements**](/glossary#entitlements): \n\n\n\n[**list**](/glossary#list): \n\n\n\n[**provider**](/glossary#provider): ETHEREUM\n\n\n\n[**provider_id**](/glossary#provider_id): \n\n\n\n[**role_name**](/glossary#role_name): \n\n\n\n[**user_id**](/glossary#): 9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1\n\n\n\n[**username**](/glossary#): felixsmith\n\n\n","example_request_body":{"email":"felixsmith@example.com","username":"felixsmith","password":"String","first_name":"Simon","last_name":"Redfern"},"success_response_body":{"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"}]}},"error_response_bodies":["OBP-20001: User not logged in. Authentication is required!","OBP-10001: Incorrect json format.","OBP-30207: Invalid Password Format. Your password should EITHER be at least 10 characters long and contain mixed numbers and both upper and lower case letters and at least one special character, OR the length should be > 16 and <= 512.","Error occurred during user creation.","User with the same username already exists.","OBP-50000: Unknown Error."],"tags":["User","Onboarding"],"typed_request_body":{"type":"object","properties":{"email":{"type":"string"},"first_name":{"type":"string"},"password":{"type":"string"},"username":{"type":"string"},"last_name":{"type":"string"}}},"typed_success_response_body":{"type":"object","properties":{"provider":{"type":"string"},"email":{"type":"string"},"provider_id":{"type":"string"},"entitlements":{"type":"object","properties":{"list":{"type":"array","items":{"type":"object","properties":{"role_name":{"type":"string"},"bank_id":{"type":"string"},"entitlement_id":{"type":"string"}}}}}},"username":{"type":"string"},"user_id":{"type":"string"}}},"is_featured":false,"special_instructions":"","specified_url":"/obp/v5.1.0/users","connector_methods":[]},{"operation_id":"OBPv3.0.0-deleteEntitlementRequest","implemented_by":{"version":"OBPv3.0.0","function":"deleteEntitlementRequest"},"request_verb":"DELETE","request_url":"/obp/v3.0.0/entitlement-requests/ENTITLEMENT_REQUEST_ID","summary":"Delete Entitlement Request","description":"Delete the Entitlement Request specified by ENTITLEMENT_REQUEST_ID for a user specified by USER_ID
\nAuthentication is Mandatory
\nURL Parameters:
\n\nJSON response body fields:
\n","description_markdown":"Delete the Entitlement Request specified by ENTITLEMENT_REQUEST_ID for a user specified by USER_ID\n\n\nAuthentication is Mandatory\n\n\n**URL Parameters:**\n\n[ENTITLEMENT_REQUEST_ID](/glossary#entitlement_request_id): \n\n\n\n\n\n**JSON response body fields:**\n\n\n","error_response_bodies":["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: "],"tags":["Role","Entitlement","User"],"roles":[{"role":"CanDeleteEntitlementRequestsAtAnyBank","requires_bank_id":false}],"is_featured":false,"special_instructions":"","specified_url":"/obp/v5.1.0/entitlement-requests/ENTITLEMENT_REQUEST_ID","connector_methods":["obp.getBankAccountsForUser"]},{"operation_id":"OBPv5.0.0-getUserAuthContexts","implemented_by":{"version":"OBPv5.0.0","function":"getUserAuthContexts"},"request_verb":"GET","request_url":"/obp/v5.0.0/users/USER_ID/auth-context","summary":"Get User Auth Contexts","description":"Get User Auth Contexts for a User.
\nAuthentication is Mandatory
\nURL Parameters:
\nUSER_ID: 9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1
\nJSON response body fields:
\nconsumer_id: 7uy8a7e4-6d02-40e3-a129-0b2bf89de8uh
\nkey: CustomerNumber
\ntime_stamp: 1100-01-01T01:01:01.000Z
\n\nuser_id: 9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1
\nvalue: 5987953
\n","description_markdown":"Get User Auth Contexts for a User.\n\n\nAuthentication is Mandatory\n\n\n**URL Parameters:**\n\n[USER_ID](/glossary#User.user_id): 9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1\n\n\n\n\n\n**JSON response body fields:**\n\n\n\n[**consumer_id**](/glossary#): 7uy8a7e4-6d02-40e3-a129-0b2bf89de8uh\n\n\n\n[**key**](/glossary#): CustomerNumber\n\n\n\n[**time_stamp**](/glossary#): 1100-01-01T01:01:01.000Z\n\n\n\n[**user_auth_context_id**](/glossary#user_auth_context_id): \n\n\n\n[**user_id**](/glossary#): 9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1\n\n\n\n[**value**](/glossary#): 5987953\n\n\n","success_response_body":{"user_auth_context_id":"613c83ea-80f9-4560-8404-b9cd4ec42a7f","user_id":"9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1","key":"CUSTOMER_NUMBER","value":"78987432","time_stamp":"1100-01-01T00:00:00Z","consumer_id":"7uy8a7e4-6d02-40e3-a129-0b2bf89de8uh"},"error_response_bodies":["OBP-20001: User not logged in. Authentication is required!","OBP-20006: User is missing one or more roles: ","OBP-50000: Unknown Error."],"tags":["User"],"typed_success_response_body":{"type":"object","properties":{"consumer_id":{"type":"string"},"time_stamp":{"type":"string","format":"date-time"},"key":{"type":"string"},"user_auth_context_id":{"type":"string"},"value":{"type":"string"},"user_id":{"type":"string"}}},"roles":[{"role":"CanGetUserAuthContext","requires_bank_id":false}],"is_featured":false,"special_instructions":"","specified_url":"/obp/v5.1.0/users/USER_ID/auth-context","connector_methods":["obp.getUserAuthContexts","obp.getBankAccountsForUser"]},{"operation_id":"OBPv4.0.0-updateMyPersonalUserAttribute","implemented_by":{"version":"OBPv4.0.0","function":"updateMyPersonalUserAttribute"},"request_verb":"PUT","request_url":"/obp/v4.0.0/my/user/attributes/USER_ATTRIBUTE_ID","summary":"Update My Personal User Attribute","description":"Update My Personal User Attribute for current user by USER_ATTRIBUTE_ID
\nThe type field must be one of "STRING", "INTEGER", "DOUBLE" or DATE_WITH_DAY"
\nAuthentication is Mandatory
\nURL Parameters:
\nUSER_ATTRIBUTE_ID: 7uy8a7e4-6d02-40e3-a129-0b2bf89de8uh
\nJSON response body fields:
\ninsert_date: 2020-01-27
\nname: ACCOUNT_MANAGEMENT_FEE
\ntype:
\nuser_attribute_id: 7uy8a7e4-6d02-40e3-a129-0b2bf89de8uh
\nvalue: 5987953
\n","description_markdown":"Update My Personal User Attribute for current user by USER_ATTRIBUTE_ID\n\nThe type field must be one of \"STRING\", \"INTEGER\", \"DOUBLE\" or DATE_WITH_DAY\"\n\nAuthentication is Mandatory\n\n\n**URL Parameters:**\n\n[USER_ATTRIBUTE_ID](/glossary#): 7uy8a7e4-6d02-40e3-a129-0b2bf89de8uh\n\n\n\n\n\n**JSON response body fields:**\n\n\n\n[**insert_date**](/glossary#): 2020-01-27\n\n\n\n[**name**](/glossary#name): ACCOUNT_MANAGEMENT_FEE\n\n\n\n[**type**](/glossary#type): \n\n\n\n[**user_attribute_id**](/glossary#): 7uy8a7e4-6d02-40e3-a129-0b2bf89de8uh\n\n\n\n[**value**](/glossary#): 5987953\n\n\n","example_request_body":{"name":"BATTERY_LEVEL","type":"STRING","value":"90"},"success_response_body":{"user_attribute_id":"7uy8a7e4-6d02-40e3-a129-0b2bf89de8uh","name":"BATTERY_LEVEL","type":"STRING","value":"90","insert_date":"2024-03-28T00:00:42Z"},"error_response_bodies":["OBP-20001: User not logged in. Authentication is required!","OBP-10001: Incorrect json format.","OBP-50000: Unknown Error."],"tags":["User"],"typed_request_body":{"type":"object","properties":{"value":{"type":"string"},"type":{"type":"string"},"name":{"type":"string"}}},"typed_success_response_body":{"type":"object","properties":{"value":{"type":"string"},"user_attribute_id":{"type":"string"},"type":{"type":"string"},"insert_date":{"type":"string","format":"date-time"},"name":{"type":"string"}}},"roles":[],"is_featured":false,"special_instructions":"","specified_url":"/obp/v5.1.0/my/user/attributes/USER_ATTRIBUTE_ID","connector_methods":["obp.createOrUpdateUserAttribute","obp.getPersonalUserAttributes"]},{"operation_id":"OBPv4.0.0-revokeGrantUserAccessToViews","implemented_by":{"version":"OBPv4.0.0","function":"revokeGrantUserAccessToViews"},"request_verb":"PUT","request_url":"/obp/v4.0.0/banks/BANK_ID/accounts/ACCOUNT_ID/account-access","summary":"Revoke/Grant User access to View","description":"Revoke/Grant the logged in User access to the views identified by json.
\nAuthentication is Mandatory and the user needs to be an account holder or has owner view access.
\nURL Parameters:
\nACCOUNT_ID: 8ca8a7e4-6d02-40e3-a129-0b2bf89de9f0
\nBANK_ID: gh.29.uk
\nJSON response body fields:
\n\n","description_markdown":"Revoke/Grant the logged in User access to the views identified by json.\n\nAuthentication is Mandatory and the user needs to be an account holder or has owner view access.\n\n\n**URL Parameters:**\n\n[ACCOUNT_ID](/glossary#Account.account_id): 8ca8a7e4-6d02-40e3-a129-0b2bf89de9f0\n\n\n\n[BANK_ID](/glossary#Bank.bank_id): gh.29.uk\n\n\n\n\n\n**JSON response body fields:**\n\n\n\n[**revoked**](/glossary#revoked): \n\n\n","example_request_body":{"views":["ReadAccountsBasic"]},"success_response_body":{"revoked":true},"error_response_bodies":["OBP-20001: User not logged in. Authentication is required!","OBP-20047: User must have access to the owner view or must be an account holder.","OBP-10001: Incorrect json format.","OBP-20005: User not found. Please specify a valid value for USER_ID.","OBP-30252: System view not found. Please specify a valid value for VIEW_ID","OBP-30005: View not found for Account. Please specify a valid value for VIEW_ID","OBP-30064: Cannot revoke account access.","OBP-30065: Cannot find account access.","OBP-50000: Unknown Error."],"tags":["Account-Access","View-Custom","Account","User","OwnerViewRequired"],"typed_request_body":{"type":"object","properties":{"views":{"type":"array","items":{"type":"string"}}}},"typed_success_response_body":{"type":"object","properties":{"revoked":{"type":"boolean"}}},"is_featured":false,"special_instructions":"","specified_url":"/obp/v5.1.0/banks/BANK_ID/accounts/ACCOUNT_ID/account-access","connector_methods":[]},{"operation_id":"OBPv5.1.0-mtlsClientCertificateInfo","implemented_by":{"version":"OBPv5.1.0","function":"mtlsClientCertificateInfo"},"request_verb":"GET","request_url":"/obp/v5.1.0/my/mtls/certificate/current","summary":"Provide client's certificate info of a current call","description":"Provide client's certificate info of a current call specified by PSD2-CERT value at Request Header
\nAuthentication is Mandatory
\nJSON response body fields:
\nissuer_domain_name: issuer_domain_name
\nnot_after: not_after
\nnot_before: not_before
\nsubject_domain_name: subject_domain_name
\nroles: CanCreateMyUser
\nroles_info: roles_info
\n","description_markdown":"Provide client's certificate info of a current call specified by PSD2-CERT value at Request Header\n\nAuthentication is Mandatory\n\n\n**JSON response body fields:**\n\n\n\n[**issuer_domain_name**](/glossary#): issuer_domain_name\n\n\n\n[**not_after**](/glossary#): not_after\n\n\n\n[**not_before**](/glossary#): not_before\n\n\n\n[**subject_domain_name**](/glossary#): subject_domain_name\n\n\n\n[roles](/glossary#roles): CanCreateMyUser\n\n\n\n[roles_info](/glossary#): roles_info\n\n\n","success_response_body":{"subject_domain_name":"OID.2.5.4.41=VPN, EMAILADDRESS=admin@tesobe.com, CN=TESOBE CA, OU=TESOBE Operations, O=TESOBE, L=Berlin, ST=Berlin, C=DE","issuer_domain_name":"CN=localhost, O=TESOBE GmbH, ST=Berlin, C=DE","not_before":"2022-04-01T10:13:00.000Z","not_after":"2032-04-01T10:13:00.000Z","roles_info":"PEM Encoded Certificate does not contain PSD2 roles."},"error_response_bodies":["OBP-20001: User not logged in. Authentication is required!","OBP-30001: Bank not found. Please specify a valid value for BANK_ID.","OBP-50000: Unknown Error."],"tags":["Consent","Account Information Service (AIS)","PSD2"],"typed_success_response_body":{"type":"object","properties":{"roles_info":{"type":"string"},"subject_domain_name":{"type":"string"},"not_before":{"type":"string"},"issuer_domain_name":{"type":"string"},"not_after":{"type":"string"}}},"is_featured":false,"special_instructions":"","specified_url":"/obp/v5.1.0/my/mtls/certificate/current","connector_methods":["obp.getBankAccountsForUser"]},{"operation_id":"OBPv5.1.0-getUserByProviderAndUsername","implemented_by":{"version":"OBPv5.1.0","function":"getUserByProviderAndUsername"},"request_verb":"GET","request_url":"/obp/v5.1.0/users/provider/PROVIDER/username/USERNAME","summary":"Get User by USERNAME","description":"Get user by PROVIDER and USERNAME
\nAuthentication is Mandatory
\nCanGetAnyUser entitlement is required,
\nURL Parameters:
\nPROVIDER: ETHEREUM
\nUSERNAME: felixsmith
\nJSON response body fields:
\naccount_id: 8ca8a7e4-6d02-40e3-a129-0b2bf89de9f0
\nbank_id: gh.29.uk
\n\n\n\nis_deleted: is_deleted
\nis_locked: is_locked
\nlist:
\nprovider: ETHEREUM
\n\n\ntext:
\ntype:
\nuser_id: 9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1
\nusername: felixsmith
\nview_id: owner
\nagreements: agreements
\nlast_marketing_agreement_signed_date: last_marketing_agreement_signed_date
\n\n","description_markdown":"Get user by PROVIDER and USERNAME\n\nAuthentication is Mandatory\n\nCanGetAnyUser entitlement is required,\n\n\n**URL Parameters:**\n\n[PROVIDER](/glossary#provider): ETHEREUM\n\n\n\n[USERNAME](/glossary#): felixsmith\n\n\n\n\n\n**JSON response body fields:**\n\n\n\n[**account_id**](/glossary#): 8ca8a7e4-6d02-40e3-a129-0b2bf89de9f0\n\n\n\n[**bank_id**](/glossary#): gh.29.uk\n\n\n\n[**email**](/glossary#): felixsmith@example.com\n\n\n\n[**entitlement_id**](/glossary#entitlement_id): \n\n\n\n[**entitlements**](/glossary#entitlements): \n\n\n\n[**is_deleted**](/glossary#): is_deleted\n\n\n\n[**is_locked**](/glossary#): is_locked\n\n\n\n[**list**](/glossary#list): \n\n\n\n[**provider**](/glossary#provider): ETHEREUM\n\n\n\n[**provider_id**](/glossary#provider_id): \n\n\n\n[**role_name**](/glossary#role_name): \n\n\n\n[**text**](/glossary#text): \n\n\n\n[**type**](/glossary#type): \n\n\n\n[**user_id**](/glossary#): 9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1\n\n\n\n[**username**](/glossary#): felixsmith\n\n\n\n[**view_id**](/glossary#): owner\n\n\n\n[agreements](/glossary#): agreements\n\n\n\n[last_marketing_agreement_signed_date](/glossary#): last_marketing_agreement_signed_date\n\n\n\n[views](/glossary#views): \n\n\n","success_response_body":{"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"}]},"views":{"list":[{"bank_id":"gh.29.uk","account_id":"8ca8a7e4-6d02-40e3-a129-0b2bf89de9f0","view_id":"owner"}]},"agreements":[{"type":"","text":""}],"is_deleted":false,"last_marketing_agreement_signed_date":"1100-01-01T00:00:00Z","is_locked":false},"error_response_bodies":["OBP-20001: User not logged in. Authentication is required!","OBP-20006: User is missing one or more roles: ","OBP-20027: User not found by provider and username.","OBP-50000: Unknown Error."],"tags":["User"],"typed_success_response_body":{"type":"object","properties":{"provider":{"type":"string"},"email":{"type":"string"},"last_marketing_agreement_signed_date":{"type":"string","format":"date-time"},"provider_id":{"type":"string"},"agreements":{"type":"array","items":{"type":"object","properties":{"type":{"type":"string"},"text":{"type":"string"}}}},"entitlements":{"type":"object","properties":{"list":{"type":"array","items":{"type":"object","properties":{"role_name":{"type":"string"},"bank_id":{"type":"string"},"entitlement_id":{"type":"string"}}}}}},"is_deleted":{"type":"boolean"},"is_locked":{"type":"boolean"},"username":{"type":"string"},"views":{"type":"object","properties":{"list":{"type":"array","items":{"type":"object","properties":{"bank_id":{"type":"string"},"view_id":{"type":"string"},"account_id":{"type":"string"}}}}}},"user_id":{"type":"string"}}},"roles":[{"role":"CanGetAnyUser","requires_bank_id":false}],"is_featured":false,"special_instructions":"","specified_url":"/obp/v5.1.0/users/provider/PROVIDER/username/USERNAME","connector_methods":[]},{"operation_id":"OBPv5.1.0-getUserLockStatus","implemented_by":{"version":"OBPv5.1.0","function":"getUserLockStatus"},"request_verb":"GET","request_url":"/obp/v5.1.0/users/PROVIDER/USERNAME/lock-status","summary":"Get User Lock Status","description":"Get User Login Status.
\nAuthentication is Mandatory
URL Parameters:
\nPROVIDER: ETHEREUM
\nUSERNAME: felixsmith
\nJSON response body fields:
\nbad_attempts_since_last_success_or_reset:
\nlast_failure_date: 2020-01-27
\nusername: felixsmith
\n","description_markdown":"Get User Login Status.\nAuthentication is Mandatory\n\n\n**URL Parameters:**\n\n[PROVIDER](/glossary#provider): ETHEREUM\n\n\n\n[USERNAME](/glossary#): felixsmith\n\n\n\n\n\n**JSON response body fields:**\n\n\n\n[**bad_attempts_since_last_success_or_reset**](/glossary#bad_attempts_since_last_success_or_reset): \n\n\n\n[**last_failure_date**](/glossary#last_failure_date): 2020-01-27\n\n\n\n[**username**](/glossary#): felixsmith\n\n\n","success_response_body":{"username":"felixsmith","bad_attempts_since_last_success_or_reset":0,"last_failure_date":"1100-01-01T01:01:01Z"},"error_response_bodies":["OBP-20001: User not logged in. Authentication is required!","OBP-20027: User not found by provider and username.","OBP-20006: User is missing one or more roles: ","OBP-50000: Unknown Error."],"tags":["User"],"typed_success_response_body":{"type":"object","properties":{"last_failure_date":{"type":"string","format":"date-time"},"bad_attempts_since_last_success_or_reset":{"type":"integer"},"username":{"type":"string"}}},"roles":[{"role":"CanReadUserLockedStatus","requires_bank_id":false}],"is_featured":false,"special_instructions":"","specified_url":"/obp/v5.1.0/users/PROVIDER/USERNAME/lock-status","connector_methods":[]},{"operation_id":"OBPv5.1.0-getNonPersonalUserAttributes","implemented_by":{"version":"OBPv5.1.0","function":"getNonPersonalUserAttributes"},"request_verb":"GET","request_url":"/obp/v5.1.0/users/USER_ID/non-personal/attributes","summary":"Get Non Personal User Attributes","description":"Get Non Personal User Attribute for a user specified by USER_ID
\nAuthentication is Mandatory
\nURL Parameters:
\nUSER_ID: 9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1
\nJSON response body fields:
\n","description_markdown":"Get Non Personal User Attribute for a user specified by USER_ID\n\nAuthentication is Mandatory\n\n\n**URL Parameters:**\n\n[USER_ID](/glossary#User.user_id): 9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1\n\n\n\n\n\n**JSON response body fields:**\n\n\n","error_response_bodies":["OBP-20001: User not logged in. Authentication is required!","OBP-20006: User is missing one or more roles: ","OBP-50200: Connector cannot return the data we requested.","OBP-50000: Unknown Error."],"tags":["User"],"roles":[{"role":"CanGetNonPersonalUserAttributes","requires_bank_id":false}],"is_featured":false,"special_instructions":"","specified_url":"/obp/v5.1.0/users/USER_ID/non-personal/attributes","connector_methods":["obp.getNonPersonalUserAttributes","obp.getBankAccountsForUser"]},{"operation_id":"OBPv5.0.0-createUserAuthContext","implemented_by":{"version":"OBPv5.0.0","function":"createUserAuthContext"},"request_verb":"POST","request_url":"/obp/v5.0.0/users/USER_ID/auth-context","summary":"Create User Auth Context","description":"Create User Auth Context. These key value pairs will be propagated over connector to adapter. Normally used for mapping OBP user and
\nBank User/Customer.
\nAuthentication is Mandatory
URL Parameters:
\nUSER_ID: 9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1
\nJSON request body fields:
\nkey: CustomerNumber
\nvalue: 5987953
\nJSON response body fields:
\nconsumer_id: 7uy8a7e4-6d02-40e3-a129-0b2bf89de8uh
\nkey: CustomerNumber
\ntime_stamp: 1100-01-01T01:01:01.000Z
\n\nuser_id: 9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1
\nvalue: 5987953
\n","description_markdown":"Create User Auth Context. These key value pairs will be propagated over connector to adapter. Normally used for mapping OBP user and \n Bank User/Customer. \nAuthentication is Mandatory\n\n\n**URL Parameters:**\n\n[USER_ID](/glossary#User.user_id): 9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1\n\n\n\n\n\n**JSON request body fields:**\n\n\n\n[**key**](/glossary#): CustomerNumber\n\n\n\n[**value**](/glossary#): 5987953\n\n\n\n\n\n**JSON response body fields:**\n\n\n\n[**consumer_id**](/glossary#): 7uy8a7e4-6d02-40e3-a129-0b2bf89de8uh\n\n\n\n[**key**](/glossary#): CustomerNumber\n\n\n\n[**time_stamp**](/glossary#): 1100-01-01T01:01:01.000Z\n\n\n\n[**user_auth_context_id**](/glossary#user_auth_context_id): \n\n\n\n[**user_id**](/glossary#): 9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1\n\n\n\n[**value**](/glossary#): 5987953\n\n\n","example_request_body":{"key":"CUSTOMER_NUMBER","value":"78987432"},"success_response_body":{"user_auth_context_id":"613c83ea-80f9-4560-8404-b9cd4ec42a7f","user_id":"9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1","key":"CUSTOMER_NUMBER","value":"78987432","time_stamp":"1100-01-01T00:00:00Z","consumer_id":"7uy8a7e4-6d02-40e3-a129-0b2bf89de8uh"},"error_response_bodies":["OBP-20001: User not logged in. Authentication is required!","OBP-10001: Incorrect json format.","OBP-30053: Could not insert the UserAuthContext","OBP-50000: Unknown Error.","OBP-20006: User is missing one or more roles: "],"tags":["User"],"typed_request_body":{"type":"object","properties":{"key":{"type":"string"},"value":{"type":"string"}}},"typed_success_response_body":{"type":"object","properties":{"consumer_id":{"type":"string"},"time_stamp":{"type":"string","format":"date-time"},"key":{"type":"string"},"user_auth_context_id":{"type":"string"},"value":{"type":"string"},"user_id":{"type":"string"}}},"roles":[{"role":"CanCreateUserAuthContext","requires_bank_id":false}],"is_featured":false,"special_instructions":"","specified_url":"/obp/v5.1.0/users/USER_ID/auth-context","connector_methods":["obp.createUserAuthContext","obp.getBankAccountsForUser"]},{"operation_id":"OBPv4.0.0-updateConsentStatus","implemented_by":{"version":"OBPv4.0.0","function":"updateConsentStatus"},"request_verb":"PUT","request_url":"/obp/v4.0.0/banks/BANK_ID/consents/CONSENT_ID","summary":"Update Consent Status","description":"This endpoint is used to update the Status of Consent.
\nEach Consent has one of the following states: INITIATED, ACCEPTED, REJECTED, REVOKED, RECEIVED, VALID, REVOKEDBYPSU, EXPIRED, TERMINATEDBYTPP, AUTHORISED, AWAITINGAUTHORISATION.
\nAuthentication is Mandatory
\nURL Parameters:
\nBANK_ID: gh.29.uk
\n\nJSON response body fields:
\n\njwt:
\n\n","description_markdown":"This endpoint is used to update the Status of Consent.\n\nEach Consent has one of the following states: INITIATED, ACCEPTED, REJECTED, REVOKED, RECEIVED, VALID, REVOKEDBYPSU, EXPIRED, TERMINATEDBYTPP, AUTHORISED, AWAITINGAUTHORISATION.\n\nAuthentication is Mandatory\n\n\n**URL Parameters:**\n\n[BANK_ID](/glossary#Bank.bank_id): gh.29.uk\n\n\n\n[CONSENT_ID](/glossary#consent_id): \n\n\n\n\n\n**JSON response body fields:**\n\n\n\n[**consent_id**](/glossary#consent_id): \n\n\n\n[**jwt**](/glossary#jwt): \n\n\n\n[**status**](/glossary#status): \n\n\n","example_request_body":{"status":"AUTHORISED"},"success_response_body":{"consent_id":"9d429899-24f5-42c8-8565-943ffa6a7945","jwt":"eyJhbGciOiJIUzI1NiJ9.eyJlbnRpdGxlbWVudHMiOltdLCJjcmVhdGVkQnlVc2VySWQiOiJhYjY1MzlhOS1iMTA1LTQ0ODktYTg4My0wYWQ4ZDZjNjE2NTciLCJzdWIiOiIyMWUxYzhjYy1mOTE4LTRlYWMtYjhlMy01ZTVlZWM2YjNiNGIiLCJhdWQiOiJlanpuazUwNWQxMzJyeW9tbmhieDFxbXRvaHVyYnNiYjBraWphanNrIiwibmJmIjoxNTUzNTU0ODk5LCJpc3MiOiJodHRwczpcL1wvd3d3Lm9wZW5iYW5rcHJvamVjdC5jb20iLCJleHAiOjE1NTM1NTg0OTksImlhdCI6MTU1MzU1NDg5OSwianRpIjoiMDlmODhkNWYtZWNlNi00Mzk4LThlOTktNjYxMWZhMWNkYmQ1Iiwidmlld3MiOlt7ImFjY291bnRfaWQiOiJtYXJrb19wcml2aXRlXzAxIiwiYmFua19pZCI6ImdoLjI5LnVrLngiLCJ2aWV3X2lkIjoib3duZXIifSx7ImFjY291bnRfaWQiOiJtYXJrb19wcml2aXRlXzAyIiwiYmFua19pZCI6ImdoLjI5LnVrLngiLCJ2aWV3X2lkIjoib3duZXIifV19.8cc7cBEf2NyQvJoukBCmDLT7LXYcuzTcSYLqSpbxLp4","status":"AUTHORISED"},"error_response_bodies":["OBP-20001: User not logged in. Authentication is required!","OBP-30001: Bank not found. Please specify a valid value for BANK_ID.","OBP-10001: Incorrect json format.","OBP-50200: Connector cannot return the data we requested.","OBP-50000: Unknown Error."],"tags":["Consent","Account Information Service (AIS)"],"typed_request_body":{"type":"object","properties":{"status":{"type":"string"}}},"typed_success_response_body":{"type":"object","properties":{"status":{"type":"string"},"consent_id":{"type":"string"},"jwt":{"type":"string"}}},"is_featured":false,"special_instructions":"","specified_url":"/obp/v5.1.0/banks/BANK_ID/consents/CONSENT_ID","connector_methods":[]},{"operation_id":"OBPv5.0.0-createConsentByConsentRequestIdEmail","implemented_by":{"version":"OBPv5.0.0","function":"createConsentByConsentRequestIdEmail"},"request_verb":"POST","request_url":"/obp/v5.0.0/consumer/consent-requests/CONSENT_REQUEST_ID/EMAIL/consents","summary":"Create Consent By CONSENT_REQUEST_ID (EMAIL)","description":"This endpoint continues the process of creating a Consent. It starts the SCA flow which changes the status of the consent from INITIATED to ACCEPTED or REJECTED.
\nPlease note that the Consent cannot elevate the privileges logged in user already have.
Authentication is Mandatory
\nURL Parameters:
\nCONSENT_REQUEST_ID: 8ca8a7e4-6d02-40e3-a129-0b2bf89de9f0
\n\nJSON request body fields:
\nJSON response body fields:
\n\njwt:
\n\nconsent_request_id: 8ca8a7e4-6d02-40e3-a129-0b2bf89de9f0
\n","description_markdown":"This endpoint continues the process of creating a Consent. It starts the SCA flow which changes the status of the consent from INITIATED to ACCEPTED or REJECTED.\nPlease note that the Consent cannot elevate the privileges logged in user already have.\n\n\n\nAuthentication is Mandatory\n\n\n**URL Parameters:**\n\n[CONSENT_REQUEST_ID](/glossary#consent_request_id): 8ca8a7e4-6d02-40e3-a129-0b2bf89de9f0\n\n\n\n[EMAIL](/glossary#): felixsmith@example.com\n\n\n\n\n\n**JSON request body fields:**\n\n\n\n\n\n**JSON response body fields:**\n\n\n\n[**consent_id**](/glossary#consent_id): \n\n\n\n[**jwt**](/glossary#jwt): \n\n\n\n[**status**](/glossary#status): \n\n\n\n[consent_request_id](/glossary#consent_request_id): 8ca8a7e4-6d02-40e3-a129-0b2bf89de9f0\n\n\n","success_response_body":{"consent_id":"9d429899-24f5-42c8-8565-943ffa6a7945","jwt":"eyJhbGciOiJIUzI1NiJ9.eyJlbnRpdGxlbWVudHMiOltdLCJjcmVhdGVkQnlVc2VySWQiOiJhYjY1MzlhOS1iMTA1LTQ0ODktYTg4My0wYWQ4ZDZjNjE2NTciLCJzdWIiOiIyMWUxYzhjYy1mOTE4LTRlYWMtYjhlMy01ZTVlZWM2YjNiNGIiLCJhdWQiOiJlanpuazUwNWQxMzJyeW9tbmhieDFxbXRvaHVyYnNiYjBraWphanNrIiwibmJmIjoxNTUzNTU0ODk5LCJpc3MiOiJodHRwczpcL1wvd3d3Lm9wZW5iYW5rcHJvamVjdC5jb20iLCJleHAiOjE1NTM1NTg0OTksImlhdCI6MTU1MzU1NDg5OSwianRpIjoiMDlmODhkNWYtZWNlNi00Mzk4LThlOTktNjYxMWZhMWNkYmQ1Iiwidmlld3MiOlt7ImFjY291bnRfaWQiOiJtYXJrb19wcml2aXRlXzAxIiwiYmFua19pZCI6ImdoLjI5LnVrLngiLCJ2aWV3X2lkIjoib3duZXIifSx7ImFjY291bnRfaWQiOiJtYXJrb19wcml2aXRlXzAyIiwiYmFua19pZCI6ImdoLjI5LnVrLngiLCJ2aWV3X2lkIjoib3duZXIifV19.8cc7cBEf2NyQvJoukBCmDLT7LXYcuzTcSYLqSpbxLp4","status":"INITIATED","consent_request_id":"8ca8a7e4-6d02-40e3-a129-0b2bf89de9f0"},"error_response_bodies":["OBP-20001: User not logged in. Authentication is required!","OBP-30001: Bank not found. Please specify a valid value for BANK_ID.","OBP-10001: Incorrect json format.","OBP-35009: Only SMS and EMAIL are supported as SCA methods. ","OBP-35013: Consents can only contain Roles that you already have access to.","OBP-35014: Consents can only contain Views that you already have access to.","OBP-30019: Consumer not found. Please specify a valid value for CONSUMER_ID.","OBP-20058: Consumer is disabled.","OBP-50200: Connector cannot return the data we requested.","OBP-50000: Unknown Error."],"tags":["Consent","Account Information Service (AIS)","PSD2"],"typed_success_response_body":{"type":"object","properties":{"consent_request_id":{"type":"string"},"consent_id":{"type":"string"},"status":{"type":"string"},"jwt":{"type":"string"}}},"is_featured":false,"special_instructions":"","specified_url":"/obp/v5.1.0/consumer/consent-requests/CONSENT_REQUEST_ID/EMAIL/consents","connector_methods":["obp.getBankAccountByRouting","obp.sendCustomerNotification","obp.getBankAccountsForUser"]},{"operation_id":"OBPv3.0.0-getPermissionForUserForBankAccount","implemented_by":{"version":"OBPv3.0.0","function":"getPermissionForUserForBankAccount"},"request_verb":"GET","request_url":"/obp/v3.0.0/banks/BANK_ID/accounts/ACCOUNT_ID/permissions/PROVIDER/PROVIDER_ID","summary":"Get Account access for User","description":"Returns the list of the views at BANK_ID for account ACCOUNT_ID that a user identified by PROVIDER_ID at their provider PROVIDER has access to.
\nAll url parameters must be %-encoded, which is often especially relevant for USER_ID and PROVIDER.
Authentication is Mandatory
\nThe user needs to have access to the owner view.
\nURL Parameters:
\nACCOUNT_ID: 8ca8a7e4-6d02-40e3-a129-0b2bf89de9f0
\nBANK_ID: gh.29.uk
\nPROVIDER: ETHEREUM
\n\nJSON response body fields:
\n\n\n\ncan_add_counterparty: true
\n\ncan_add_image_url: true
\ncan_add_more_info: true
\n\n\n\n\ncan_add_tag: true
\ncan_add_transaction_request_to_any_account:
\ncan_add_transaction_request_to_own_account:
\n\n\ncan_create_direct_debit: true
\n\n\ncan_delete_corporate_location: true
\ncan_delete_image: true
\n\n\ncan_delete_where_tag: true
\ncan_edit_owner_comment: true
\ncan_query_available_funds: true
\n\ncan_see_bank_account_bank_name: true
\ncan_see_bank_account_credit_limit: true
\ncan_see_bank_account_currency:
\n\ncan_see_bank_account_label: true
\ncan_see_bank_account_national_identifier:
\ncan_see_bank_account_number: true
\ncan_see_bank_account_owners: true
\ncan_see_bank_account_routing_address:
\ncan_see_bank_account_routing_scheme:
\ncan_see_bank_account_swift_bic:
\n\ncan_see_bank_routing_address: true
\n\n\ncan_see_corporate_location: true
\ncan_see_image_url: true
\ncan_see_images: true
\n\n\ncan_see_other_account_bank_name:
\n\n\ncan_see_other_account_metadata:
\ncan_see_other_account_national_identifier: true
\ncan_see_other_account_number: true
\ncan_see_other_account_routing_address: true
\ncan_see_other_account_routing_scheme:
\ncan_see_other_account_swift_bic: true
\ncan_see_other_bank_routing_address:
\ncan_see_other_bank_routing_scheme:
\n\n\n\n\n\ncan_see_transaction_amount: true
\n\n\ncan_see_transaction_description: true
\ncan_see_transaction_finish_date:
\n\ncan_see_transaction_other_bank_account:
\ncan_see_transaction_start_date:
\ncan_see_transaction_this_bank_account:
\n\ncan_see_url: true
\ncan_see_where_tag: true
\ndescription: This an optional field. Maximum length is 2000. It can be any characters here.
\n\nid: d8839721-ad8f-45dd-9f78-2080414b93f9
\nis_public: true
\nis_system: true
\n\n\n\n\n","description_markdown":"Returns the list of the views at BANK_ID for account ACCOUNT_ID that a user identified by PROVIDER_ID at their provider PROVIDER has access to.\nAll url parameters must be [%-encoded](http://en.wikipedia.org/wiki/Percent-encoding), which is often especially relevant for USER_ID and PROVIDER.\n\nAuthentication is Mandatory\n\nThe user needs to have access to the owner view.\n\n\n**URL Parameters:**\n\n[ACCOUNT_ID](/glossary#Account.account_id): 8ca8a7e4-6d02-40e3-a129-0b2bf89de9f0\n\n\n\n[BANK_ID](/glossary#Bank.bank_id): gh.29.uk\n\n\n\n[PROVIDER](/glossary#provider): ETHEREUM\n\n\n\n[PROVIDER_ID](/glossary#provider_id): \n\n\n\n\n\n**JSON response body fields:**\n\n\n\n[**alias**](/glossary#alias): \n\n\n\n[**can_add_comment**](/glossary#can_add_comment): \n\n\n\n[**can_add_corporate_location**](/glossary#can_add_corporate_location): \n\n\n\n[**can_add_counterparty**](/glossary#can_add_counterparty): true\n\n\n\n[**can_add_image**](/glossary#can_add_image): \n\n\n\n[**can_add_image_url**](/glossary#can_add_image_url): true\n\n\n\n[**can_add_more_info**](/glossary#can_add_more_info): true\n\n\n\n[**can_add_open_corporates_url**](/glossary#can_add_open_corporates_url): \n\n\n\n[**can_add_physical_location**](/glossary#can_add_physical_location): \n\n\n\n[**can_add_private_alias**](/glossary#can_add_private_alias): \n\n\n\n[**can_add_public_alias**](/glossary#can_add_public_alias): \n\n\n\n[**can_add_tag**](/glossary#can_add_tag): true\n\n\n\n[**can_add_transaction_request_to_any_account**](/glossary#can_add_transaction_request_to_any_account): \n\n\n\n[**can_add_transaction_request_to_own_account**](/glossary#can_add_transaction_request_to_own_account): \n\n\n\n[**can_add_url**](/glossary#can_add_url): \n\n\n\n[**can_add_where_tag**](/glossary#can_add_where_tag): \n\n\n\n[**can_create_direct_debit**](/glossary#can_create_direct_debit): true\n\n\n\n[**can_create_standing_order**](/glossary#can_create_standing_order): \n\n\n\n[**can_delete_comment**](/glossary#can_delete_comment): \n\n\n\n[**can_delete_corporate_location**](/glossary#can_delete_corporate_location): true\n\n\n\n[**can_delete_image**](/glossary#can_delete_image): true\n\n\n\n[**can_delete_physical_location**](/glossary#can_delete_physical_location): \n\n\n\n[**can_delete_tag**](/glossary#can_delete_tag): \n\n\n\n[**can_delete_where_tag**](/glossary#can_delete_where_tag): true\n\n\n\n[**can_edit_owner_comment**](/glossary#can_edit_owner_comment): true\n\n\n\n[**can_query_available_funds**](/glossary#can_query_available_funds): true\n\n\n\n[**can_see_bank_account_balance**](/glossary#can_see_bank_account_balance): \n\n\n\n[**can_see_bank_account_bank_name**](/glossary#can_see_bank_account_bank_name): true\n\n\n\n[**can_see_bank_account_credit_limit**](/glossary#can_see_bank_account_credit_limit): true\n\n\n\n[**can_see_bank_account_currency**](/glossary#can_see_bank_account_currency): \n\n\n\n[**can_see_bank_account_iban**](/glossary#can_see_bank_account_iban): \n\n\n\n[**can_see_bank_account_label**](/glossary#can_see_bank_account_label): true\n\n\n\n[**can_see_bank_account_national_identifier**](/glossary#can_see_bank_account_national_identifier): \n\n\n\n[**can_see_bank_account_number**](/glossary#can_see_bank_account_number): true\n\n\n\n[**can_see_bank_account_owners**](/glossary#can_see_bank_account_owners): true\n\n\n\n[**can_see_bank_account_routing_address**](/glossary#can_see_bank_account_routing_address): \n\n\n\n[**can_see_bank_account_routing_scheme**](/glossary#can_see_bank_account_routing_scheme): \n\n\n\n[**can_see_bank_account_swift_bic**](/glossary#can_see_bank_account_swift_bic): \n\n\n\n[**can_see_bank_account_type**](/glossary#can_see_bank_account_type): \n\n\n\n[**can_see_bank_routing_address**](/glossary#can_see_bank_routing_address): true\n\n\n\n[**can_see_bank_routing_scheme**](/glossary#can_see_bank_routing_scheme): \n\n\n\n[**can_see_comments**](/glossary#can_see_comments): \n\n\n\n[**can_see_corporate_location**](/glossary#can_see_corporate_location): true\n\n\n\n[**can_see_image_url**](/glossary#can_see_image_url): true\n\n\n\n[**can_see_images**](/glossary#can_see_images): true\n\n\n\n[**can_see_more_info**](/glossary#can_see_more_info): \n\n\n\n[**can_see_open_corporates_url**](/glossary#can_see_open_corporates_url): \n\n\n\n[**can_see_other_account_bank_name**](/glossary#can_see_other_account_bank_name): \n\n\n\n[**can_see_other_account_iban**](/glossary#can_see_other_account_iban): \n\n\n\n[**can_see_other_account_kind**](/glossary#can_see_other_account_kind): \n\n\n\n[**can_see_other_account_metadata**](/glossary#can_see_other_account_metadata): \n\n\n\n[**can_see_other_account_national_identifier**](/glossary#can_see_other_account_national_identifier): true\n\n\n\n[**can_see_other_account_number**](/glossary#can_see_other_account_number): true\n\n\n\n[**can_see_other_account_routing_address**](/glossary#can_see_other_account_routing_address): true\n\n\n\n[**can_see_other_account_routing_scheme**](/glossary#can_see_other_account_routing_scheme): \n\n\n\n[**can_see_other_account_swift_bic**](/glossary#can_see_other_account_swift_bic): true\n\n\n\n[**can_see_other_bank_routing_address**](/glossary#can_see_other_bank_routing_address): \n\n\n\n[**can_see_other_bank_routing_scheme**](/glossary#can_see_other_bank_routing_scheme): \n\n\n\n[**can_see_owner_comment**](/glossary#can_see_owner_comment): \n\n\n\n[**can_see_physical_location**](/glossary#can_see_physical_location): \n\n\n\n[**can_see_private_alias**](/glossary#can_see_private_alias): \n\n\n\n[**can_see_public_alias**](/glossary#can_see_public_alias): \n\n\n\n[**can_see_tags**](/glossary#can_see_tags): \n\n\n\n[**can_see_transaction_amount**](/glossary#can_see_transaction_amount): true\n\n\n\n[**can_see_transaction_balance**](/glossary#can_see_transaction_balance): \n\n\n\n[**can_see_transaction_currency**](/glossary#can_see_transaction_currency): \n\n\n\n[**can_see_transaction_description**](/glossary#can_see_transaction_description): true\n\n\n\n[**can_see_transaction_finish_date**](/glossary#can_see_transaction_finish_date): \n\n\n\n[**can_see_transaction_metadata**](/glossary#can_see_transaction_metadata): \n\n\n\n[**can_see_transaction_other_bank_account**](/glossary#can_see_transaction_other_bank_account): \n\n\n\n[**can_see_transaction_start_date**](/glossary#can_see_transaction_start_date): \n\n\n\n[**can_see_transaction_this_bank_account**](/glossary#can_see_transaction_this_bank_account): \n\n\n\n[**can_see_transaction_type**](/glossary#can_see_transaction_type): \n\n\n\n[**can_see_url**](/glossary#can_see_url): true\n\n\n\n[**can_see_where_tag**](/glossary#can_see_where_tag): true\n\n\n\n[**description**](/glossary#description): This an optional field. Maximum length is 2000. It can be any characters here.\n\n\n\n[**hide_metadata_if_alias_used**](/glossary#hide_metadata_if_alias_used): \n\n\n\n[**id**](/glossary#id): d8839721-ad8f-45dd-9f78-2080414b93f9\n\n\n\n[**is_public**](/glossary#is_public): true\n\n\n\n[**is_system**](/glossary#): true\n\n\n\n[**metadata_view**](/glossary#metadata_view): \n\n\n\n[**short_name**](/glossary#short_name): \n\n\n\n[**views**](/glossary#views): \n\n\n\n[is_firehose](/glossary#is_firehose): \n\n\n","success_response_body":{"views":[{"id":"1234","short_name":"short_name","description":"description","metadata_view":"owner","is_public":true,"is_system":true,"alias":"No","hide_metadata_if_alias_used":true,"can_add_comment":true,"can_add_corporate_location":true,"can_add_image":true,"can_add_image_url":true,"can_add_more_info":true,"can_add_open_corporates_url":true,"can_add_physical_location":true,"can_add_private_alias":true,"can_add_public_alias":true,"can_add_tag":true,"can_add_url":true,"can_add_where_tag":true,"can_delete_comment":true,"can_add_counterparty":true,"can_delete_corporate_location":true,"can_delete_image":true,"can_delete_physical_location":true,"can_delete_tag":true,"can_delete_where_tag":true,"can_edit_owner_comment":true,"can_see_bank_account_balance":true,"can_query_available_funds":true,"can_see_bank_account_bank_name":true,"can_see_bank_account_currency":true,"can_see_bank_account_iban":true,"can_see_bank_account_label":true,"can_see_bank_account_national_identifier":true,"can_see_bank_account_number":true,"can_see_bank_account_owners":true,"can_see_bank_account_swift_bic":true,"can_see_bank_account_type":true,"can_see_comments":true,"can_see_corporate_location":true,"can_see_image_url":true,"can_see_images":true,"can_see_more_info":true,"can_see_open_corporates_url":true,"can_see_other_account_bank_name":true,"can_see_other_account_iban":true,"can_see_other_account_kind":true,"can_see_other_account_metadata":true,"can_see_other_account_national_identifier":true,"can_see_other_account_number":true,"can_see_other_account_swift_bic":true,"can_see_owner_comment":true,"can_see_physical_location":true,"can_see_private_alias":true,"can_see_public_alias":true,"can_see_tags":true,"can_see_transaction_amount":true,"can_see_transaction_balance":true,"can_see_transaction_currency":true,"can_see_transaction_description":true,"can_see_transaction_finish_date":true,"can_see_transaction_metadata":true,"can_see_transaction_other_bank_account":true,"can_see_transaction_start_date":true,"can_see_transaction_this_bank_account":true,"can_see_transaction_type":true,"can_see_url":true,"can_see_where_tag":true,"can_see_bank_routing_scheme":true,"can_see_bank_routing_address":true,"can_see_bank_account_routing_scheme":true,"can_see_bank_account_routing_address":true,"can_see_other_bank_routing_scheme":true,"can_see_other_bank_routing_address":true,"can_see_other_account_routing_scheme":true,"can_see_other_account_routing_address":true,"can_add_transaction_request_to_own_account":true,"can_add_transaction_request_to_any_account":true,"can_see_bank_account_credit_limit":true,"can_create_direct_debit":true,"can_create_standing_order":true}]},"error_response_bodies":["OBP-20001: User not logged in. Authentication is required!","OBP-30001: Bank not found. Please specify a valid value for BANK_ID.","OBP-30003: Account not found. Please specify a valid value for ACCOUNT_ID.","OBP-50000: Unknown Error."],"tags":["View-Custom","Account","User"],"typed_success_response_body":{"type":"object","properties":{"views":{"type":"array","items":{"type":"object","properties":{"can_see_other_account_swift_bic":{"type":"boolean"},"can_see_where_tag":{"type":"boolean"},"can_see_url":{"type":"boolean"},"can_create_direct_debit":{"type":"boolean"},"can_see_bank_account_swift_bic":{"type":"boolean"},"can_see_bank_account_routing_address":{"type":"boolean"},"can_see_tags":{"type":"boolean"},"can_see_transaction_balance":{"type":"boolean"},"can_delete_corporate_location":{"type":"boolean"},"can_add_image_url":{"type":"boolean"},"can_see_public_alias":{"type":"boolean"},"can_add_transaction_request_to_own_account":{"type":"boolean"},"can_add_comment":{"type":"boolean"},"can_see_other_bank_routing_scheme":{"type":"boolean"},"description":{"type":"string"},"can_see_corporate_location":{"type":"boolean"},"can_see_other_account_bank_name":{"type":"boolean"},"can_see_more_info":{"type":"boolean"},"can_add_counterparty":{"type":"boolean"},"is_system":{"type":"boolean"},"can_see_physical_location":{"type":"boolean"},"can_query_available_funds":{"type":"boolean"},"can_edit_owner_comment":{"type":"boolean"},"can_see_private_alias":{"type":"boolean"},"can_see_bank_account_credit_limit":{"type":"boolean"},"can_see_other_account_routing_address":{"type":"boolean"},"can_see_bank_account_balance":{"type":"boolean"},"can_add_public_alias":{"type":"boolean"},"can_see_bank_routing_scheme":{"type":"boolean"},"can_see_bank_account_owners":{"type":"boolean"},"can_see_other_account_metadata":{"type":"boolean"},"can_delete_physical_location":{"type":"boolean"},"hide_metadata_if_alias_used":{"type":"boolean"},"can_see_transaction_this_bank_account":{"type":"boolean"},"can_see_image_url":{"type":"boolean"},"can_see_transaction_type":{"type":"boolean"},"can_see_images":{"type":"boolean"},"can_see_transaction_amount":{"type":"boolean"},"metadata_view":{"type":"string"},"can_see_transaction_metadata":{"type":"boolean"},"can_see_comments":{"type":"boolean"},"can_see_other_account_iban":{"type":"boolean"},"can_add_image":{"type":"boolean"},"can_see_bank_account_routing_scheme":{"type":"boolean"},"can_see_bank_account_type":{"type":"boolean"},"can_see_other_account_kind":{"type":"boolean"},"can_see_bank_account_currency":{"type":"boolean"},"can_add_where_tag":{"type":"boolean"},"can_see_transaction_start_date":{"type":"boolean"},"can_see_bank_account_label":{"type":"boolean"},"can_add_private_alias":{"type":"boolean"},"can_see_transaction_currency":{"type":"boolean"},"can_add_more_info":{"type":"boolean"},"can_delete_comment":{"type":"boolean"},"can_create_standing_order":{"type":"boolean"},"can_see_other_bank_routing_address":{"type":"boolean"},"can_see_transaction_other_bank_account":{"type":"boolean"},"can_see_bank_account_number":{"type":"boolean"},"can_add_corporate_location":{"type":"boolean"},"alias":{"type":"string"},"can_add_url":{"type":"boolean"},"short_name":{"type":"string"},"can_delete_where_tag":{"type":"boolean"},"is_public":{"type":"boolean"},"can_see_owner_comment":{"type":"boolean"},"can_see_transaction_finish_date":{"type":"boolean"},"can_see_open_corporates_url":{"type":"boolean"},"can_add_physical_location":{"type":"boolean"},"can_see_bank_account_iban":{"type":"boolean"},"can_see_other_account_national_identifier":{"type":"boolean"},"can_see_bank_routing_address":{"type":"boolean"},"can_delete_image":{"type":"boolean"},"can_add_transaction_request_to_any_account":{"type":"boolean"},"can_add_tag":{"type":"boolean"},"id":{"type":"string"},"can_see_other_account_routing_scheme":{"type":"boolean"},"can_add_open_corporates_url":{"type":"boolean"},"can_delete_tag":{"type":"boolean"},"can_see_transaction_description":{"type":"boolean"},"can_see_bank_account_national_identifier":{"type":"boolean"},"can_see_other_account_number":{"type":"boolean"},"can_see_bank_account_bank_name":{"type":"boolean"}}}}}},"is_featured":false,"special_instructions":"","specified_url":"/obp/v5.1.0/banks/BANK_ID/accounts/ACCOUNT_ID/permissions/PROVIDER/PROVIDER_ID","connector_methods":["obp.checkBankAccountExists","obp.getBank","obp.getBankAccountsForUser"]},{"operation_id":"OBPv3.0.0-getEntitlementRequestsForCurrentUser","implemented_by":{"version":"OBPv3.0.0","function":"getEntitlementRequestsForCurrentUser"},"request_verb":"GET","request_url":"/obp/v3.0.0/my/entitlement-requests","summary":"Get Entitlement Requests for the current User","description":"Get Entitlement Requests for the current User.
\nAuthentication is Mandatory
\nJSON response body fields:
\nbank_id: gh.29.uk
\n\n\n\n\n\n\nlist:
\nprovider: ETHEREUM
\n\n\nuser:
\nuser_id: 9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1
\nusername: felixsmith
\n","description_markdown":"Get Entitlement Requests for the current User.\n\n\nAuthentication is Mandatory\n\n\n**JSON response body fields:**\n\n\n\n[**bank_id**](/glossary#): gh.29.uk\n\n\n\n[**created**](/glossary#created): \n\n\n\n[**email**](/glossary#): felixsmith@example.com\n\n\n\n[**entitlement_id**](/glossary#entitlement_id): \n\n\n\n[**entitlement_request_id**](/glossary#entitlement_request_id): \n\n\n\n[**entitlement_requests**](/glossary#entitlement_requests): \n\n\n\n[**entitlements**](/glossary#entitlements): \n\n\n\n[**list**](/glossary#list): \n\n\n\n[**provider**](/glossary#provider): ETHEREUM\n\n\n\n[**provider_id**](/glossary#provider_id): \n\n\n\n[**role_name**](/glossary#role_name): \n\n\n\n[**user**](/glossary#User): \n\n\n\n[**user_id**](/glossary#): 9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1\n\n\n\n[**username**](/glossary#): felixsmith\n\n\n","success_response_body":{"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"}]},"error_response_bodies":["OBP-20001: User not logged in. Authentication is required!","OBP-50200: Connector cannot return the data we requested.","OBP-50000: Unknown Error."],"tags":["Role","Entitlement","User"],"typed_success_response_body":{"type":"object","properties":{"entitlement_requests":{"type":"array","items":{"type":"object","properties":{"entitlement_request_id":{"type":"string"},"role_name":{"type":"string"},"bank_id":{"type":"string"},"user":{"type":"object","properties":{"provider":{"type":"string"},"email":{"type":"string"},"provider_id":{"type":"string"},"entitlements":{"type":"object","properties":{"list":{"type":"array","items":{"type":"object","properties":{"role_name":{"type":"string"},"bank_id":{"type":"string"},"entitlement_id":{"type":"string"}}}}}},"username":{"type":"string"},"user_id":{"type":"string"}}},"created":{"type":"string","format":"date-time"}}}}}},"is_featured":false,"special_instructions":"","specified_url":"/obp/v5.1.0/my/entitlement-requests","connector_methods":["obp.getBankAccountsForUser"]},{"operation_id":"OBPv3.1.0-deleteUserAuthContextById","implemented_by":{"version":"OBPv3.1.0","function":"deleteUserAuthContextById"},"request_verb":"DELETE","request_url":"/obp/v3.1.0/users/USER_ID/auth-context/USER_AUTH_CONTEXT_ID","summary":"Delete User Auth Context","description":"Delete a User AuthContext of the User specified by USER_AUTH_CONTEXT_ID.
\nAuthentication is Mandatory
\nURL Parameters:
\n\nUSER_ID: 9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1
\nJSON response body fields:
\n","description_markdown":"Delete a User AuthContext of the User specified by USER_AUTH_CONTEXT_ID.\n\n\nAuthentication is Mandatory\n\n\n**URL Parameters:**\n\n[USER_AUTH_CONTEXT_ID](/glossary#user_auth_context_id): \n\n\n\n[USER_ID](/glossary#User.user_id): 9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1\n\n\n\n\n\n**JSON response body fields:**\n\n\n","error_response_bodies":["OBP-20001: User not logged in. Authentication is required!","OBP-20006: User is missing one or more roles: ","OBP-50000: Unknown Error."],"tags":["User"],"roles":[{"role":"CanDeleteUserAuthContext","requires_bank_id":false}],"is_featured":false,"special_instructions":"","specified_url":"/obp/v5.1.0/users/USER_ID/auth-context/USER_AUTH_CONTEXT_ID","connector_methods":["obp.deleteUserAuthContextById","obp.getBankAccountsForUser"]},{"operation_id":"OBPv4.0.0-getMyPersonalUserAttributes","implemented_by":{"version":"OBPv4.0.0","function":"getMyPersonalUserAttributes"},"request_verb":"GET","request_url":"/obp/v4.0.0/my/user/attributes","summary":"Get My Personal User Attributes","description":"Get My Personal User Attributes.
\nAuthentication is Mandatory
\nJSON response body fields:
\ninsert_date: 2020-01-27
\nname: ACCOUNT_MANAGEMENT_FEE
\ntype:
\nuser_attribute_id: 7uy8a7e4-6d02-40e3-a129-0b2bf89de8uh
\nuser_attributes: user_attributes
\nvalue: 5987953
\n","description_markdown":"Get My Personal User Attributes.\n\nAuthentication is Mandatory\n\n\n**JSON response body fields:**\n\n\n\n[**insert_date**](/glossary#): 2020-01-27\n\n\n\n[**name**](/glossary#name): ACCOUNT_MANAGEMENT_FEE\n\n\n\n[**type**](/glossary#type): \n\n\n\n[**user_attribute_id**](/glossary#): 7uy8a7e4-6d02-40e3-a129-0b2bf89de8uh\n\n\n\n[**user_attributes**](/glossary#): user_attributes\n\n\n\n[**value**](/glossary#): 5987953\n\n\n","success_response_body":{"user_attributes":[{"user_attribute_id":"7uy8a7e4-6d02-40e3-a129-0b2bf89de8uh","name":"BATTERY_LEVEL","type":"STRING","value":"90","insert_date":"2024-03-28T00:00:42Z"}]},"error_response_bodies":["OBP-20001: User not logged in. Authentication is required!","OBP-50000: Unknown Error."],"tags":["User"],"typed_success_response_body":{"type":"object","properties":{"user_attributes":{"type":"array","items":{"type":"object","properties":{"value":{"type":"string"},"user_attribute_id":{"type":"string"},"type":{"type":"string"},"insert_date":{"type":"string","format":"date-time"},"name":{"type":"string"}}}}}},"is_featured":false,"special_instructions":"","specified_url":"/obp/v5.1.0/my/user/attributes","connector_methods":["obp.getPersonalUserAttributes"]},{"operation_id":"OBPv3.1.0-deleteUserAuthContexts","implemented_by":{"version":"OBPv3.1.0","function":"deleteUserAuthContexts"},"request_verb":"DELETE","request_url":"/obp/v3.1.0/users/USER_ID/auth-context","summary":"Delete User's Auth Contexts","description":"Delete the Auth Contexts of a User specified by USER_ID.
\nAuthentication is Mandatory
\nURL Parameters:
\nUSER_ID: 9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1
\nJSON response body fields:
\n","description_markdown":"Delete the Auth Contexts of a User specified by USER_ID.\n\n\nAuthentication is Mandatory\n\n\n**URL Parameters:**\n\n[USER_ID](/glossary#User.user_id): 9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1\n\n\n\n\n\n**JSON response body fields:**\n\n\n","error_response_bodies":["OBP-20001: User not logged in. Authentication is required!","OBP-20006: User is missing one or more roles: ","OBP-50000: Unknown Error."],"tags":["User"],"roles":[{"role":"CanDeleteUserAuthContext","requires_bank_id":false}],"is_featured":false,"special_instructions":"","specified_url":"/obp/v5.1.0/users/USER_ID/auth-context","connector_methods":["obp.deleteUserAuthContexts","obp.getBankAccountsForUser"]},{"operation_id":"OBPv4.0.0-getLogoutLink","implemented_by":{"version":"OBPv4.0.0","function":"getLogoutLink"},"request_verb":"GET","request_url":"/obp/v4.0.0/users/current/logout-link","summary":"Get Logout Link","description":"Get the Logout Link
\nAuthentication is Mandatory
\nJSON response body fields:
\nlink:
\n","description_markdown":"Get the Logout Link\n\nAuthentication is Mandatory\n\n\n**JSON response body fields:**\n\n\n\n[**link**](/glossary#link): \n\n\n","success_response_body":{"link":"127.0.0.1:8080/user_mgt/logout"},"error_response_bodies":["OBP-20001: User not logged in. Authentication is required!","OBP-50000: Unknown Error."],"tags":["User"],"typed_success_response_body":{"type":"object","properties":{"link":{"type":"string"}}},"is_featured":false,"special_instructions":"","specified_url":"/obp/v5.1.0/users/current/logout-link","connector_methods":[]},{"operation_id":"OBPv4.0.0-getCurrentUserId","implemented_by":{"version":"OBPv4.0.0","function":"getCurrentUserId"},"request_verb":"GET","request_url":"/obp/v4.0.0/users/current/user_id","summary":"Get User Id (Current)","description":"Get the USER_ID of the logged in user
\nAuthentication is Mandatory
\nJSON response body fields:
\nuser_id: 9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1
\n","description_markdown":"Get the USER_ID of the logged in user\n\nAuthentication is Mandatory\n\n\n**JSON response body fields:**\n\n\n\n[**user_id**](/glossary#): 9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1\n\n\n","success_response_body":{"user_id":"9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1"},"error_response_bodies":["OBP-20001: User not logged in. Authentication is required!","OBP-50000: Unknown Error."],"tags":["User"],"typed_success_response_body":{"type":"object","properties":{"user_id":{"type":"string"}}},"is_featured":false,"special_instructions":"","specified_url":"/obp/v5.1.0/users/current/user_id","connector_methods":["obp.getBankAccountsForUser"]},{"operation_id":"OBPv4.0.0-getEntitlements","implemented_by":{"version":"OBPv4.0.0","function":"getEntitlements"},"request_verb":"GET","request_url":"/obp/v4.0.0/users/USER_ID/entitlements","summary":"Get Entitlements for User","description":"Authentication is Mandatory
\nURL Parameters:
\nUSER_ID: 9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1
\nJSON response body fields:
\nbank_id: gh.29.uk
\n\nlist:
\n\nuser_id: 9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1
\n","description_markdown":"Authentication is Mandatory\n\n\n**URL Parameters:**\n\n[USER_ID](/glossary#User.user_id): 9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1\n\n\n\n\n\n**JSON response body fields:**\n\n\n\n[**bank_id**](/glossary#): gh.29.uk\n\n\n\n[**entitlement_id**](/glossary#entitlement_id): \n\n\n\n[**list**](/glossary#list): \n\n\n\n[**role_name**](/glossary#role_name): \n\n\n\n[**user_id**](/glossary#): 9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1\n\n\n","success_response_body":{"list":[{"entitlement_id":"","role_name":"","bank_id":"gh.29.uk","user_id":"9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1"}]},"error_response_bodies":["OBP-20001: User not logged in. Authentication is required!","OBP-20006: User is missing one or more roles: ","OBP-50000: Unknown Error."],"tags":["Role","Entitlement","User"],"typed_success_response_body":{"type":"object","properties":{"list":{"type":"array","items":{"type":"object","properties":{"entitlement_id":{"type":"string"},"bank_id":{"type":"string"},"role_name":{"type":"string"},"user_id":{"type":"string"}}}}}},"roles":[{"role":"CanGetEntitlementsForAnyUserAtAnyBank","requires_bank_id":false}],"is_featured":false,"special_instructions":"","specified_url":"/obp/v5.1.0/users/USER_ID/entitlements","connector_methods":[]},{"operation_id":"OBPv5.0.0-createConsentRequest","implemented_by":{"version":"OBPv5.0.0","function":"createConsentRequest"},"request_verb":"POST","request_url":"/obp/v5.0.0/consumer/consent-requests","summary":"Create Consent Request","description":"Client Authentication (mandatory)
\nIt is used when applications request an access token to access their own resources, not on behalf of a user.
\nThe client needs to authenticate themselves for this request.
\nIn case of public client we use client_id and private kew to obtain access token, otherwise we use client_id and client_secret.
\nThe obtained access token is used in the HTTP Bearer auth header of our request.
Example:
\nAuthorization: Bearer eXtneO-THbQtn3zvK_kQtXXfvOZyZFdBCItlPDbR2Bk.dOWqtXCtFX-tqGTVR0YrIjvAolPIVg7GZ-jz83y6nA0
Authentication is Optional
\nJSON request body fields:
\naccount_access: account_access
\n\n\nbank_id: gh.29.uk
\n\n\nscheme: scheme value
\nview_id: owner
\nconsumer_id: 7uy8a7e4-6d02-40e3-a129-0b2bf89de8uh
\n\n\n\n\nvalid_from: 2020-01-27
\nJSON response body fields:
\nconsent_request_id: 8ca8a7e4-6d02-40e3-a129-0b2bf89de9f0
\nconsumer_id: 7uy8a7e4-6d02-40e3-a129-0b2bf89de8uh
\npayload: payload
\n","description_markdown":"Client Authentication (mandatory)\n\nIt is used when applications request an access token to access their own resources, not on behalf of a user.\n\nThe client needs to authenticate themselves for this request.\nIn case of public client we use client_id and private kew to obtain access token, otherwise we use client_id and client_secret.\nThe obtained access token is used in the HTTP Bearer auth header of our request.\n\nExample:\nAuthorization: Bearer eXtneO-THbQtn3zvK_kQtXXfvOZyZFdBCItlPDbR2Bk.dOWqtXCtFX-tqGTVR0YrIjvAolPIVg7GZ-jz83y6nA0\n\n\n\nAuthentication is Optional\n\n\n**JSON request body fields:**\n\n\n\n[**account_access**](/glossary#): account_access\n\n\n\n[**account_routing**](/glossary#account_routing): \n\n\n\n[**address**](/glossary#address): \n\n\n\n[**bank_id**](/glossary#): gh.29.uk\n\n\n\n[**everything**](/glossary#everything): \n\n\n\n[**role_name**](/glossary#role_name): \n\n\n\n[**scheme**](/glossary#scheme): scheme value\n\n\n\n[**view_id**](/glossary#): owner\n\n\n\n[consumer_id](/glossary#): 7uy8a7e4-6d02-40e3-a129-0b2bf89de8uh\n\n\n\n[email](/glossary#): felixsmith@example.com\n\n\n\n[entitlements](/glossary#entitlements): \n\n\n\n[phone_number](/glossary#phone_number): \n\n\n\n[time_to_live](/glossary#time_to_live): \n\n\n\n[valid_from](/glossary#valid_from): 2020-01-27\n\n\n\n\n\n**JSON response body fields:**\n\n\n\n[**consent_request_id**](/glossary#consent_request_id): 8ca8a7e4-6d02-40e3-a129-0b2bf89de9f0\n\n\n\n[**consumer_id**](/glossary#): 7uy8a7e4-6d02-40e3-a129-0b2bf89de8uh\n\n\n\n[**payload**](/glossary#payload): payload\n\n\n","example_request_body":{"everything":false,"account_access":[{"account_routing":{"scheme":"AccountNumber","address":"4930396"},"view_id":"owner"}],"entitlements":[{"bank_id":"gh.29.uk","role_name":"CanGetCustomer"}],"consumer_id":"7uy8a7e4-6d02-40e3-a129-0b2bf89de8uh","email":"felixsmith@example.com","phone_number":"+44 07972 444 876","valid_from":"2024-03-28T00:00:42Z","time_to_live":3600},"success_response_body":{"consent_request_id":"8ca8a7e4-6d02-40e3-a129-0b2bf89de9f0","payload":{"everything":false,"account_access":[{"account_routing":{"scheme":"AccountNumber","address":"4930396"},"view_id":"owner"}],"phone_number":"+44 07972 444 876","valid_from":"2022-06-14T12:42:00Z","time_to_live":3600},"consumer_id":"7uy8a7e4-6d02-40e3-a129-0b2bf89de8uh"},"error_response_bodies":["OBP-30001: Bank not found. Please specify a valid value for BANK_ID.","OBP-10001: Incorrect json format.","OBP-35020: You exceeded max value of time to live of consents.","OBP-50000: Unknown Error."],"tags":["Consent","Account Information Service (AIS)","PSD2"],"typed_request_body":{"type":"object","properties":{"account_access":{"type":"array","items":{"type":"object","properties":{"view_id":{"type":"string"},"account_routing":{"type":"object","properties":{"scheme":{"type":"string"},"address":{"type":"string"}}}}}},"everything":{"type":"boolean"},"phone_number":{"type":"string"},"email":{"type":"string"},"consumer_id":{"type":"string"},"time_to_live":{"type":"integer"},"entitlements":{"type":"array","items":{"type":"object","properties":{"bank_id":{"type":"string"},"role_name":{"type":"string"}}}},"valid_from":{"type":"string","format":"date-time"}}},"typed_success_response_body":{"type":"object","properties":{"consumer_id":{"type":"string"},"payload":{"type":"object","properties":{"phone_number":{"type":"string"},"everything":{"type":"boolean"},"valid_from":{"type":"string"},"time_to_live":{"type":"integer"},"account_access":{"type":"array","items":{"type":"object","properties":{"account_routing":{"type":"object","properties":{"scheme":{"type":"string"},"address":{"type":"string"}}},"view_id":{"type":"string"}}}}}},"consent_request_id":{"type":"string"}}},"is_featured":false,"special_instructions":"","specified_url":"/obp/v5.1.0/consumer/consent-requests","connector_methods":["obp.getBankAccountsForUser"]},{"operation_id":"OBPv4.0.0-getUsers","implemented_by":{"version":"OBPv4.0.0","function":"getUsers"},"request_verb":"GET","request_url":"/obp/v4.0.0/users","summary":"Get all Users","description":"Get all users
\nAuthentication is Mandatory
\nCanGetAnyUser entitlement is required,
\nPossible custom url parameters for pagination:
\neg1:?limit=100&offset=0
\neg2:?limit=100&offset=0&sort_direction=ASC
\nJSON response body fields:
\naccount_id: 8ca8a7e4-6d02-40e3-a129-0b2bf89de9f0
\nbank_id: gh.29.uk
\n\n\n\nis_deleted: is_deleted
\nis_locked: is_locked
\nlist:
\nprovider: ETHEREUM
\n\n\ntext:
\ntype:
\nuser_id: 9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1
\nusername: felixsmith
\nusers: user list
\nview_id: owner
\nagreements: agreements
\nlast_marketing_agreement_signed_date: last_marketing_agreement_signed_date
\n\n","description_markdown":"Get all users\n\nAuthentication is Mandatory\n\nCanGetAnyUser entitlement is required,\n\n\n\nPossible custom url parameters for pagination:\n\n* limit=NUMBER ==> default value: 50\n* offset=NUMBER ==> default value: 0\n\neg1:?limit=100&offset=0\n\n\n* sort_direction=ASC/DESC ==> default value: DESC.\n\neg2:?limit=100&offset=0&sort_direction=ASC\n\n\n* locked_status (if null ignore)\n\n\n**JSON response body fields:**\n\n\n\n[**account_id**](/glossary#): 8ca8a7e4-6d02-40e3-a129-0b2bf89de9f0\n\n\n\n[**bank_id**](/glossary#): gh.29.uk\n\n\n\n[**email**](/glossary#): felixsmith@example.com\n\n\n\n[**entitlement_id**](/glossary#entitlement_id): \n\n\n\n[**entitlements**](/glossary#entitlements): \n\n\n\n[**is_deleted**](/glossary#): is_deleted\n\n\n\n[**is_locked**](/glossary#): is_locked\n\n\n\n[**list**](/glossary#list): \n\n\n\n[**provider**](/glossary#provider): ETHEREUM\n\n\n\n[**provider_id**](/glossary#provider_id): \n\n\n\n[**role_name**](/glossary#role_name): \n\n\n\n[**text**](/glossary#text): \n\n\n\n[**type**](/glossary#type): \n\n\n\n[**user_id**](/glossary#): 9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1\n\n\n\n[**username**](/glossary#): felixsmith\n\n\n\n[**users**](/glossary#users): user list\n\n\n\n[**view_id**](/glossary#): owner\n\n\n\n[agreements](/glossary#): agreements\n\n\n\n[last_marketing_agreement_signed_date](/glossary#): last_marketing_agreement_signed_date\n\n\n\n[views](/glossary#views): \n\n\n","success_response_body":{"users":[{"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"}]},"views":{"list":[{"bank_id":"gh.29.uk","account_id":"8ca8a7e4-6d02-40e3-a129-0b2bf89de9f0","view_id":"owner"}]},"agreements":[{"type":"","text":""}],"is_deleted":false,"last_marketing_agreement_signed_date":"1100-01-01T00:00:00Z","is_locked":false}]},"error_response_bodies":["OBP-20001: User not logged in. Authentication is required!","OBP-20006: User is missing one or more roles: ","OBP-50000: Unknown Error."],"tags":["User"],"typed_success_response_body":{"type":"object","properties":{"users":{"type":"array","items":{"type":"object","properties":{"provider":{"type":"string"},"email":{"type":"string"},"last_marketing_agreement_signed_date":{"type":"string","format":"date-time"},"provider_id":{"type":"string"},"agreements":{"type":"array","items":{"type":"object","properties":{"type":{"type":"string"},"text":{"type":"string"}}}},"entitlements":{"type":"object","properties":{"list":{"type":"array","items":{"type":"object","properties":{"role_name":{"type":"string"},"bank_id":{"type":"string"},"entitlement_id":{"type":"string"}}}}}},"is_deleted":{"type":"boolean"},"is_locked":{"type":"boolean"},"username":{"type":"string"},"views":{"type":"object","properties":{"list":{"type":"array","items":{"type":"object","properties":{"bank_id":{"type":"string"},"view_id":{"type":"string"},"account_id":{"type":"string"}}}}}},"user_id":{"type":"string"}}}}}},"roles":[{"role":"CanGetAnyUser","requires_bank_id":false}],"is_featured":false,"special_instructions":"","specified_url":"/obp/v5.1.0/users","connector_methods":[]},{"operation_id":"OBPv3.1.0-createConsentSms","implemented_by":{"version":"OBPv3.1.0","function":"createConsentSms"},"request_verb":"POST","request_url":"/obp/v3.1.0/banks/BANK_ID/my/consents/SMS","summary":"Create Consent (SMS)","description":"This endpoint starts the process of creating a Consent.
\nThe Consent is created in an INITIATED state.
\nA One Time Password (OTP) (AKA security challenge) is sent Out of Band (OOB) to the User via the transport defined in SCA_METHOD
\nSCA_METHOD is typically "SMS" or "EMAIL". "EMAIL" is used for testing purposes.
When the Consent is created, OBP (or a backend system) stores the challenge so it can be checked later against the value supplied by the User with the Answer Consent Challenge endpoint.
\nAn OBP Consent allows the holder of the Consent to call one or more endpoints.
\nConsents must be created and authorisied using SCA (Strong Customer Authentication).
\nThat is, Consents can be created by an authorised User via the OBP REST API but they must be confirmed via an out of band (OOB) mechanism such as a code sent to a mobile phone.
\nEach Consent has one of the following states: INITIATED, ACCEPTED, REJECTED, REVOKED, RECEIVED, VALID, REVOKEDBYPSU, EXPIRED, TERMINATEDBYTPP, AUTHORISED, AWAITINGAUTHORISATION.
\nEach Consent is bound to a consumer i.e. you need to identify yourself over request header value Consumer-Key.
\nFor example:
\nGET /obp/v4.0.0/users/current HTTP/1.1
\nHost: 127.0.0.1:8080
\nConsent-JWT: eyJhbGciOiJIUzI1NiJ9.eyJlbnRpdGxlbWVudHMiOlt7InJvbGVfbmFtZSI6IkNhbkdldEFueVVzZXIiLCJiYW5rX2lkIjoiIn
\n1dLCJjcmVhdGVkQnlVc2VySWQiOiJhYjY1MzlhOS1iMTA1LTQ0ODktYTg4My0wYWQ4ZDZjNjE2NTciLCJzdWIiOiIzNDc1MDEzZi03YmY5LTQyNj
\nEtOWUxYy0xZTdlNWZjZTJlN2UiLCJhdWQiOiI4MTVhMGVmMS00YjZhLTQyMDUtYjExMi1lNDVmZDZmNGQzYWQiLCJuYmYiOjE1ODA3NDE2NjcsIml
\nzcyI6Imh0dHA6XC9cLzEyNy4wLjAuMTo4MDgwIiwiZXhwIjoxNTgwNzQ1MjY3LCJpYXQiOjE1ODA3NDE2NjcsImp0aSI6ImJkYzVjZTk5LTE2ZTY
\ntNDM4Yi1hNjllLTU3MTAzN2RhMTg3OCIsInZpZXdzIjpbXX0.L3fEEEhdCVr3qnmyRKBBUaIQ7dk1VjiFaEBW8hUNjfg
Consumer-Key: ejznk505d132ryomnhbx1qmtohurbsbb0kijajsk
\ncache-control: no-cache
Maximum time to live of the token is specified over props value consents.max_time_to_live. In case isn't defined default value is 3600 seconds.
\nExample of POST JSON:
\n{
\n"everything": false,
\n"views": [
\n{
\n"bank_id": "GENODEM1GLS",
\n"account_id": "8ca8a7e4-6d02-40e3-a129-0b2bf89de9f0",
\n"view_id": "owner"
\n}
\n],
\n"entitlements": [
\n{
\n"bank_id": "GENODEM1GLS",
\n"role_name": "CanGetCustomer"
\n}
\n],
\n"consumer_id": "7uy8a7e4-6d02-40e3-a129-0b2bf89de8uh",
\n"email": "eveline@example.com",
\n"valid_from": "2020-02-07T08:43:34Z",
\n"time_to_live": 3600
\n}
\nPlease note that only optional fields are: consumer_id, valid_from and time_to_live.
\nIn case you omit they the default values are used:
\nconsumer_id = consumer of current user
\nvalid_from = current time
\ntime_to_live = consents.max_time_to_live
Authentication is Mandatory
\nExample 1:
\n{
\n"everything": true,
\n"views": [],
\n"entitlements": [],
\n"consumer_id": "7uy8a7e4-6d02-40e3-a129-0b2bf89de8uh",
\n"email": "eveline@example.com"
\n}
Please note that consumer_id is optional field
\nExample 2:
\n{
\n"everything": true,
\n"views": [],
\n"entitlements": [],
\n"email": "eveline@example.com"
\n}
Please note if everything=false you need to explicitly specify views and entitlements
\nExample 3:
\n{
\n"everything": false,
\n"views": [
\n{
\n"bank_id": "GENODEM1GLS",
\n"account_id": "8ca8a7e4-6d02-40e3-a129-0b2bf89de9f0",
\n"view_id": "owner"
\n}
\n],
\n"entitlements": [
\n{
\n"bank_id": "GENODEM1GLS",
\n"role_name": "CanGetCustomer"
\n}
\n],
\n"consumer_id": "7uy8a7e4-6d02-40e3-a129-0b2bf89de8uh",
\n"email": "eveline@example.com"
\n}
URL Parameters:
\nBANK_ID: gh.29.uk
\nSMS:
\nJSON request body fields:
\naccount_id: 8ca8a7e4-6d02-40e3-a129-0b2bf89de9f0
\nbank_id: gh.29.uk
\n\n\n\n\nview_id: owner
\n\nconsumer_id: 7uy8a7e4-6d02-40e3-a129-0b2bf89de8uh
\n\nvalid_from: 2020-01-27
\nJSON response body fields:
\n\njwt:
\n\n","description_markdown":"This endpoint starts the process of creating a Consent.\n\nThe Consent is created in an INITIATED state.\n\nA One Time Password (OTP) (AKA security challenge) is sent Out of Band (OOB) to the User via the transport defined in SCA_METHOD\nSCA_METHOD is typically \"SMS\" or \"EMAIL\". \"EMAIL\" is used for testing purposes.\n\nWhen the Consent is created, OBP (or a backend system) stores the challenge so it can be checked later against the value supplied by the User with the Answer Consent Challenge endpoint.\n\n\n\nAn OBP Consent allows the holder of the Consent to call one or more endpoints.\n\nConsents must be created and authorisied using SCA (Strong Customer Authentication).\n\nThat is, Consents can be created by an authorised User via the OBP REST API but they must be confirmed via an out of band (OOB) mechanism such as a code sent to a mobile phone.\n\nEach Consent has one of the following states: INITIATED, ACCEPTED, REJECTED, REVOKED, RECEIVED, VALID, REVOKEDBYPSU, EXPIRED, TERMINATEDBYTPP, AUTHORISED, AWAITINGAUTHORISATION.\n\nEach Consent is bound to a consumer i.e. you need to identify yourself over request header value Consumer-Key. \nFor example:\nGET /obp/v4.0.0/users/current HTTP/1.1\nHost: 127.0.0.1:8080\nConsent-JWT: eyJhbGciOiJIUzI1NiJ9.eyJlbnRpdGxlbWVudHMiOlt7InJvbGVfbmFtZSI6IkNhbkdldEFueVVzZXIiLCJiYW5rX2lkIjoiIn\n1dLCJjcmVhdGVkQnlVc2VySWQiOiJhYjY1MzlhOS1iMTA1LTQ0ODktYTg4My0wYWQ4ZDZjNjE2NTciLCJzdWIiOiIzNDc1MDEzZi03YmY5LTQyNj\nEtOWUxYy0xZTdlNWZjZTJlN2UiLCJhdWQiOiI4MTVhMGVmMS00YjZhLTQyMDUtYjExMi1lNDVmZDZmNGQzYWQiLCJuYmYiOjE1ODA3NDE2NjcsIml\nzcyI6Imh0dHA6XC9cLzEyNy4wLjAuMTo4MDgwIiwiZXhwIjoxNTgwNzQ1MjY3LCJpYXQiOjE1ODA3NDE2NjcsImp0aSI6ImJkYzVjZTk5LTE2ZTY\ntNDM4Yi1hNjllLTU3MTAzN2RhMTg3OCIsInZpZXdzIjpbXX0.L3fEEEhdCVr3qnmyRKBBUaIQ7dk1VjiFaEBW8hUNjfg\n\nConsumer-Key: ejznk505d132ryomnhbx1qmtohurbsbb0kijajsk\ncache-control: no-cache\n\nMaximum time to live of the token is specified over props value consents.max_time_to_live. In case isn't defined default value is 3600 seconds.\n\nExample of POST JSON:\n{\n \"everything\": false,\n \"views\": [\n {\n \"bank_id\": \"GENODEM1GLS\",\n \"account_id\": \"8ca8a7e4-6d02-40e3-a129-0b2bf89de9f0\",\n \"view_id\": \"owner\"\n }\n ],\n \"entitlements\": [\n {\n \"bank_id\": \"GENODEM1GLS\",\n \"role_name\": \"CanGetCustomer\"\n }\n ],\n \"consumer_id\": \"7uy8a7e4-6d02-40e3-a129-0b2bf89de8uh\",\n \"email\": \"eveline@example.com\",\n \"valid_from\": \"2020-02-07T08:43:34Z\",\n \"time_to_live\": 3600\n}\nPlease note that only optional fields are: consumer_id, valid_from and time_to_live. \nIn case you omit they the default values are used:\nconsumer_id = consumer of current user\nvalid_from = current time\ntime_to_live = consents.max_time_to_live\n\n \n\nAuthentication is Mandatory\n\nExample 1: \n{\n \"everything\": true,\n \"views\": [],\n \"entitlements\": [],\n \"consumer_id\": \"7uy8a7e4-6d02-40e3-a129-0b2bf89de8uh\",\n \"email\": \"eveline@example.com\"\n}\n\nPlease note that consumer_id is optional field\nExample 2:\n{\n \"everything\": true,\n \"views\": [],\n \"entitlements\": [],\n \"email\": \"eveline@example.com\"\n}\n\nPlease note if everything=false you need to explicitly specify views and entitlements\nExample 3:\n{\n \"everything\": false,\n \"views\": [\n {\n \"bank_id\": \"GENODEM1GLS\",\n \"account_id\": \"8ca8a7e4-6d02-40e3-a129-0b2bf89de9f0\",\n \"view_id\": \"owner\"\n }\n ],\n \"entitlements\": [\n {\n \"bank_id\": \"GENODEM1GLS\",\n \"role_name\": \"CanGetCustomer\"\n }\n ],\n \"consumer_id\": \"7uy8a7e4-6d02-40e3-a129-0b2bf89de8uh\",\n \"email\": \"eveline@example.com\"\n}\n\n\n**URL Parameters:**\n\n[BANK_ID](/glossary#Bank.bank_id): gh.29.uk\n\n\n\n[SMS](/glossary#sms): \n\n\n\n\n\n**JSON request body fields:**\n\n\n\n[**account_id**](/glossary#): 8ca8a7e4-6d02-40e3-a129-0b2bf89de9f0\n\n\n\n[**bank_id**](/glossary#): gh.29.uk\n\n\n\n[**entitlements**](/glossary#entitlements): \n\n\n\n[**everything**](/glossary#everything): \n\n\n\n[**phone_number**](/glossary#phone_number): \n\n\n\n[**role_name**](/glossary#role_name): \n\n\n\n[**view_id**](/glossary#): owner\n\n\n\n[**views**](/glossary#views): \n\n\n\n[consumer_id](/glossary#): 7uy8a7e4-6d02-40e3-a129-0b2bf89de8uh\n\n\n\n[time_to_live](/glossary#time_to_live): \n\n\n\n[valid_from](/glossary#valid_from): 2020-01-27\n\n\n\n\n\n**JSON response body fields:**\n\n\n\n[**consent_id**](/glossary#consent_id): \n\n\n\n[**jwt**](/glossary#jwt): \n\n\n\n[**status**](/glossary#status): \n\n\n","example_request_body":{"everything":false,"views":[{"bank_id":"gh.29.uk","account_id":"8ca8a7e4-6d02-40e3-a129-0b2bf89de9f0","view_id":"owner"}],"entitlements":[{"bank_id":"gh.29.uk","role_name":"CanGetCustomer"}],"consumer_id":"7uy8a7e4-6d02-40e3-a129-0b2bf89de8uh","phone_number":"+44 07972 444 876","valid_from":"2024-03-28T00:00:42Z","time_to_live":3600},"success_response_body":{"consent_id":"9d429899-24f5-42c8-8565-943ffa6a7945","jwt":"eyJhbGciOiJIUzI1NiJ9.eyJlbnRpdGxlbWVudHMiOltdLCJjcmVhdGVkQnlVc2VySWQiOiJhYjY1MzlhOS1iMTA1LTQ0ODktYTg4My0wYWQ4ZDZjNjE2NTciLCJzdWIiOiIyMWUxYzhjYy1mOTE4LTRlYWMtYjhlMy01ZTVlZWM2YjNiNGIiLCJhdWQiOiJlanpuazUwNWQxMzJyeW9tbmhieDFxbXRvaHVyYnNiYjBraWphanNrIiwibmJmIjoxNTUzNTU0ODk5LCJpc3MiOiJodHRwczpcL1wvd3d3Lm9wZW5iYW5rcHJvamVjdC5jb20iLCJleHAiOjE1NTM1NTg0OTksImlhdCI6MTU1MzU1NDg5OSwianRpIjoiMDlmODhkNWYtZWNlNi00Mzk4LThlOTktNjYxMWZhMWNkYmQ1Iiwidmlld3MiOlt7ImFjY291bnRfaWQiOiJtYXJrb19wcml2aXRlXzAxIiwiYmFua19pZCI6ImdoLjI5LnVrLngiLCJ2aWV3X2lkIjoib3duZXIifSx7ImFjY291bnRfaWQiOiJtYXJrb19wcml2aXRlXzAyIiwiYmFua19pZCI6ImdoLjI5LnVrLngiLCJ2aWV3X2lkIjoib3duZXIifV19.8cc7cBEf2NyQvJoukBCmDLT7LXYcuzTcSYLqSpbxLp4","status":"INITIATED"},"error_response_bodies":["OBP-20001: User not logged in. Authentication is required!","OBP-30001: Bank not found. Please specify a valid value for BANK_ID.","OBP-10001: Incorrect json format.","OBP-35009: Only SMS and EMAIL are supported as SCA methods. ","OBP-35013: Consents can only contain Roles that you already have access to.","OBP-35014: Consents can only contain Views that you already have access to.","OBP-30019: Consumer not found. Please specify a valid value for CONSUMER_ID.","OBP-20058: Consumer is disabled.","OBP-00010: Missing props value at this API instance - ","OBP-35010: SMS server is not working or SMS server can not send the message to the phone number:","OBP-50200: Connector cannot return the data we requested.","OBP-50000: Unknown Error."],"tags":["Consent","Account Information Service (AIS)","PSD2"],"typed_request_body":{"type":"object","properties":{"entitlements":{"type":"array","items":{"type":"object","properties":{"bank_id":{"type":"string"},"role_name":{"type":"string"}}}},"phone_number":{"type":"string"},"everything":{"type":"boolean"},"views":{"type":"array","items":{"type":"object","properties":{"bank_id":{"type":"string"},"view_id":{"type":"string"},"account_id":{"type":"string"}}}},"consumer_id":{"type":"string"},"time_to_live":{"type":"integer"},"valid_from":{"type":"string","format":"date-time"}}},"typed_success_response_body":{"type":"object","properties":{"consent_id":{"type":"string"},"status":{"type":"string"},"jwt":{"type":"string"}}},"is_featured":false,"special_instructions":"","specified_url":"/obp/v5.1.0/banks/BANK_ID/my/consents/SMS","connector_methods":["obp.sendCustomerNotification","obp.getBank","obp.getBankAccountsForUser"]},{"operation_id":"OBPv5.0.0-createAccount","implemented_by":{"version":"OBPv5.0.0","function":"createAccount"},"request_verb":"PUT","request_url":"/obp/v5.0.0/banks/BANK_ID/accounts/ACCOUNT_ID","summary":"Create Account","description":"Create Account at bank specified by BANK_ID with Id specified by ACCOUNT_ID.
\nThe User can create an Account for themself - or - the User that has the USER_ID specified in the POST body.
\nIf the PUT body USER_ID is specified, the logged in user must have the Role canCreateAccount. Once created, the Account will be owned by the User specified by USER_ID.
\nIf the PUT body USER_ID is not specified, the account will be owned by the logged in User.
\nThe 'product_code' field SHOULD be a product_code from Product.
\nIf the 'product_code' matches a product_code from Product, account attributes will be created that match the Product Attributes.
Note: The Amount MUST be zero.
\nAuthentication is Mandatory
\nURL Parameters:
\nACCOUNT_ID: 8ca8a7e4-6d02-40e3-a129-0b2bf89de9f0
\nBANK_ID: gh.29.uk
\nJSON response body fields:
\n\n\naccount_id: 8ca8a7e4-6d02-40e3-a129-0b2bf89de9f0
\n\n\namount: 10.12
\nbalance: 10
\nbranch_id: DERBY6
\ncurrency: EUR
\nlabel: My Account
\nname: ACCOUNT_MANAGEMENT_FEE
\nproduct_code: 1234BW
\nscheme: scheme value
\ntype:
\nuser_id: 9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1
\nvalue: 5987953
\nproduct_instance_code: product_instance_code
\n","description_markdown":"Create Account at bank specified by BANK_ID with Id specified by ACCOUNT_ID.\n\nThe User can create an Account for themself - or - the User that has the USER_ID specified in the POST body.\n\nIf the PUT body USER_ID *is* specified, the logged in user must have the Role canCreateAccount. Once created, the Account will be owned by the User specified by USER_ID.\n\nIf the PUT body USER_ID is *not* specified, the account will be owned by the logged in User.\n\nThe 'product_code' field SHOULD be a product_code from Product.\nIf the 'product_code' matches a product_code from Product, account attributes will be created that match the Product Attributes.\n\nNote: The Amount MUST be zero.\n\nAuthentication is Mandatory\n\n\n**URL Parameters:**\n\n[ACCOUNT_ID](/glossary#Account.account_id): 8ca8a7e4-6d02-40e3-a129-0b2bf89de9f0\n\n\n\n[BANK_ID](/glossary#Bank.bank_id): gh.29.uk\n\n\n\n\n\n**JSON response body fields:**\n\n\n\n[**account_attribute_id**](/glossary#account_attribute_id): \n\n\n\n[**account_attributes**](/glossary#account_attributes): \n\n\n\n[**account_id**](/glossary#): 8ca8a7e4-6d02-40e3-a129-0b2bf89de9f0\n\n\n\n[**account_routings**](/glossary#account_routings): \n\n\n\n[**address**](/glossary#address): \n\n\n\n[**amount**](/glossary#): 10.12\n\n\n\n[**balance**](/glossary#balance): 10\n\n\n\n[**branch_id**](/glossary#): DERBY6\n\n\n\n[**currency**](/glossary#): EUR\n\n\n\n[**label**](/glossary#): My Account\n\n\n\n[**name**](/glossary#name): ACCOUNT_MANAGEMENT_FEE\n\n\n\n[**product_code**](/glossary#product_code): 1234BW\n\n\n\n[**scheme**](/glossary#scheme): scheme value\n\n\n\n[**type**](/glossary#type): \n\n\n\n[**user_id**](/glossary#): 9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1\n\n\n\n[**value**](/glossary#): 5987953\n\n\n\n[product_instance_code](/glossary#): product_instance_code\n\n\n","example_request_body":{"user_id":"9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1","label":"My Account","product_code":"1234BW","balance":{"currency":"EUR","amount":"0"},"branch_id":"DERBY6","account_routings":[{"scheme":"AccountNumber","address":"4930396"}]},"success_response_body":{"account_id":"8ca8a7e4-6d02-40e3-a129-0b2bf89de9f0","user_id":"9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1","label":"My Account","product_code":"1234BW","balance":{"currency":"EUR","amount":"0"},"branch_id":"DERBY6","account_routings":[{"scheme":"AccountNumber","address":"4930396"}],"account_attributes":[{"product_code":"1234BW","account_attribute_id":"613c83ea-80f9-4560-8404-b9cd4ec42a7f","name":"OVERDRAFT_START_DATE","type":"DATE_WITH_DAY","value":"2012-04-23","product_instance_code":"LKJL98769F"}]},"error_response_bodies":["OBP-10001: Incorrect json format.","OBP-30001: Bank not found. Please specify a valid value for BANK_ID.","OBP-20001: User not logged in. Authentication is required!","OBP-30107: Invalid User Id.","OBP-30110: Invalid Account Id. The ACCOUNT_ID should only contain 0-9/a-z/A-Z/'-'/'.'/'_', the length should be smaller than 255.","OBP-30111: Invalid Bank Id. The BANK_ID should only contain 0-9/a-z/A-Z/'-'/'.'/'_', the length should be smaller than 255.","OBP-20005: User not found. Please specify a valid value for USER_ID.","OBP-20006: User is missing one or more roles: ","OBP-30106: Invalid Balance Amount.","OBP-30112: Invalid Number. Initial balance must be a number, e.g 1000.00","OBP-30109: Initial Balance of Account must be Zero (0).","OBP-30105: Invalid Balance Currency.","OBP-30208: Account_ID already exists at the Bank.","OBP-50000: Unknown Error."],"tags":["Account","Onboarding"],"typed_request_body":{"type":"object","properties":{"user_id":{"type":"string"},"product_code":{"type":"string"},"account_routings":{"type":"array","items":{"type":"object","properties":{"scheme":{"type":"string"},"address":{"type":"string"}}}},"balance":{"type":"object","properties":{"currency":{"type":"string"},"amount":{"type":"string"}}},"label":{"type":"string"},"branch_id":{"type":"string"}}},"typed_success_response_body":{"type":"object","properties":{"product_code":{"type":"string"},"label":{"type":"string"},"balance":{"type":"object","properties":{"currency":{"type":"string"},"amount":{"type":"string"}}},"account_attributes":{"type":"array","items":{"type":"object","properties":{"value":{"type":"string"},"product_code":{"type":"string"},"account_attribute_id":{"type":"string"},"product_instance_code":{"type":"string"},"type":{"type":"string"},"name":{"type":"string"}}}},"account_routings":{"type":"array","items":{"type":"object","properties":{"scheme":{"type":"string"},"address":{"type":"string"}}}},"branch_id":{"type":"string"},"account_id":{"type":"string"},"user_id":{"type":"string"}}},"roles":[{"role":"CanCreateAccount","requires_bank_id":true}],"is_featured":false,"special_instructions":"","specified_url":"/obp/v5.1.0/banks/BANK_ID/accounts/ACCOUNT_ID","connector_methods":["obp.getBankAccountsForUser","obp.createAccountAttributes","obp.getProductAttributesByBankAndCode","obp.createBankAccount","obp.getBank","obp.checkBankAccountExists"]},{"operation_id":"OBPv5.1.0-selfRevokeConsent","implemented_by":{"version":"OBPv5.1.0","function":"selfRevokeConsent"},"request_verb":"DELETE","request_url":"/obp/v5.1.0/my/consent/current","summary":"Revoke Consent used in the Current Call","description":"Revoke Consent specified by Consent-Id at Request Header
\nThere are a few reasons you might need to revoke an application’s access to a user’s account:
\n- The user explicitly wishes to revoke the application’s access
\n- You as the service provider have determined an application is compromised or malicious, and want to disable it
\n- etc.
OBP as a resource server stores access tokens in a database, then it is relatively easy to revoke some token that belongs to a particular user.
\nThe status of the token is changed to "REVOKED" so the next time the revoked client makes a request, their token will fail to validate.
Authentication is Mandatory
\nJSON response body fields:
\n\njwt:
\n\n","description_markdown":"Revoke Consent specified by Consent-Id at Request Header\n\nThere are a few reasons you might need to revoke an application’s access to a user’s account:\n - The user explicitly wishes to revoke the application’s access\n - You as the service provider have determined an application is compromised or malicious, and want to disable it\n - etc.\n\nOBP as a resource server stores access tokens in a database, then it is relatively easy to revoke some token that belongs to a particular user.\nThe status of the token is changed to \"REVOKED\" so the next time the revoked client makes a request, their token will fail to validate.\n\nAuthentication is Mandatory\n\n\n**JSON response body fields:**\n\n\n\n[**consent_id**](/glossary#consent_id): \n\n\n\n[**jwt**](/glossary#jwt): \n\n\n\n[**status**](/glossary#status): \n\n\n","success_response_body":{"consent_id":"9d429899-24f5-42c8-8565-943ffa6a7945","jwt":"eyJhbGciOiJIUzI1NiJ9.eyJlbnRpdGxlbWVudHMiOltdLCJjcmVhdGVkQnlVc2VySWQiOiJhYjY1MzlhOS1iMTA1LTQ0ODktYTg4My0wYWQ4ZDZjNjE2NTciLCJzdWIiOiIyMWUxYzhjYy1mOTE4LTRlYWMtYjhlMy01ZTVlZWM2YjNiNGIiLCJhdWQiOiJlanpuazUwNWQxMzJyeW9tbmhieDFxbXRvaHVyYnNiYjBraWphanNrIiwibmJmIjoxNTUzNTU0ODk5LCJpc3MiOiJodHRwczpcL1wvd3d3Lm9wZW5iYW5rcHJvamVjdC5jb20iLCJleHAiOjE1NTM1NTg0OTksImlhdCI6MTU1MzU1NDg5OSwianRpIjoiMDlmODhkNWYtZWNlNi00Mzk4LThlOTktNjYxMWZhMWNkYmQ1Iiwidmlld3MiOlt7ImFjY291bnRfaWQiOiJtYXJrb19wcml2aXRlXzAxIiwiYmFua19pZCI6ImdoLjI5LnVrLngiLCJ2aWV3X2lkIjoib3duZXIifSx7ImFjY291bnRfaWQiOiJtYXJrb19wcml2aXRlXzAyIiwiYmFua19pZCI6ImdoLjI5LnVrLngiLCJ2aWV3X2lkIjoib3duZXIifV19.8cc7cBEf2NyQvJoukBCmDLT7LXYcuzTcSYLqSpbxLp4","status":"REJECTED"},"error_response_bodies":["OBP-20001: User not logged in. Authentication is required!","OBP-30001: Bank not found. Please specify a valid value for BANK_ID.","OBP-50000: Unknown Error."],"tags":["Consent","Account Information Service (AIS)","PSD2"],"typed_success_response_body":{"type":"object","properties":{"status":{"type":"string"},"consent_id":{"type":"string"},"jwt":{"type":"string"}}},"is_featured":false,"special_instructions":"","specified_url":"/obp/v5.1.0/my/consent/current","connector_methods":["obp.getBankAccountsForUser"]},{"operation_id":"OBPv3.1.0-answerConsentChallenge","implemented_by":{"version":"OBPv3.1.0","function":"answerConsentChallenge"},"request_verb":"POST","request_url":"/obp/v3.1.0/banks/BANK_ID/consents/CONSENT_ID/challenge","summary":"Answer Consent Challenge","description":"An OBP Consent allows the holder of the Consent to call one or more endpoints.
\nConsents must be created and authorisied using SCA (Strong Customer Authentication).
\nThat is, Consents can be created by an authorised User via the OBP REST API but they must be confirmed via an out of band (OOB) mechanism such as a code sent to a mobile phone.
\nEach Consent has one of the following states: INITIATED, ACCEPTED, REJECTED, REVOKED, RECEIVED, VALID, REVOKEDBYPSU, EXPIRED, TERMINATEDBYTPP, AUTHORISED, AWAITINGAUTHORISATION.
\nEach Consent is bound to a consumer i.e. you need to identify yourself over request header value Consumer-Key.
\nFor example:
\nGET /obp/v4.0.0/users/current HTTP/1.1
\nHost: 127.0.0.1:8080
\nConsent-JWT: eyJhbGciOiJIUzI1NiJ9.eyJlbnRpdGxlbWVudHMiOlt7InJvbGVfbmFtZSI6IkNhbkdldEFueVVzZXIiLCJiYW5rX2lkIjoiIn
\n1dLCJjcmVhdGVkQnlVc2VySWQiOiJhYjY1MzlhOS1iMTA1LTQ0ODktYTg4My0wYWQ4ZDZjNjE2NTciLCJzdWIiOiIzNDc1MDEzZi03YmY5LTQyNj
\nEtOWUxYy0xZTdlNWZjZTJlN2UiLCJhdWQiOiI4MTVhMGVmMS00YjZhLTQyMDUtYjExMi1lNDVmZDZmNGQzYWQiLCJuYmYiOjE1ODA3NDE2NjcsIml
\nzcyI6Imh0dHA6XC9cLzEyNy4wLjAuMTo4MDgwIiwiZXhwIjoxNTgwNzQ1MjY3LCJpYXQiOjE1ODA3NDE2NjcsImp0aSI6ImJkYzVjZTk5LTE2ZTY
\ntNDM4Yi1hNjllLTU3MTAzN2RhMTg3OCIsInZpZXdzIjpbXX0.L3fEEEhdCVr3qnmyRKBBUaIQ7dk1VjiFaEBW8hUNjfg
Consumer-Key: ejznk505d132ryomnhbx1qmtohurbsbb0kijajsk
\ncache-control: no-cache
Maximum time to live of the token is specified over props value consents.max_time_to_live. In case isn't defined default value is 3600 seconds.
\nExample of POST JSON:
\n{
\n"everything": false,
\n"views": [
\n{
\n"bank_id": "GENODEM1GLS",
\n"account_id": "8ca8a7e4-6d02-40e3-a129-0b2bf89de9f0",
\n"view_id": "owner"
\n}
\n],
\n"entitlements": [
\n{
\n"bank_id": "GENODEM1GLS",
\n"role_name": "CanGetCustomer"
\n}
\n],
\n"consumer_id": "7uy8a7e4-6d02-40e3-a129-0b2bf89de8uh",
\n"email": "eveline@example.com",
\n"valid_from": "2020-02-07T08:43:34Z",
\n"time_to_live": 3600
\n}
\nPlease note that only optional fields are: consumer_id, valid_from and time_to_live.
\nIn case you omit they the default values are used:
\nconsumer_id = consumer of current user
\nvalid_from = current time
\ntime_to_live = consents.max_time_to_live
This endpoint is used to confirm a Consent previously created.
\nThe User must supply a code that was sent out of band (OOB) for example via an SMS.
\nAuthentication is Mandatory
\nURL Parameters:
\nBANK_ID: gh.29.uk
\n\nJSON request body fields:
\n\nJSON response body fields:
\n\njwt:
\n\n","description_markdown":"An OBP Consent allows the holder of the Consent to call one or more endpoints.\n\nConsents must be created and authorisied using SCA (Strong Customer Authentication).\n\nThat is, Consents can be created by an authorised User via the OBP REST API but they must be confirmed via an out of band (OOB) mechanism such as a code sent to a mobile phone.\n\nEach Consent has one of the following states: INITIATED, ACCEPTED, REJECTED, REVOKED, RECEIVED, VALID, REVOKEDBYPSU, EXPIRED, TERMINATEDBYTPP, AUTHORISED, AWAITINGAUTHORISATION.\n\nEach Consent is bound to a consumer i.e. you need to identify yourself over request header value Consumer-Key. \nFor example:\nGET /obp/v4.0.0/users/current HTTP/1.1\nHost: 127.0.0.1:8080\nConsent-JWT: eyJhbGciOiJIUzI1NiJ9.eyJlbnRpdGxlbWVudHMiOlt7InJvbGVfbmFtZSI6IkNhbkdldEFueVVzZXIiLCJiYW5rX2lkIjoiIn\n1dLCJjcmVhdGVkQnlVc2VySWQiOiJhYjY1MzlhOS1iMTA1LTQ0ODktYTg4My0wYWQ4ZDZjNjE2NTciLCJzdWIiOiIzNDc1MDEzZi03YmY5LTQyNj\nEtOWUxYy0xZTdlNWZjZTJlN2UiLCJhdWQiOiI4MTVhMGVmMS00YjZhLTQyMDUtYjExMi1lNDVmZDZmNGQzYWQiLCJuYmYiOjE1ODA3NDE2NjcsIml\nzcyI6Imh0dHA6XC9cLzEyNy4wLjAuMTo4MDgwIiwiZXhwIjoxNTgwNzQ1MjY3LCJpYXQiOjE1ODA3NDE2NjcsImp0aSI6ImJkYzVjZTk5LTE2ZTY\ntNDM4Yi1hNjllLTU3MTAzN2RhMTg3OCIsInZpZXdzIjpbXX0.L3fEEEhdCVr3qnmyRKBBUaIQ7dk1VjiFaEBW8hUNjfg\n\nConsumer-Key: ejznk505d132ryomnhbx1qmtohurbsbb0kijajsk\ncache-control: no-cache\n\nMaximum time to live of the token is specified over props value consents.max_time_to_live. In case isn't defined default value is 3600 seconds.\n\nExample of POST JSON:\n{\n \"everything\": false,\n \"views\": [\n {\n \"bank_id\": \"GENODEM1GLS\",\n \"account_id\": \"8ca8a7e4-6d02-40e3-a129-0b2bf89de9f0\",\n \"view_id\": \"owner\"\n }\n ],\n \"entitlements\": [\n {\n \"bank_id\": \"GENODEM1GLS\",\n \"role_name\": \"CanGetCustomer\"\n }\n ],\n \"consumer_id\": \"7uy8a7e4-6d02-40e3-a129-0b2bf89de8uh\",\n \"email\": \"eveline@example.com\",\n \"valid_from\": \"2020-02-07T08:43:34Z\",\n \"time_to_live\": 3600\n}\nPlease note that only optional fields are: consumer_id, valid_from and time_to_live. \nIn case you omit they the default values are used:\nconsumer_id = consumer of current user\nvalid_from = current time\ntime_to_live = consents.max_time_to_live\n\n \n\n\nThis endpoint is used to confirm a Consent previously created.\n\nThe User must supply a code that was sent out of band (OOB) for example via an SMS.\n\nAuthentication is Mandatory\n\n\n**URL Parameters:**\n\n[BANK_ID](/glossary#Bank.bank_id): gh.29.uk\n\n\n\n[CONSENT_ID](/glossary#consent_id): \n\n\n\n\n\n**JSON request body fields:**\n\n\n\n[**answer**](/glossary#answer): \n\n\n\n\n\n**JSON response body fields:**\n\n\n\n[**consent_id**](/glossary#consent_id): \n\n\n\n[**jwt**](/glossary#jwt): \n\n\n\n[**status**](/glossary#status): \n\n\n","example_request_body":{"answer":"12345678"},"success_response_body":{"consent_id":"9d429899-24f5-42c8-8565-943ffa6a7945","jwt":"eyJhbGciOiJIUzI1NiJ9.eyJlbnRpdGxlbWVudHMiOltdLCJjcmVhdGVkQnlVc2VySWQiOiJhYjY1MzlhOS1iMTA1LTQ0ODktYTg4My0wYWQ4ZDZjNjE2NTciLCJzdWIiOiIyMWUxYzhjYy1mOTE4LTRlYWMtYjhlMy01ZTVlZWM2YjNiNGIiLCJhdWQiOiJlanpuazUwNWQxMzJyeW9tbmhieDFxbXRvaHVyYnNiYjBraWphanNrIiwibmJmIjoxNTUzNTU0ODk5LCJpc3MiOiJodHRwczpcL1wvd3d3Lm9wZW5iYW5rcHJvamVjdC5jb20iLCJleHAiOjE1NTM1NTg0OTksImlhdCI6MTU1MzU1NDg5OSwianRpIjoiMDlmODhkNWYtZWNlNi00Mzk4LThlOTktNjYxMWZhMWNkYmQ1Iiwidmlld3MiOlt7ImFjY291bnRfaWQiOiJtYXJrb19wcml2aXRlXzAxIiwiYmFua19pZCI6ImdoLjI5LnVrLngiLCJ2aWV3X2lkIjoib3duZXIifSx7ImFjY291bnRfaWQiOiJtYXJrb19wcml2aXRlXzAyIiwiYmFua19pZCI6ImdoLjI5LnVrLngiLCJ2aWV3X2lkIjoib3duZXIifV19.8cc7cBEf2NyQvJoukBCmDLT7LXYcuzTcSYLqSpbxLp4","status":"INITIATED"},"error_response_bodies":["OBP-20001: User not logged in. Authentication is required!","OBP-30001: Bank not found. Please specify a valid value for BANK_ID.","OBP-10001: Incorrect json format.","OBP-50200: Connector cannot return the data we requested.","OBP-50000: Unknown Error."],"tags":["Consent","Account Information Service (AIS)","PSD2"],"typed_request_body":{"type":"object","properties":{"answer":{"type":"string"}}},"typed_success_response_body":{"type":"object","properties":{"consent_id":{"type":"string"},"status":{"type":"string"},"jwt":{"type":"string"}}},"is_featured":false,"special_instructions":"","specified_url":"/obp/v5.1.0/banks/BANK_ID/consents/CONSENT_ID/challenge","connector_methods":["obp.getBank","obp.getBankAccountsForUser"]},{"operation_id":"OBPv5.1.0-revokeConsentAtBank","implemented_by":{"version":"OBPv5.1.0","function":"revokeConsentAtBank"},"request_verb":"DELETE","request_url":"/obp/v5.1.0/banks/BANK_ID/consents/CONSENT_ID","summary":"Revoke Consent at Bank","description":"Revoke Consent specified by CONSENT_ID
\nThere are a few reasons you might need to revoke an application’s access to a user’s account:
\n- The user explicitly wishes to revoke the application’s access
\n- You as the service provider have determined an application is compromised or malicious, and want to disable it
\n- etc.
OBP as a resource server stores access tokens in a database, then it is relatively easy to revoke some token that belongs to a particular user.
\nThe status of the token is changed to "REVOKED" so the next time the revoked client makes a request, their token will fail to validate.
Authentication is Mandatory
\nURL Parameters:
\nBANK_ID: gh.29.uk
\n\nJSON response body fields:
\n\njwt:
\n\n","description_markdown":"Revoke Consent specified by CONSENT_ID\n\nThere are a few reasons you might need to revoke an application’s access to a user’s account:\n - The user explicitly wishes to revoke the application’s access\n - You as the service provider have determined an application is compromised or malicious, and want to disable it\n - etc.\n\nOBP as a resource server stores access tokens in a database, then it is relatively easy to revoke some token that belongs to a particular user.\nThe status of the token is changed to \"REVOKED\" so the next time the revoked client makes a request, their token will fail to validate.\n\nAuthentication is Mandatory\n\n\n**URL Parameters:**\n\n[BANK_ID](/glossary#Bank.bank_id): gh.29.uk\n\n\n\n[CONSENT_ID](/glossary#consent_id): \n\n\n\n\n\n**JSON response body fields:**\n\n\n\n[**consent_id**](/glossary#consent_id): \n\n\n\n[**jwt**](/glossary#jwt): \n\n\n\n[**status**](/glossary#status): \n\n\n","success_response_body":{"consent_id":"9d429899-24f5-42c8-8565-943ffa6a7945","jwt":"eyJhbGciOiJIUzI1NiJ9.eyJlbnRpdGxlbWVudHMiOltdLCJjcmVhdGVkQnlVc2VySWQiOiJhYjY1MzlhOS1iMTA1LTQ0ODktYTg4My0wYWQ4ZDZjNjE2NTciLCJzdWIiOiIyMWUxYzhjYy1mOTE4LTRlYWMtYjhlMy01ZTVlZWM2YjNiNGIiLCJhdWQiOiJlanpuazUwNWQxMzJyeW9tbmhieDFxbXRvaHVyYnNiYjBraWphanNrIiwibmJmIjoxNTUzNTU0ODk5LCJpc3MiOiJodHRwczpcL1wvd3d3Lm9wZW5iYW5rcHJvamVjdC5jb20iLCJleHAiOjE1NTM1NTg0OTksImlhdCI6MTU1MzU1NDg5OSwianRpIjoiMDlmODhkNWYtZWNlNi00Mzk4LThlOTktNjYxMWZhMWNkYmQ1Iiwidmlld3MiOlt7ImFjY291bnRfaWQiOiJtYXJrb19wcml2aXRlXzAxIiwiYmFua19pZCI6ImdoLjI5LnVrLngiLCJ2aWV3X2lkIjoib3duZXIifSx7ImFjY291bnRfaWQiOiJtYXJrb19wcml2aXRlXzAyIiwiYmFua19pZCI6ImdoLjI5LnVrLngiLCJ2aWV3X2lkIjoib3duZXIifV19.8cc7cBEf2NyQvJoukBCmDLT7LXYcuzTcSYLqSpbxLp4","status":"REJECTED"},"error_response_bodies":["OBP-20001: User not logged in. Authentication is required!","OBP-30001: Bank not found. Please specify a valid value for BANK_ID.","OBP-50000: Unknown Error.","OBP-20006: User is missing one or more roles: "],"tags":["Consent","Account Information Service (AIS)","PSD2"],"typed_success_response_body":{"type":"object","properties":{"status":{"type":"string"},"consent_id":{"type":"string"},"jwt":{"type":"string"}}},"roles":[{"role":"CanRevokeConsentAtBank","requires_bank_id":true}],"is_featured":false,"special_instructions":"","specified_url":"/obp/v5.1.0/banks/BANK_ID/consents/CONSENT_ID","connector_methods":["obp.getBank","obp.getBankAccountsForUser"]},{"operation_id":"OBPv2.0.0-addEntitlement","implemented_by":{"version":"OBPv2.0.0","function":"addEntitlement"},"request_verb":"POST","request_url":"/obp/v2.0.0/users/USER_ID/entitlements","summary":"Add Entitlement for a User","description":"Create Entitlement. Grant Role to User.
\nEntitlements are used to grant System or Bank level roles to Users. (For Account level privileges, see Views)
\nFor a System level Role (.e.g CanGetAnyUser), set bank_id to an empty string i.e. "bank_id":""
\nFor a Bank level Role (e.g. CanCreateAccount), set bank_id to a valid value e.g. "bank_id":"my-bank-id"
\nAuthentication is required and the user needs to be a Super Admin. Super Admins are listed in the Props file.
\nAuthentication is Mandatory
\nURL Parameters:
\nUSER_ID: 9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1
\nJSON request body fields:
\nbank_id: gh.29.uk
\n\nJSON response body fields:
\nbank_id: gh.29.uk
\n\n\n","description_markdown":"Create Entitlement. Grant Role to User.\n\nEntitlements are used to grant System or Bank level roles to Users. (For Account level privileges, see Views)\n\nFor a System level Role (.e.g CanGetAnyUser), set bank_id to an empty string i.e. \"bank_id\":\"\"\n\nFor a Bank level Role (e.g. CanCreateAccount), set bank_id to a valid value e.g. \"bank_id\":\"my-bank-id\"\n\nAuthentication is required and the user needs to be a Super Admin. Super Admins are listed in the Props file.\n\nAuthentication is Mandatory\n\n\n**URL Parameters:**\n\n[USER_ID](/glossary#User.user_id): 9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1\n\n\n\n\n\n**JSON request body fields:**\n\n\n\n[**bank_id**](/glossary#): gh.29.uk\n\n\n\n[**role_name**](/glossary#role_name): \n\n\n\n\n\n**JSON response body fields:**\n\n\n\n[**bank_id**](/glossary#): gh.29.uk\n\n\n\n[**entitlement_id**](/glossary#entitlement_id): \n\n\n\n[**role_name**](/glossary#role_name): \n\n\n","example_request_body":{"bank_id":"gh.29.uk","role_name":"CanCreateBranch"},"success_response_body":{"entitlement_id":"6fb17583-1e49-4435-bb74-a14fe0996723","role_name":"CanQueryOtherUser","bank_id":"gh.29.uk"},"error_response_bodies":["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: "],"tags":["Role","Entitlement","User"],"typed_request_body":{"type":"object","properties":{"bank_id":{"type":"string"},"role_name":{"type":"string"}}},"typed_success_response_body":{"type":"object","properties":{"role_name":{"type":"string"},"bank_id":{"type":"string"},"entitlement_id":{"type":"string"}}},"roles":[{"role":"CanCreateEntitlementAtOneBank","requires_bank_id":true},{"role":"CanCreateEntitlementAtAnyBank","requires_bank_id":false}],"is_featured":false,"special_instructions":"","specified_url":"/obp/v5.1.0/users/USER_ID/entitlements","connector_methods":["obp.getBankLegacy","obp.getBankAccountsForUser"]},{"operation_id":"OBPv3.0.0-getCustomersForUser","implemented_by":{"version":"OBPv3.0.0","function":"getCustomersForUser"},"request_verb":"GET","request_url":"/obp/v3.0.0/users/current/customers","summary":"Get Customers for Current User","description":"Gets all Customers that are linked to a User.
\nAuthentication is Mandatory
\nJSON response body fields:
\namount: 10.12
\nbank_id: gh.29.uk
\nbranch_id: DERBY6
\ncurrency: EUR
\ncustomer_attribute_id: 7uy8a7e4-6d02-40e3-a129-0b2bf89de8uh
\n\ncustomer_id: 7uy8a7e4-6d02-40e3-a129-0b2bf89de8uh
\ncustomer_number: 5987953
\n\ndate: 2020-01-27
\ndate_of_birth: 2018-03-09
\ndependants: 1
\ndob_of_dependants: [2019-09-08, 2017-07-12]
\n\nemployment_status: worker
\n\nhighest_education_attained: Master
\nkyc_status: true
\nlast_ok_date: 2023-03-28T00:00:41.846Z
\nlegal_name: Eveline Tripman
\nmobile_phone_number: +49 30 901820
\nname: ACCOUNT_MANAGEMENT_FEE
\nname_suffix: Sr
\n\nrelationship_status: single
\n\ntitle: Dr.
\ntype:
\nurl: http://www.example.com/id-docs/123/image.png
\nvalue: 5987953
\n\n\n","description_markdown":"Gets all Customers that are linked to a User.\n\n\nAuthentication is Mandatory\n\n\n**JSON response body fields:**\n\n\n\n[**amount**](/glossary#): 10.12\n\n\n\n[**bank_id**](/glossary#): gh.29.uk\n\n\n\n[**branch_id**](/glossary#): DERBY6\n\n\n\n[**currency**](/glossary#): EUR\n\n\n\n[**customer_attribute_id**](/glossary#): 7uy8a7e4-6d02-40e3-a129-0b2bf89de8uh\n\n\n\n[**customer_attributes**](/glossary#customer_attributes): \n\n\n\n[**customer_id**](/glossary#): 7uy8a7e4-6d02-40e3-a129-0b2bf89de8uh\n\n\n\n[**customer_number**](/glossary#): 5987953\n\n\n\n[**customers**](/glossary#customers): \n\n\n\n[**date**](/glossary#): 2020-01-27\n\n\n\n[**date_of_birth**](/glossary#): 2018-03-09\n\n\n\n[**dependants**](/glossary#): 1\n\n\n\n[**dob_of_dependants**](/glossary#dob_of_dependants): [2019-09-08, 2017-07-12]\n\n\n\n[**email**](/glossary#): felixsmith@example.com\n\n\n\n[**employment_status**](/glossary#): worker\n\n\n\n[**face_image**](/glossary#face_image): \n\n\n\n[**highest_education_attained**](/glossary#): Master\n\n\n\n[**kyc_status**](/glossary#): true\n\n\n\n[**last_ok_date**](/glossary#last_ok_date): 2023-03-28T00:00:41.846Z\n\n\n\n[**legal_name**](/glossary#): Eveline Tripman\n\n\n\n[**mobile_phone_number**](/glossary#mobile_phone_number): +49 30 901820\n\n\n\n[**name**](/glossary#name): ACCOUNT_MANAGEMENT_FEE\n\n\n\n[**name_suffix**](/glossary#): Sr\n\n\n\n[**rating**](/glossary#): \n\n\n\n[**relationship_status**](/glossary#): single\n\n\n\n[**source**](/glossary#): \n\n\n\n[**title**](/glossary#): Dr.\n\n\n\n[**type**](/glossary#type): \n\n\n\n[**url**](/glossary#): http://www.example.com/id-docs/123/image.png\n\n\n\n[**value**](/glossary#): 5987953\n\n\n\n[credit_limit](/glossary#credit_limit): \n\n\n\n[credit_rating](/glossary#credit_rating): \n\n\n","success_response_body":{"customers":[{"bank_id":"gh.29.uk","customer_id":"7uy8a7e4-6d02-40e3-a129-0b2bf89de8uh","customer_number":"5987953","legal_name":"Eveline Tripman","mobile_phone_number":"+44 07972 444 876","email":"felixsmith@example.com","face_image":{"url":"www.openbankproject","date":"1100-01-01T00:00:00Z"},"date_of_birth":"19900101","relationship_status":"single","dependants":1,"dob_of_dependants":["19900101"],"credit_rating":{"rating":"OBP","source":"OBP"},"credit_limit":{"currency":"EUR","amount":"0"},"highest_education_attained":"Master","employment_status":"worker","kyc_status":true,"last_ok_date":"2023-03-28T00:00:42Z","title":"Dr.","branch_id":"DERBY6","name_suffix":"Sr","customer_attributes":[{"customer_attribute_id":"7uy8a7e4-6d02-40e3-a129-0b2bf89de8uh","name":"SPECIAL_TAX_NUMBER","type":"STRING","value":"123456789"}]}]},"error_response_bodies":["OBP-20001: User not logged in. Authentication is required!","OBP-30008: User Customer Link not found by USER_ID","OBP-50000: Unknown Error."],"tags":["Customer","User"],"typed_success_response_body":{"type":"object","properties":{"customers":{"type":"array","items":{"type":"object","properties":{"dependants":{"type":"integer"},"customer_attributes":{"type":"array","items":{"type":"object","properties":{"customer_attribute_id":{"type":"string"},"name":{"type":"string"},"type":{"type":"string"},"value":{"type":"string"}}}},"face_image":{"type":"object","properties":{"url":{"type":"string"},"date":{"type":"string","format":"date-time"}}},"credit_limit":{"type":"object","properties":{"currency":{"type":"string"},"amount":{"type":"string"}}},"employment_status":{"type":"string"},"email":{"type":"string"},"last_ok_date":{"type":"string","format":"date-time"},"customer_id":{"type":"string"},"relationship_status":{"type":"string"},"bank_id":{"type":"string"},"highest_education_attained":{"type":"string"},"customer_number":{"type":"string"},"credit_rating":{"type":"object","properties":{"rating":{"type":"string"},"source":{"type":"string"}}},"name_suffix":{"type":"string"},"date_of_birth":{"type":"string"},"legal_name":{"type":"string"},"title":{"type":"string"},"dob_of_dependants":{"type":"array","items":{"type":"string"}},"branch_id":{"type":"string"},"mobile_phone_number":{"type":"string"},"kyc_status":{"type":"boolean"}}}}}},"is_featured":false,"special_instructions":"","specified_url":"/obp/v5.1.0/users/current/customers","connector_methods":["obp.getCustomerAttributesForCustomers","obp.getCustomersByUserId","obp.getBankAccountsForUser"]},{"operation_id":"OBPv4.0.0-getUserByUserId","implemented_by":{"version":"OBPv4.0.0","function":"getUserByUserId"},"request_verb":"GET","request_url":"/obp/v4.0.0/users/user_id/USER_ID","summary":"Get User by USER_ID","description":"Get user by USER_ID
\nAuthentication is Mandatory
\nCanGetAnyUser entitlement is required,
URL Parameters:
\nUSER_ID: 9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1
\nJSON response body fields:
\naccount_id: 8ca8a7e4-6d02-40e3-a129-0b2bf89de9f0
\nbank_id: gh.29.uk
\n\n\n\nis_deleted: is_deleted
\nis_locked: is_locked
\nlist:
\nprovider: ETHEREUM
\n\n\ntext:
\ntype:
\nuser_id: 9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1
\nusername: felixsmith
\nview_id: owner
\nagreements: agreements
\nlast_marketing_agreement_signed_date: last_marketing_agreement_signed_date
\n\n","description_markdown":"Get user by USER_ID\n\nAuthentication is Mandatory\nCanGetAnyUser entitlement is required,\n\n\n**URL Parameters:**\n\n[USER_ID](/glossary#User.user_id): 9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1\n\n\n\n\n\n**JSON response body fields:**\n\n\n\n[**account_id**](/glossary#): 8ca8a7e4-6d02-40e3-a129-0b2bf89de9f0\n\n\n\n[**bank_id**](/glossary#): gh.29.uk\n\n\n\n[**email**](/glossary#): felixsmith@example.com\n\n\n\n[**entitlement_id**](/glossary#entitlement_id): \n\n\n\n[**entitlements**](/glossary#entitlements): \n\n\n\n[**is_deleted**](/glossary#): is_deleted\n\n\n\n[**is_locked**](/glossary#): is_locked\n\n\n\n[**list**](/glossary#list): \n\n\n\n[**provider**](/glossary#provider): ETHEREUM\n\n\n\n[**provider_id**](/glossary#provider_id): \n\n\n\n[**role_name**](/glossary#role_name): \n\n\n\n[**text**](/glossary#text): \n\n\n\n[**type**](/glossary#type): \n\n\n\n[**user_id**](/glossary#): 9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1\n\n\n\n[**username**](/glossary#): felixsmith\n\n\n\n[**view_id**](/glossary#): owner\n\n\n\n[agreements](/glossary#): agreements\n\n\n\n[last_marketing_agreement_signed_date](/glossary#): last_marketing_agreement_signed_date\n\n\n\n[views](/glossary#views): \n\n\n","success_response_body":{"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"}]},"views":{"list":[{"bank_id":"gh.29.uk","account_id":"8ca8a7e4-6d02-40e3-a129-0b2bf89de9f0","view_id":"owner"}]},"agreements":[{"type":"","text":""}],"is_deleted":false,"last_marketing_agreement_signed_date":"1100-01-01T00:00:00Z","is_locked":false},"error_response_bodies":["OBP-20001: User not logged in. Authentication is required!","OBP-20006: User is missing one or more roles: ","OBP-20005: User not found. Please specify a valid value for USER_ID.","OBP-50000: Unknown Error."],"tags":["User"],"typed_success_response_body":{"type":"object","properties":{"provider":{"type":"string"},"email":{"type":"string"},"last_marketing_agreement_signed_date":{"type":"string","format":"date-time"},"provider_id":{"type":"string"},"agreements":{"type":"array","items":{"type":"object","properties":{"type":{"type":"string"},"text":{"type":"string"}}}},"entitlements":{"type":"object","properties":{"list":{"type":"array","items":{"type":"object","properties":{"role_name":{"type":"string"},"bank_id":{"type":"string"},"entitlement_id":{"type":"string"}}}}}},"is_deleted":{"type":"boolean"},"is_locked":{"type":"boolean"},"username":{"type":"string"},"views":{"type":"object","properties":{"list":{"type":"array","items":{"type":"object","properties":{"bank_id":{"type":"string"},"view_id":{"type":"string"},"account_id":{"type":"string"}}}}}},"user_id":{"type":"string"}}},"roles":[{"role":"CanGetAnyUser","requires_bank_id":false}],"is_featured":false,"special_instructions":"","specified_url":"/obp/v5.1.0/users/user_id/USER_ID","connector_methods":[]},{"operation_id":"OBPv4.0.0-getEntitlementsForBank","implemented_by":{"version":"OBPv4.0.0","function":"getEntitlementsForBank"},"request_verb":"GET","request_url":"/obp/v4.0.0/banks/BANK_ID/entitlements","summary":"Get Entitlements for One Bank","description":"Authentication is Mandatory
\nURL Parameters:
\nBANK_ID: gh.29.uk
\nJSON response body fields:
\nbank_id: gh.29.uk
\n\nlist:
\n\nuser_id: 9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1
\n","description_markdown":"Authentication is Mandatory\n\n\n**URL Parameters:**\n\n[BANK_ID](/glossary#Bank.bank_id): gh.29.uk\n\n\n\n\n\n**JSON response body fields:**\n\n\n\n[**bank_id**](/glossary#): gh.29.uk\n\n\n\n[**entitlement_id**](/glossary#entitlement_id): \n\n\n\n[**list**](/glossary#list): \n\n\n\n[**role_name**](/glossary#role_name): \n\n\n\n[**user_id**](/glossary#): 9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1\n\n\n","success_response_body":{"list":[{"entitlement_id":"","role_name":"","bank_id":"gh.29.uk","user_id":"9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1"}]},"error_response_bodies":["OBP-20001: User not logged in. Authentication is required!","OBP-20006: User is missing one or more roles: ","OBP-50000: Unknown Error."],"tags":["Role","Entitlement","User"],"typed_success_response_body":{"type":"object","properties":{"list":{"type":"array","items":{"type":"object","properties":{"entitlement_id":{"type":"string"},"bank_id":{"type":"string"},"role_name":{"type":"string"},"user_id":{"type":"string"}}}}}},"roles":[{"role":"CanGetEntitlementsForOneBank","requires_bank_id":true},{"role":"CanGetEntitlementsForAnyBank","requires_bank_id":false}],"is_featured":false,"special_instructions":"","specified_url":"/obp/v5.1.0/banks/BANK_ID/entitlements","connector_methods":[]},{"operation_id":"OBPv2.1.0-getRoles","implemented_by":{"version":"OBPv2.1.0","function":"getRoles"},"request_verb":"GET","request_url":"/obp/v2.1.0/roles","summary":"Get Roles","description":"Returns all available roles
\nAuthentication is Mandatory
\nJSON response body fields:
\n\nrole:
\nroles: CanCreateMyUser
\n","description_markdown":"Returns all available roles\n\nAuthentication is Mandatory\n\n\n**JSON response body fields:**\n\n\n\n[**requires_bank_id**](/glossary#requires_bank_id): \n\n\n\n[**role**](/glossary#role): \n\n\n\n[**roles**](/glossary#roles): CanCreateMyUser\n\n\n","example_request_body":{"jsonString":"{}"},"success_response_body":{"roles":[{"role":"CanCreateBranch","requires_bank_id":true}]},"error_response_bodies":["OBP-20001: User not logged in. Authentication is required!","OBP-50000: Unknown Error."],"tags":["Role"],"typed_request_body":{"type":"object","properties":{"jsonString":{"type":"string"}}},"typed_success_response_body":{"type":"object","properties":{"roles":{"type":"array","items":{"type":"object","properties":{"role":{"type":"string"},"requires_bank_id":{"type":"boolean"}}}}}},"is_featured":false,"special_instructions":"","specified_url":"/obp/v5.1.0/roles","connector_methods":["obp.getBankAccountsForUser"]},{"operation_id":"OBPv5.1.0-lockUserByProviderAndUsername","implemented_by":{"version":"OBPv5.1.0","function":"lockUserByProviderAndUsername"},"request_verb":"POST","request_url":"/obp/v5.1.0/users/PROVIDER/USERNAME/locks","summary":"Lock the user","description":"Lock a User.
\nAuthentication is Mandatory
\nURL Parameters:
\nPROVIDER: ETHEREUM
\nUSERNAME: felixsmith
\nJSON request body fields:
\nJSON response body fields:
\nlast_lock_date: 2020-01-27
\n\nuser_id: 9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1
\n","description_markdown":"Lock a User.\n\nAuthentication is Mandatory\n\n\n**URL Parameters:**\n\n[PROVIDER](/glossary#provider): ETHEREUM\n\n\n\n[USERNAME](/glossary#): felixsmith\n\n\n\n\n\n**JSON request body fields:**\n\n\n\n\n\n**JSON response body fields:**\n\n\n\n[**last_lock_date**](/glossary#last_lock_date): 2020-01-27\n\n\n\n[**type_of_lock**](/glossary#type_of_lock): \n\n\n\n[**user_id**](/glossary#): 9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1\n\n\n","success_response_body":{"user_id":"9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1","type_of_lock":"lock_via_api","last_lock_date":"1100-01-01T01:01:01Z"},"error_response_bodies":["OBP-20001: User not logged in. Authentication is required!","OBP-20027: User not found by provider and username.","OBP-20006: User is missing one or more roles: ","OBP-50000: Unknown Error."],"tags":["User"],"typed_success_response_body":{"type":"object","properties":{"type_of_lock":{"type":"string"},"last_lock_date":{"type":"string","format":"date-time"},"user_id":{"type":"string"}}},"roles":[{"role":"CanLockUser","requires_bank_id":false}],"is_featured":false,"special_instructions":"","specified_url":"/obp/v5.1.0/users/PROVIDER/USERNAME/locks","connector_methods":[]},{"operation_id":"OBPv4.0.0-addConsentUser","implemented_by":{"version":"OBPv4.0.0","function":"addConsentUser"},"request_verb":"PUT","request_url":"/obp/v4.0.0/banks/BANK_ID/consents/CONSENT_ID/user-update-request","summary":"Add User to a Consent","description":"This endpoint is used to add the User of Consent.
\nEach Consent has one of the following states: INITIATED, ACCEPTED, REJECTED, REVOKED, RECEIVED, VALID, REVOKEDBYPSU, EXPIRED, TERMINATEDBYTPP, AUTHORISED, AWAITINGAUTHORISATION.
\nAuthentication is Mandatory
\nURL Parameters:
\nBANK_ID: gh.29.uk
\n\nJSON response body fields:
\n\njwt:
\n\n","description_markdown":"This endpoint is used to add the User of Consent.\n\nEach Consent has one of the following states: INITIATED, ACCEPTED, REJECTED, REVOKED, RECEIVED, VALID, REVOKEDBYPSU, EXPIRED, TERMINATEDBYTPP, AUTHORISED, AWAITINGAUTHORISATION.\n\nAuthentication is Mandatory\n\n\n**URL Parameters:**\n\n[BANK_ID](/glossary#Bank.bank_id): gh.29.uk\n\n\n\n[CONSENT_ID](/glossary#consent_id): \n\n\n\n\n\n**JSON response body fields:**\n\n\n\n[**consent_id**](/glossary#consent_id): \n\n\n\n[**jwt**](/glossary#jwt): \n\n\n\n[**status**](/glossary#status): \n\n\n","example_request_body":{"user_id":"ed7a7c01-db37-45cc-ba12-0ae8891c195c"},"success_response_body":{"consent_id":"9d429899-24f5-42c8-8565-943ffa6a7945","jwt":"eyJhbGciOiJIUzI1NiJ9.eyJlbnRpdGxlbWVudHMiOltdLCJjcmVhdGVkQnlVc2VySWQiOiJhYjY1MzlhOS1iMTA1LTQ0ODktYTg4My0wYWQ4ZDZjNjE2NTciLCJzdWIiOiIyMWUxYzhjYy1mOTE4LTRlYWMtYjhlMy01ZTVlZWM2YjNiNGIiLCJhdWQiOiJlanpuazUwNWQxMzJyeW9tbmhieDFxbXRvaHVyYnNiYjBraWphanNrIiwibmJmIjoxNTUzNTU0ODk5LCJpc3MiOiJodHRwczpcL1wvd3d3Lm9wZW5iYW5rcHJvamVjdC5jb20iLCJleHAiOjE1NTM1NTg0OTksImlhdCI6MTU1MzU1NDg5OSwianRpIjoiMDlmODhkNWYtZWNlNi00Mzk4LThlOTktNjYxMWZhMWNkYmQ1Iiwidmlld3MiOlt7ImFjY291bnRfaWQiOiJtYXJrb19wcml2aXRlXzAxIiwiYmFua19pZCI6ImdoLjI5LnVrLngiLCJ2aWV3X2lkIjoib3duZXIifSx7ImFjY291bnRfaWQiOiJtYXJrb19wcml2aXRlXzAyIiwiYmFua19pZCI6ImdoLjI5LnVrLngiLCJ2aWV3X2lkIjoib3duZXIifV19.8cc7cBEf2NyQvJoukBCmDLT7LXYcuzTcSYLqSpbxLp4","status":"AUTHORISED"},"error_response_bodies":["OBP-20001: User not logged in. Authentication is required!","OBP-20057: User not found by userId.","OBP-30001: Bank not found. Please specify a valid value for BANK_ID.","OBP-35024: The Consent's User is already added.","OBP-10001: Incorrect json format.","OBP-35001: Consent not found by CONSENT_ID. ","OBP-50000: Unknown Error."],"tags":["Consent","Account Information Service (AIS)"],"typed_request_body":{"type":"object","properties":{"user_id":{"type":"string"}}},"typed_success_response_body":{"type":"object","properties":{"status":{"type":"string"},"consent_id":{"type":"string"},"jwt":{"type":"string"}}},"is_featured":false,"special_instructions":"","specified_url":"/obp/v5.1.0/banks/BANK_ID/consents/CONSENT_ID/user-update-request","connector_methods":[]},{"operation_id":"OBPv3.0.0-addEntitlementRequest","implemented_by":{"version":"OBPv3.0.0","function":"addEntitlementRequest"},"request_verb":"POST","request_url":"/obp/v3.0.0/entitlement-requests","summary":"Create Entitlement Request for current User","description":"Create Entitlement Request.
\nAny logged in User can use this endpoint to request an Entitlement
\nEntitlements are used to grant System or Bank level roles to Users. (For Account level privileges, see Views)
\nFor a System level Role (.e.g CanGetAnyUser), set bank_id to an empty string i.e. "bank_id":""
\nFor a Bank level Role (e.g. CanCreateAccount), set bank_id to a valid value e.g. "bank_id":"my-bank-id"
\nAuthentication is Mandatory
\nJSON request body fields:
\nbank_id: gh.29.uk
\n\nJSON response body fields:
\nbank_id: gh.29.uk
\n\n\n\n\n\nlist:
\nprovider: ETHEREUM
\n\n\nuser:
\nuser_id: 9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1
\nusername: felixsmith
\n","description_markdown":"Create Entitlement Request.\n\nAny logged in User can use this endpoint to request an Entitlement\n\nEntitlements are used to grant System or Bank level roles to Users. (For Account level privileges, see Views)\n\nFor a System level Role (.e.g CanGetAnyUser), set bank_id to an empty string i.e. \"bank_id\":\"\"\n\nFor a Bank level Role (e.g. CanCreateAccount), set bank_id to a valid value e.g. \"bank_id\":\"my-bank-id\"\n\n\n\nAuthentication is Mandatory\n\n\n**JSON request body fields:**\n\n\n\n[**bank_id**](/glossary#): gh.29.uk\n\n\n\n[**role_name**](/glossary#role_name): \n\n\n\n\n\n**JSON response body fields:**\n\n\n\n[**bank_id**](/glossary#): gh.29.uk\n\n\n\n[**created**](/glossary#created): \n\n\n\n[**email**](/glossary#): felixsmith@example.com\n\n\n\n[**entitlement_id**](/glossary#entitlement_id): \n\n\n\n[**entitlement_request_id**](/glossary#entitlement_request_id): \n\n\n\n[**entitlements**](/glossary#entitlements): \n\n\n\n[**list**](/glossary#list): \n\n\n\n[**provider**](/glossary#provider): ETHEREUM\n\n\n\n[**provider_id**](/glossary#provider_id): \n\n\n\n[**role_name**](/glossary#role_name): \n\n\n\n[**user**](/glossary#User): \n\n\n\n[**user_id**](/glossary#): 9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1\n\n\n\n[**username**](/glossary#): felixsmith\n\n\n","example_request_body":{"bank_id":"gh.29.uk","role_name":"CanCreateBranch"},"success_response_body":{"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"},"error_response_bodies":["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."],"tags":["Role","Entitlement","User"],"typed_request_body":{"type":"object","properties":{"bank_id":{"type":"string"},"role_name":{"type":"string"}}},"typed_success_response_body":{"type":"object","properties":{"entitlement_request_id":{"type":"string"},"role_name":{"type":"string"},"bank_id":{"type":"string"},"user":{"type":"object","properties":{"provider":{"type":"string"},"email":{"type":"string"},"provider_id":{"type":"string"},"entitlements":{"type":"object","properties":{"list":{"type":"array","items":{"type":"object","properties":{"role_name":{"type":"string"},"bank_id":{"type":"string"},"entitlement_id":{"type":"string"}}}}}},"username":{"type":"string"},"user_id":{"type":"string"}}},"created":{"type":"string","format":"date-time"}}},"is_featured":false,"special_instructions":"","specified_url":"/obp/v5.1.0/entitlement-requests","connector_methods":["obp.getBank","obp.getBankAccountsForUser"]},{"operation_id":"OBPv3.0.0-getEntitlementsForCurrentUser","implemented_by":{"version":"OBPv3.0.0","function":"getEntitlementsForCurrentUser"},"request_verb":"GET","request_url":"/obp/v3.0.0/my/entitlements","summary":"Get Entitlements for the current User","description":"Get Entitlements for the current User.
\nAuthentication is Mandatory
\nJSON response body fields:
\nbank_id: gh.29.uk
\n\nlist:
\n\n","description_markdown":"Get Entitlements for the current User.\n\n\nAuthentication is Mandatory\n\n\n**JSON response body fields:**\n\n\n\n[**bank_id**](/glossary#): gh.29.uk\n\n\n\n[**entitlement_id**](/glossary#entitlement_id): \n\n\n\n[**list**](/glossary#list): \n\n\n\n[**role_name**](/glossary#role_name): \n\n\n","success_response_body":{"list":[{"entitlement_id":"6fb17583-1e49-4435-bb74-a14fe0996723","role_name":"CanQueryOtherUser","bank_id":"gh.29.uk"}]},"error_response_bodies":["OBP-20001: User not logged in. Authentication is required!","OBP-50200: Connector cannot return the data we requested.","OBP-50000: Unknown Error."],"tags":["Role","Entitlement","User"],"typed_success_response_body":{"type":"object","properties":{"list":{"type":"array","items":{"type":"object","properties":{"role_name":{"type":"string"},"bank_id":{"type":"string"},"entitlement_id":{"type":"string"}}}}}},"is_featured":false,"special_instructions":"","specified_url":"/obp/v5.1.0/my/entitlements","connector_methods":["obp.getBankAccountsForUser"]},{"operation_id":"OBPv5.0.0-getCustomersMinimalAtOneBank","implemented_by":{"version":"OBPv5.0.0","function":"getCustomersMinimalAtOneBank"},"request_verb":"GET","request_url":"/obp/v5.0.0/banks/BANK_ID/customers-minimal","summary":"Get Customers Minimal at Bank","description":"Get Customers Minimal at Bank.
\nAuthentication is Mandatory
\nURL Parameters:
\nBANK_ID: gh.29.uk
\nJSON response body fields:
\nbank_id: gh.29.uk
\ncustomer_id: 7uy8a7e4-6d02-40e3-a129-0b2bf89de8uh
\n\n","description_markdown":"Get Customers Minimal at Bank.\n\n\n\n\n\nAuthentication is Mandatory\n\n\n**URL Parameters:**\n\n[BANK_ID](/glossary#Bank.bank_id): gh.29.uk\n\n\n\n\n\n**JSON response body fields:**\n\n\n\n[**bank_id**](/glossary#): gh.29.uk\n\n\n\n[**customer_id**](/glossary#): 7uy8a7e4-6d02-40e3-a129-0b2bf89de8uh\n\n\n\n[**customers**](/glossary#customers): \n\n\n","success_response_body":{"customers":[{"bank_id":"gh.29.uk","customer_id":"7uy8a7e4-6d02-40e3-a129-0b2bf89de8uh"}]},"error_response_bodies":["OBP-30008: User Customer Link not found by USER_ID","OBP-50000: Unknown Error.","OBP-20001: User not logged in. Authentication is required!","OBP-20006: User is missing one or more roles: "],"tags":["Customer","User"],"typed_success_response_body":{"type":"object","properties":{"customers":{"type":"array","items":{"type":"object","properties":{"customer_id":{"type":"string"},"bank_id":{"type":"string"}}}}}},"roles":[{"role":"CanGetCustomersMinimal","requires_bank_id":true}],"is_featured":false,"special_instructions":"","specified_url":"/obp/v5.1.0/banks/BANK_ID/customers-minimal","connector_methods":["obp.getCustomers"]},{"operation_id":"OBPv3.1.0-getAllEntitlements","implemented_by":{"version":"OBPv3.1.0","function":"getAllEntitlements"},"request_verb":"GET","request_url":"/obp/v3.1.0/entitlements","summary":"Get all Entitlements","description":"Login is required.
\nPossible filter on the role field:
\neg: /entitlements?role=CanGetCustomer
\nAuthentication is Mandatory
\nJSON response body fields:
\nbank_id: gh.29.uk
\n\nlist:
\n\n","description_markdown":"Login is required.\n\nPossible filter on the role field:\n\neg: /entitlements?role=CanGetCustomer\n\n\n\n \n\nAuthentication is Mandatory\n\n\n**JSON response body fields:**\n\n\n\n[**bank_id**](/glossary#): gh.29.uk\n\n\n\n[**entitlement_id**](/glossary#entitlement_id): \n\n\n\n[**list**](/glossary#list): \n\n\n\n[**role_name**](/glossary#role_name): \n\n\n","success_response_body":{"list":[{"entitlement_id":"6fb17583-1e49-4435-bb74-a14fe0996723","role_name":"CanQueryOtherUser","bank_id":"gh.29.uk"}]},"error_response_bodies":["OBP-20001: User not logged in. Authentication is required!","OBP-50000: Unknown Error."],"tags":["Role","Entitlement"],"typed_success_response_body":{"type":"object","properties":{"list":{"type":"array","items":{"type":"object","properties":{"role_name":{"type":"string"},"bank_id":{"type":"string"},"entitlement_id":{"type":"string"}}}}}},"is_featured":false,"special_instructions":"","specified_url":"/obp/v5.1.0/entitlements","connector_methods":["obp.getBankAccountsForUser"]},{"operation_id":"OBPv5.0.0-getCustomersAtOneBank","implemented_by":{"version":"OBPv5.0.0","function":"getCustomersAtOneBank"},"request_verb":"GET","request_url":"/obp/v5.0.0/banks/BANK_ID/customers","summary":"Get Customers at Bank","description":"Get Customers at Bank.
\nAuthentication is Mandatory
\nURL Parameters:
\nBANK_ID: gh.29.uk
\nJSON response body fields:
\namount: 10.12
\nbank_id: gh.29.uk
\nbranch_id: DERBY6
\ncurrency: EUR
\ncustomer_id: 7uy8a7e4-6d02-40e3-a129-0b2bf89de8uh
\ncustomer_number: 5987953
\n\ndate: 2020-01-27
\ndate_of_birth: 2018-03-09
\ndependants: 1
\ndob_of_dependants: [2019-09-08, 2017-07-12]
\n\nemployment_status: worker
\n\nhighest_education_attained: Master
\nkyc_status: true
\nlast_ok_date: 2023-03-28T00:00:41.846Z
\nlegal_name: Eveline Tripman
\nmobile_phone_number: +49 30 901820
\nname_suffix: Sr
\n\nrelationship_status: single
\n\ntitle: Dr.
\nurl: http://www.example.com/id-docs/123/image.png
\n\n\n","description_markdown":"Get Customers at Bank.\n\n\nAuthentication is Mandatory\n\n\n**URL Parameters:**\n\n[BANK_ID](/glossary#Bank.bank_id): gh.29.uk\n\n\n\n\n\n**JSON response body fields:**\n\n\n\n[**amount**](/glossary#): 10.12\n\n\n\n[**bank_id**](/glossary#): gh.29.uk\n\n\n\n[**branch_id**](/glossary#): DERBY6\n\n\n\n[**currency**](/glossary#): EUR\n\n\n\n[**customer_id**](/glossary#): 7uy8a7e4-6d02-40e3-a129-0b2bf89de8uh\n\n\n\n[**customer_number**](/glossary#): 5987953\n\n\n\n[**customers**](/glossary#customers): \n\n\n\n[**date**](/glossary#): 2020-01-27\n\n\n\n[**date_of_birth**](/glossary#): 2018-03-09\n\n\n\n[**dependants**](/glossary#): 1\n\n\n\n[**dob_of_dependants**](/glossary#dob_of_dependants): [2019-09-08, 2017-07-12]\n\n\n\n[**email**](/glossary#): felixsmith@example.com\n\n\n\n[**employment_status**](/glossary#): worker\n\n\n\n[**face_image**](/glossary#face_image): \n\n\n\n[**highest_education_attained**](/glossary#): Master\n\n\n\n[**kyc_status**](/glossary#): true\n\n\n\n[**last_ok_date**](/glossary#last_ok_date): 2023-03-28T00:00:41.846Z\n\n\n\n[**legal_name**](/glossary#): Eveline Tripman\n\n\n\n[**mobile_phone_number**](/glossary#mobile_phone_number): +49 30 901820\n\n\n\n[**name_suffix**](/glossary#): Sr\n\n\n\n[**rating**](/glossary#): \n\n\n\n[**relationship_status**](/glossary#): single\n\n\n\n[**source**](/glossary#): \n\n\n\n[**title**](/glossary#): Dr.\n\n\n\n[**url**](/glossary#): http://www.example.com/id-docs/123/image.png\n\n\n\n[credit_limit](/glossary#credit_limit): \n\n\n\n[credit_rating](/glossary#credit_rating): \n\n\n","success_response_body":{"customers":[{"bank_id":"gh.29.uk","customer_id":"7uy8a7e4-6d02-40e3-a129-0b2bf89de8uh","customer_number":"5987953","legal_name":"Eveline Tripman","mobile_phone_number":"+44 07972 444 876","email":"felixsmith@example.com","face_image":{"url":"www.openbankproject","date":"1100-01-01T00:00:00Z"},"date_of_birth":"19900101","relationship_status":"single","dependants":1,"dob_of_dependants":["19900101"],"credit_rating":{"rating":"OBP","source":"OBP"},"credit_limit":{"currency":"EUR","amount":"0"},"highest_education_attained":"Master","employment_status":"worker","kyc_status":true,"last_ok_date":"2023-03-28T00:00:42Z","title":"Dr.","branch_id":"DERBY6","name_suffix":"Sr"}]},"error_response_bodies":["OBP-20001: User not logged in. Authentication is required!","OBP-30008: User Customer Link not found by USER_ID","OBP-50000: Unknown Error.","OBP-20006: User is missing one or more roles: "],"tags":["Customer","User"],"typed_success_response_body":{"type":"object","properties":{"customers":{"type":"array","items":{"type":"object","properties":{"dependants":{"type":"integer"},"face_image":{"type":"object","properties":{"url":{"type":"string"},"date":{"type":"string","format":"date-time"}}},"credit_limit":{"type":"object","properties":{"currency":{"type":"string"},"amount":{"type":"string"}}},"employment_status":{"type":"string"},"email":{"type":"string"},"customer_id":{"type":"string"},"relationship_status":{"type":"string"},"last_ok_date":{"type":"string","format":"date-time"},"bank_id":{"type":"string"},"highest_education_attained":{"type":"string"},"customer_number":{"type":"string"},"credit_rating":{"type":"object","properties":{"rating":{"type":"string"},"source":{"type":"string"}}},"name_suffix":{"type":"string"},"date_of_birth":{"type":"string"},"legal_name":{"type":"string"},"title":{"type":"string"},"dob_of_dependants":{"type":"array","items":{"type":"string"}},"branch_id":{"type":"string"},"mobile_phone_number":{"type":"string"},"kyc_status":{"type":"boolean"}}}}}},"roles":[{"role":"CanGetCustomers","requires_bank_id":true}],"is_featured":false,"special_instructions":"","specified_url":"/obp/v5.1.0/banks/BANK_ID/customers","connector_methods":["obp.getCustomers"]},{"operation_id":"OBPv4.0.0-createUserCustomerLinks","implemented_by":{"version":"OBPv4.0.0","function":"createUserCustomerLinks"},"request_verb":"POST","request_url":"/obp/v4.0.0/banks/BANK_ID/user_customer_links","summary":"Create User Customer Link","description":"Link a User to a Customer
\nAuthentication is Mandatory
\nURL Parameters:
\nBANK_ID: gh.29.uk
\nJSON request body fields:
\ncustomer_id: 7uy8a7e4-6d02-40e3-a129-0b2bf89de8uh
\nuser_id: 9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1
\nJSON response body fields:
\ncustomer_id: 7uy8a7e4-6d02-40e3-a129-0b2bf89de8uh
\n\nis_active: true
\n\nuser_id: 9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1
\n","description_markdown":"Link a User to a Customer\n\nAuthentication is Mandatory\n\n\n**URL Parameters:**\n\n[BANK_ID](/glossary#Bank.bank_id): gh.29.uk\n\n\n\n\n\n**JSON request body fields:**\n\n\n\n[**customer_id**](/glossary#): 7uy8a7e4-6d02-40e3-a129-0b2bf89de8uh\n\n\n\n[**user_id**](/glossary#): 9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1\n\n\n\n\n\n**JSON response body fields:**\n\n\n\n[**customer_id**](/glossary#): 7uy8a7e4-6d02-40e3-a129-0b2bf89de8uh\n\n\n\n[**date_inserted**](/glossary#date_inserted): \n\n\n\n[**is_active**](/glossary#is_active): true\n\n\n\n[**user_customer_link_id**](/glossary#user_customer_link_id): \n\n\n\n[**user_id**](/glossary#): 9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1\n\n\n","example_request_body":{"user_id":"9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1","customer_id":"7uy8a7e4-6d02-40e3-a129-0b2bf89de8uh"},"success_response_body":{"user_customer_link_id":"9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1","customer_id":"7uy8a7e4-6d02-40e3-a129-0b2bf89de8uh","user_id":"9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1","date_inserted":"1100-01-01T00:00:00Z","is_active":true},"error_response_bodies":["OBP-20001: User not logged in. Authentication is required!","OBP-30111: Invalid Bank Id. The BANK_ID should only contain 0-9/a-z/A-Z/'-'/'.'/'_', the length should be smaller than 255.","OBP-30001: Bank not found. Please specify a valid value for BANK_ID.","OBP-10001: Incorrect json format.","OBP-30046: Customer not found. Please specify a valid value for CUSTOMER_ID.","OBP-20006: User is missing one or more roles: ","OBP-30007: The User is already linked to a Customer at the bank specified by BANK_ID","OBP-30025: Could not create user_customer_links ","OBP-50000: Unknown Error."],"tags":["Customer","User"],"typed_request_body":{"type":"object","properties":{"customer_id":{"type":"string"},"user_id":{"type":"string"}}},"typed_success_response_body":{"type":"object","properties":{"user_customer_link_id":{"type":"string"},"customer_id":{"type":"string"},"is_active":{"type":"boolean"},"date_inserted":{"type":"string","format":"date-time"},"user_id":{"type":"string"}}},"roles":[{"role":"CanCreateUserCustomerLinkAtAnyBank","requires_bank_id":false},{"role":"CanCreateUserCustomerLink","requires_bank_id":true}],"is_featured":false,"special_instructions":"","specified_url":"/obp/v5.1.0/banks/BANK_ID/user_customer_links","connector_methods":["obp.getCustomerByCustomerId"]},{"operation_id":"OBPv4.0.0-resetPasswordUrl","implemented_by":{"version":"OBPv4.0.0","function":"resetPasswordUrl"},"request_verb":"POST","request_url":"/obp/v4.0.0/management/user/reset-password-url","summary":"Create password reset url","description":"Create password reset url.
\nAuthentication is Mandatory
\nJSON request body fields:
\n\nuser_id: 9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1
\nusername: felixsmith
\nJSON response body fields:
\n\n","description_markdown":"Create password reset url.\n\n\n\nAuthentication is Mandatory\n\n\n**JSON request body fields:**\n\n\n\n[**email**](/glossary#): felixsmith@example.com\n\n\n\n[**user_id**](/glossary#): 9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1\n\n\n\n[**username**](/glossary#): felixsmith\n\n\n\n\n\n**JSON response body fields:**\n\n\n\n[**reset_password_url**](/glossary#reset_password_url): \n\n\n","example_request_body":{"username":"jobloggs","email":"jo@gmail.com","user_id":"74a8ebcc-10e4-4036-bef3-9835922246bf"},"success_response_body":{"reset_password_url":"https://apisandbox.openbankproject.com/user_mgt/reset_password/QOL1CPNJPCZ4BRMPX3Z01DPOX1HMGU3L"},"error_response_bodies":["OBP-20001: User not logged in. Authentication is required!","OBP-20006: User is missing one or more roles: ","OBP-10001: Incorrect json format.","OBP-50000: Unknown Error."],"tags":["User"],"typed_request_body":{"type":"object","properties":{"user_id":{"type":"string"},"username":{"type":"string"},"email":{"type":"string"}}},"typed_success_response_body":{"type":"object","properties":{"reset_password_url":{"type":"string"}}},"roles":[{"role":"CanCreateResetPasswordUrl","requires_bank_id":false}],"is_featured":false,"special_instructions":"","specified_url":"/obp/v5.1.0/management/user/reset-password-url","connector_methods":[]},{"operation_id":"OBPv2.0.0-deleteEntitlement","implemented_by":{"version":"OBPv2.0.0","function":"deleteEntitlement"},"request_verb":"DELETE","request_url":"/obp/v2.0.0/users/USER_ID/entitlement/ENTITLEMENT_ID","summary":"Delete Entitlement","description":"Delete Entitlement specified by ENTITLEMENT_ID for an user specified by USER_ID
\nAuthentication is required and the user needs to be a Super Admin.
\nSuper Admins are listed in the Props file.
Authentication is Mandatory
\nURL Parameters:
\n\nUSER_ID: 9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1
\nJSON response body fields:
\n","description_markdown":"Delete Entitlement specified by ENTITLEMENT_ID for an user specified by USER_ID\n\nAuthentication is required and the user needs to be a Super Admin.\nSuper Admins are listed in the Props file.\n\n\n \n\nAuthentication is Mandatory\n\n\n**URL Parameters:**\n\n[ENTITLEMENT_ID](/glossary#entitlement_id): \n\n\n\n[USER_ID](/glossary#User.user_id): 9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1\n\n\n\n\n\n**JSON response body fields:**\n\n\n","example_request_body":{"jsonString":"{}"},"success_response_body":{"jsonString":"{}"},"error_response_bodies":["OBP-20001: User not logged in. Authentication is required!","OBP-30212: EntitlementId not found","OBP-50000: Unknown Error."],"tags":["Role","User","Entitlement"],"typed_request_body":{"type":"object","properties":{"jsonString":{"type":"string"}}},"typed_success_response_body":{"type":"object","properties":{"jsonString":{"type":"string"}}},"is_featured":false,"special_instructions":"","specified_url":"/obp/v5.1.0/users/USER_ID/entitlement/ENTITLEMENT_ID","connector_methods":["obp.getBankAccountsForUser"]},{"operation_id":"OBPv5.0.0-getConsentRequest","implemented_by":{"version":"OBPv5.0.0","function":"getConsentRequest"},"request_verb":"GET","request_url":"/obp/v5.0.0/consumer/consent-requests/CONSENT_REQUEST_ID","summary":"Get Consent Request","description":"Authentication is Optional
\nURL Parameters:
\nCONSENT_REQUEST_ID: 8ca8a7e4-6d02-40e3-a129-0b2bf89de9f0
\nJSON response body fields:
\nconsent_request_id: 8ca8a7e4-6d02-40e3-a129-0b2bf89de9f0
\nconsumer_id: 7uy8a7e4-6d02-40e3-a129-0b2bf89de8uh
\npayload: payload
\n","description_markdown":"Authentication is Optional\n\n\n**URL Parameters:**\n\n[CONSENT_REQUEST_ID](/glossary#consent_request_id): 8ca8a7e4-6d02-40e3-a129-0b2bf89de9f0\n\n\n\n\n\n**JSON response body fields:**\n\n\n\n[**consent_request_id**](/glossary#consent_request_id): 8ca8a7e4-6d02-40e3-a129-0b2bf89de9f0\n\n\n\n[**consumer_id**](/glossary#): 7uy8a7e4-6d02-40e3-a129-0b2bf89de8uh\n\n\n\n[**payload**](/glossary#payload): payload\n\n\n","success_response_body":{"consent_request_id":"8ca8a7e4-6d02-40e3-a129-0b2bf89de9f0","payload":{"everything":false,"account_access":[{"account_routing":{"scheme":"AccountNumber","address":"4930396"},"view_id":"owner"}],"phone_number":"+44 07972 444 876","valid_from":"2022-06-14T12:42:00Z","time_to_live":3600},"consumer_id":"7uy8a7e4-6d02-40e3-a129-0b2bf89de8uh"},"error_response_bodies":["OBP-30001: Bank not found. Please specify a valid value for BANK_ID.","OBP-35028: Consent Request not found by CONSENT_REQUEST_ID. ","OBP-50000: Unknown Error."],"tags":["Consent","Account Information Service (AIS)","PSD2"],"typed_success_response_body":{"type":"object","properties":{"consumer_id":{"type":"string"},"payload":{"type":"object","properties":{"phone_number":{"type":"string"},"everything":{"type":"boolean"},"valid_from":{"type":"string"},"time_to_live":{"type":"integer"},"account_access":{"type":"array","items":{"type":"object","properties":{"account_routing":{"type":"object","properties":{"scheme":{"type":"string"},"address":{"type":"string"}}},"view_id":{"type":"string"}}}}}},"consent_request_id":{"type":"string"}}},"is_featured":false,"special_instructions":"","specified_url":"/obp/v5.1.0/consumer/consent-requests/CONSENT_REQUEST_ID","connector_methods":["obp.getBankAccountsForUser"]}]}