API Integrations
Overview
As mentioned in the API Reference page, here are some special modifications to the API Reference guide specific to FastLink 3 users. The specific endpoints affected are:
- GET /providers
- GET /accounts
- PUT /providerAccounts
- POST /verification
- GET /verification
GET /providers
In the GET /providers endpoint, please see these additional integration notes.
Only the datasets, attributes, and containers that are enabled for the customer will be returned in the response.
Input for the dataset$filter should adhere to the following expression:
<dataset.name>[<attribute.name>.container[ OR ] OR <attribute.name>.container[]]
OR <dataset.name>[<attribute.name> OR <attribute.name>]
Examples of dataset$filter value:
- ACCT_PROFILE[FULL_ACCT_NUMBER.container[bank OR investment OR creditCard]]
- ACCT_PROFILE[FULL_ACCT_NUMBER.container[bank]]
- BASIC_AGG_DATA[ACCOUNT_DETAILS.container[bank OR investment] OR HOLDINGS.container[bank]] OR ACCT_PROFILE[FULL_ACCT_NUMBER.container[bank]]
- BASIC_AGG_DATA
- BASIC_AGG_DATA OR ACCT_PROFILE
- BASIC_AGG_DATA [ ACCOUNT_DETAILS OR HOLDINGS ]
- BASIC_AGG_DATA [ BASIC_ACCOUNT_INFO OR ACCOUNT_DETAILS ]
The fullAcountNumberFields
is specified to filter the providers that have paymentAccountNumber
or unmaskedAccountNumber
support in the FULL_ACCT_NUMBER
dataset attribute. Examples for usage of fullAccountNumberFields
:
- dataset$filter=ACCT_PROFILE[ FULL_ACCT_NUMBER.container [ bank ]] & fullAccountNumberFields=paymentAccountNumber
- dataset$filter=ACCT_PROFILE[ FULL_ACCT_NUMBER.container [ bank ]] & fullAccountNumberFields=unmaskedAccountNumber
- dataset$filter=ACCT_PROFILE[ FULL_ACCT_NUMBER.container [ bank ]] & fullAccountNumberFields=unmaskedAccountNumber,paymentAccountNumber
GET /accounts
In the GET /accounts endpoint, please see these additional integration notes.
fullAccountNumber
is deprecated and is replaced withfullAccountNumberList
in include parameter and response.fullAccountNumberList
, PII (Personal Identifiable Information), and holder details are not available by default, as it is a premium feature that needs security approval. This will not be available for testing in the Sandbox environment.
For an example, /ysl/accounts?include=fullAccountNumberList
PUT /providerAccounts
In the PUT/providerAccounts endpoint, please see the following additional integration notes.
The update account API is used to:
- Retrieve the latest information for accounts that belong to one providerAccount from the provider site. You must allow at least 15 min between requests.
- Data to be retrieved from the provider site can be overridden using datasetName or dataset. If you do pass datasetName, all the datasets that are implicitly configured for the dataset will be retrieved. This action is allowed for single provider account refresh flows only.
- Updating preferences using this API will trigger refreshes.
For an example, PUT /providerAccounts/providerAccountIds={providerAccountId}
POST /verification
FastLink 3 customers should be able to use the POST /verification end point to initiate both MATCHING
and CHALLENGE_DEPOSIT
verification type.
Sample request to initiate the MATCHING
request:
- Request:
{
"verification":{
"providerAccountId":11457162,
"verificationType":"MATCHING"
}
}
- Response:
{
"verification":[
{
"accountId":14492469,
"verificationDate":"2022-01-05T13:12:47Z",
"reason":"ACCOUNT_HOLDER_MISMATCH",
"verificationType":"MATCHING",
"verificationStatus":"FAILED",
"providerAccountId":11979043,
"verificationId":10061712
},
{
"accountId":14492471,
"verificationDate":"2022-01-05T13:12:47Z",
"reason":"DATA_NOT_AVAILABLE",
"verificationType":"MATCHING",
"verificationStatus":"FAILED",
"providerAccountId":11979043,
"verificationId":10061713
},
{
"accountId":14492470,
"verificationDate":"2022-01-05T13:12:47Z",
"reason":"FULL_ACCOUNT_NUMBER_NOT_AVAILABLE",
"verificationType":"MATCHING",
"verificationStatus":"FAILED",
"providerAccountId":11979043,
"verificationId":10061714
}
]
}
GET /verification
FastLink 3 customers should be able to use the GET /verification end point to get the status of the verification request for both MATCHING
and CHALLENGE_DEPOSIT
verification type.
Sample request to get the MATCHING
status:
- Request:
GET - /verification?providerAccountId=11979043
- Response:
{
"verification":[
{
"accountId":14492469,
"verificationDate":"2022-01-05T13:12:47Z",
"reason":"ACCOUNT_HOLDER_MISMATCH",
"verificationType":"MATCHING",
"verificationStatus":"FAILED",
"providerAccountId":11979043,
"verificationId":10061712
},
{
"accountId":14492471,
"verificationDate":"2022-01-05T13:12:48Z",
"reason":"DATA_NOT_AVAILABLE",
"verificationType":"MATCHING",
"verificationStatus":"FAILED",
"providerAccountId":11979043,
"verificationId":10061713
},
{
"accountId":14492470,
"verificationDate":"2022-01-05T13:12:48Z",
"reason":"FULL_ACCOUNT_NUMBER_NOT_AVAILABLE",
"verificationType":"MATCHING",
"verificationStatus":"FAILED",
"providerAccountId":11979043,
"verificationId":10061714
}
]
}