Get Account Metadata
Method is used to obtain configuration information of users bank. If using Create Transfer
this information is required to identify flow and processing logic of the transaction.
Configuration returned by the endpoint includes:
beneficiaryCoolDownPeriod
- How much time must pass before being able to use newly registered beneficiaryisCreateBeneficiaryEndpointRequired
- Whether bank required registration of the beneficiary to perform a transactiontransferBounds
- Transaction limits supported by the banktransactionRange
- Date range of transactions available for banks users
Pre-Requirement
You have obtained user's permanent access token from
Exchange Token
endpointTo read more about authentication process and access token please refer to Authentication Documentation
Request
https://api.dapi.com/v2/metadata/accounts/get
Headers
Parameter | Type | Description |
---|---|---|
Authorization REQUIRED | String | Set type to bearer token and the value to the accessToken obtained using the Exchange Token request. |
Body Parameters
Parameter | Type | Description |
---|---|---|
appSecret REQUIRED | String | Private token generated at application creation. |
userSecret REQUIRED | String | Encrypted version of the userKey . |
Request Example
{
"appSecret": "00bae841ad979345fca2e2585c000da7eac420504d189cf63315e7a6234d45c68dbd6fff749167292cd1475622805dce7a2b979db3c16e25a2897158ee63845b1043930ff603e19deb1d2d54ad9afc3d52df241d3c4e7286244a2f98a10212e38b2e9f8b0e3a7592702fa4358fb9103b93a26dd6bb92c2be0327ac054f14becc",
"userSecret": "DSv56dS/PB7QGJI/IGX4qKDhGVhIvQQhWo4zxTDT0gn079JlHnUSSq8NAtavX4fpHj7PGQ74BzVXBO9pFHXdSeLCMnayKLTLD0+zmMu7wfGzy+ZhkYTBe040CXWQ+AYaPhGTzfVWu3Lz6oM2QnqM9X56BbvpC80tN8Zg72VJHWC6YjazdQQ2NK0pl9+ePbmqn7PNjFKLhipgpTl7Hw3kvnLrSIC9AcXzVYQeSWYAv3LAEbECB1aNLXC0glMG2W7L2iLTMwy54wHbXXfSQlK9S6X7wmnZ0tn28H0MwMqWdLLtxvcFyYlMr3E0hqYnK4a5sU0IvF1yJAMHMBCbjw2Trnx2VMuX5IWjdxScfh+8IxWGvKl6RypksJTyNg100H+Q+j0vfKW/bOijFolZgHJtAxUowPlewK9JwoWahkbX2KTGoqQbSCh6KSzaCxdbg7ykNI5n+m6vdoWzGfZGFYjfgMX6aMInAM3b32ZAp9DlfFxRkg3oeoLBuTGTz73E51bZj9mGgD0FxkIXFPIWGx0WyxoYpMEesJeT8phNy0G82Bd7qzWCPGP4gK70jGpqfCWsvj1XZKMMMjReCdUrhtXKB4spQIFi+63WcGV7vDyWQdUTINOhmR8QfZOJoVm+VZgFiqCLI3Aa8AnoYw3UIPiheVjE5lxMulPNIP0QGMR31VY="
}
Response
Note
Your responses may differ from those listed below on a case-by-case basis.
Parameter | Type | Description |
---|---|---|
operationD | String | Unique ID generated to identify a specific operation. |
success | Boolean | Returns true if request is successful and false for all else. |
msg | `String | Descriptive message returned only in case of failure |
timestamp | Number | Timestamp of the operation. Is returned only in case of failure |
status | Enum( "done", "failed", "user_input_required", "initialized" ) | Job status. For further explanation see Job Status |
accountsMetadata | Object<AccountMetadata> | An object containing account metadata. |
Account Metadata schema
Parameter | Type | Description |
---|---|---|
routingNumber | String | The account's routing number. |
swiftCode | String | Bank's SWIFT code (e.g.: EBILAEAD ). |
sortCode | String | Bank's sort code. |
bankId | String | Bank's unique id given by Dapi. |
bankType | Enum( "retail", "business" ) | Bank type, retail (personal banking) or business (business banking) |
bankName | String | Bank's full name. |
branchName | String | Bank's branch name. |
branchAddress | String | Bank's branch address. |
isCreateBeneficiaryEndpointRequired | Boolean | If the bank requires calling the payment/beneficiaries/create endpoint before initiating a transfer. |
country | Object<Country> | Object containing country information. |
address | Object<Address> | Object containing the account's address information. |
transferBounds | Array<TransferBounds> | Array containing information about account transfer bounds. |
beneficiaryCoolDownPeriod | Object<CoolDownPeriod> | An object containing information about whether there is a beneficiary cool down period and its duration. |
transactionRange | Object<TransactionRange> | An object containing information about the available transactions time period. |
Country schema
Parameter | Type | Description |
---|---|---|
code | String | The ISO 3166-1 alpha-2 code of the country. |
name | String | The full name of the country. |
Address schema
Parameter | Type | Description |
---|---|---|
line1 | String | Street name and number. |
line2 | String | City name. |
line3 | String | Country name. |
TransferBounds schema
Parameter | Type | Description |
---|---|---|
minimum | Number | Minimum amount allowed to transfer from the bank for selected type of beneficiary. |
type | Enum( "same", "local", "intl" ) | Type of beneficiary which can be a same bank beneficiary, local bank beneficiary or an international beneficiary. |
currency | Object<Currency> | Object containing currency information for the minimum amount of transfer allowed. |
Currency schema
Parameter | Type | Description |
---|---|---|
code | String | ISO 4217 code of the currency. |
name | String | Currency's full name. |
Cool down period schema
Parameter | Type | Description |
---|---|---|
value | Number | Duration of the cool down period. |
unit | Enum( "hrs" ) | Duration's unit. |
Transaction range schema
Parameter | Type | Description |
---|---|---|
value | Number | How far back transactions can be retrieved from the financial institution. |
unit | `Enum( "days" ) | Unit used to specify the duration. |
Response Example
{
"operationID": "c9ee4784-4bcc-4b0f-99af-8583c47fdb77",
"success": true,
"status": "done",
"accountsMetadata": {
"swiftCode": null,
"sortCode": null,
"bankId": "DAPIBANK_AE_DAPI1",
"bankName": "DAPI Sandbox Bank",
"branchName": "dapi CA",
"bankType": "retail",
"branchAddress": "san francisco, ca, usa",
"address": {
"line1": "6c marasi drive",
"line2": "new york",
"line3": "united states of america"
},
"transferBounds": [
{
"minimum": 1,
"currency": {
"code": "USD",
"name": "US DOLLAR"
},
"type": "same"
},
{
"minimum": 1,
"currency": {
"code": "USD",
"name": "US DOLLAR"
},
"type": "local"
}
],
"beneficiaryCoolDownPeriod": {
"value": 0,
"unit": "hrs"
},
"isCreateBeneficiaryEndpointRequired": true,
"willNewlyAddedBeneficiaryExistBeforeCoolDownPeriod": true,
"country": {
"code": "US",
"name": "UNITED STATES OF AMERICA"
},
"transactionRange": {
"unit": "days",
"value": 30
}
}
}
Successful Request / Response
Successful Request
{
"appSecret": "00bae841ad979345fca2e2585c000da7eac420504d189cf63315e7a6234d45c68dbd6fff749167292cd1475622805dce7a2b979db3c16e25a2897158ee63845b1043930ff603e19deb1d2d54ad9afc3d52df241d3c4e7286244a2f98a10212e38b2e9f8b0e3a7592702fa4358fb9103b93a26dd6bb92c2be0327ac054f14becc",
"userSecret": "DSv56dS/PB7QGJI/IGX4qKDhGVhIvQQhWo4zxTDT0gn079JlHnUSSq8NAtavX4fpHj7PGQ74BzVXBO9pFHXdSeLCMnayKLTLD0+zmMu7wfGzy+ZhkYTBe040CXWQ+AYaPhGTzfVWu3Lz6oM2QnqM9X56BbvpC80tN8Zg72VJHWC6YjazdQQ2NK0pl9+ePbmqn7PNjFKLhipgpTl7Hw3kvnLrSIC9AcXzVYQeSWYAv3LAEbECB1aNLXC0glMG2W7L2iLTMwy54wHbXXfSQlK9S6X7wmnZ0tn28H0MwMqWdLLtxvcFyYlMr3E0hqYnK4a5sU0IvF1yJAMHMBCbjw2Trnx2VMuX5IWjdxScfh+8IxWGvKl6RypksJTyNg100H+Q+j0vfKW/bOijFolZgHJtAxUowPlewK9JwoWahkbX2KTGoqQbSCh6KSzaCxdbg7ykNI5n+m6vdoWzGfZGFYjfgMX6aMInAM3b32ZAp9DlfFxRkg3oeoLBuTGTz73E51bZj9mGgD0FxkIXFPIWGx0WyxoYpMEesJeT8phNy0G82Bd7qzWCPGP4gK70jGpqfCWsvj1XZKMMMjReCdUrhtXKB4spQIFi+63WcGV7vDyWQdUTINOhmR8QfZOJoVm+VZgFiqCLI3Aa8AnoYw3UIPiheVjE5lxMulPNIP0QGMR31VY="
}
Successful Response
{
"operationID": "c9ee4784-4bcc-4b0f-99af-8583c47fdb77",
"success": true,
"status": "done",
"accountsMetadata": {
"swiftCode": null,
"sortCode": null,
"bankId": "DAPIBANK_AE_DAPI1",
"bankName": "DAPI Sandbox Bank",
"branchName": "dapi CA",
"bankType": "retail",
"branchAddress": "san francisco, ca, usa",
"address": {
"line1": "6c marasi drive",
"line2": "new york",
"line3": "united states of america"
},
"transferBounds": [
{
"minimum": 1,
"currency": {
"code": "USD",
"name": "US DOLLAR"
},
"type": "same"
},
{
"minimum": 1,
"currency": {
"code": "USD",
"name": "US DOLLAR"
},
"type": "local"
}
],
"beneficiaryCoolDownPeriod": {
"value": 0,
"unit": "hrs"
},
"isCreateBeneficiaryEndpointRequired": true,
"willNewlyAddedBeneficiaryExistBeforeCoolDownPeriod": true,
"country": {
"code": "US",
"name": "UNITED STATES OF AMERICA"
},
"transactionRange": {
"unit": "days",
"value": 30
}
}
}
Request / Response - When Invalid App Secret Is Specified
Request - When Invalid App Secret Is Specified
{
"appSecret": "invalid_secret",
"userSecret": "DSv56dS/PB7QGJI/IGX4qKDhGVhIvQQhWo4zxTDT0gn079JlHnUSSq8NAtavX4fpHj7PGQ74BzVXBO9pFHXdSeLCMnayKLTLD0+zmMu7wfGzy+ZhkYTBe040CXWQ+AYaPhGTzfVWu3Lz6oM2QnqM9X56BbvpC80tN8Zg72VJHWC6YjazdQQ2NK0pl9+ePbmqn7PNjFKLhipgpTl7Hw3kvnLrSIC9AcXzVYQeSWYAv3LAEbECB1aNLXC0glMG2W7L2iLTMwy54wHbXXfSQlK9S6X7wmnZ0tn28H0MwMqWdLLtxvcFyYlMr3E0hqYnK4a5sU0IvF1yJAMHMBCbjw2Trnx2VMuX5IWjdxScfh+8IxWGvKl6RypksJTyNg100H+Q+j0vfKW/bOijFolZgHJtAxUowPlewK9JwoWahkbX2KTGoqQbSCh6KSzaCxdbg7ykNI5n+m6vdoWzGfZGFYjfgMX6aMInAM3b32ZAp9DlfFxRkg3oeoLBuTGTz73E51bZj9mGgD0FxkIXFPIWGx0WyxoYpMEesJeT8phNy0G82Bd7qzWCPGP4gK70jGpqfCWsvj1XZKMMMjReCdUrhtXKB4spQIFi+63WcGV7vDyWQdUTINOhmR8QfZOJoVm+VZgFiqCLI3Aa8AnoYw3UIPiheVjE5lxMulPNIP0QGMR31VY="
}
Response - When Invalid App Secret Is Specified
{
"success": false,
"status": "failed",
"msg": "Invalid/expired token or invalid secret",
"timestamp": 1617057964976
}
Request / Response - When App Secret Is Not Specified
Request - When App Secret Is Not Specified
{
"userSecret": "DSv56dS/PB7QGJI/IGX4qKDhGVhIvQQhWo4zxTDT0gn079JlHnUSSq8NAtavX4fpHj7PGQ74BzVXBO9pFHXdSeLCMnayKLTLD0+zmMu7wfGzy+ZhkYTBe040CXWQ+AYaPhGTzfVWu3Lz6oM2QnqM9X56BbvpC80tN8Zg72VJHWC6YjazdQQ2NK0pl9+ePbmqn7PNjFKLhipgpTl7Hw3kvnLrSIC9AcXzVYQeSWYAv3LAEbECB1aNLXC0glMG2W7L2iLTMwy54wHbXXfSQlK9S6X7wmnZ0tn28H0MwMqWdLLtxvcFyYlMr3E0hqYnK4a5sU0IvF1yJAMHMBCbjw2Trnx2VMuX5IWjdxScfh+8IxWGvKl6RypksJTyNg100H+Q+j0vfKW/bOijFolZgHJtAxUowPlewK9JwoWahkbX2KTGoqQbSCh6KSzaCxdbg7ykNI5n+m6vdoWzGfZGFYjfgMX6aMInAM3b32ZAp9DlfFxRkg3oeoLBuTGTz73E51bZj9mGgD0FxkIXFPIWGx0WyxoYpMEesJeT8phNy0G82Bd7qzWCPGP4gK70jGpqfCWsvj1XZKMMMjReCdUrhtXKB4spQIFi+63WcGV7vDyWQdUTINOhmR8QfZOJoVm+VZgFiqCLI3Aa8AnoYw3UIPiheVjE5lxMulPNIP0QGMR31VY="
}
Response - When App Secret Is Not Specified
{
"success": false,
"status": "failed",
"msg": "The 'appSecret' field is required.",
"type": "VALIDATION_ERROR",
"timestamp": 1617058257299
}
Note
For more information and detailed breakdown of possible errors, please see Errors.
Updated about 1 year ago