A Flinks API wrapper for Node.js
npm install node-flinks
import FlinksClient from 'node-flinks';
const instanceName = 'toolbox'; // Flinks sandbox instance
const clientId = '43387ca6-0391-4c82-857d-70d95f087ecb'; // Flinks sandbox clientId
const flinks = new FlinksClient(instanceName, clientId);
When using OAuth with Flinks you must first make a token
request where you exchange a clientId
, and secret
for a response that contains an accessToken
.
const flinksTokenResponse = await flinks.token( clientId: '<your clientId>', secret: '<your secret>');
After creating a token or if not using OAuth you need make an authorize
request where you exchange a loginId
for a requestId
.
const requestId = await flinks.authorize({ loginId: '<your loginId>' });
Once you have a requestId
you can request the user's accounts detail.
const accountsDetail = await flinks.getAccountsDetail({ requestId: '<your requestId from earlier' });
This library uses the debug library. To print debug messages for node-flinks
set DEBUG=node-flinks:*
.
The API of this library mostly follows the Flinks API as specified in the REST API docs. The main difference is that the Flinks API uses PascalCase for object keys and this library uses camelCase.
Here is a list of all the Flinks API endpoints along with the corresponding library method. We have not yet implemented all the endpoints in the Flinks REST API. If an endpoint you need is missing please consider submitting a pull request.
Endpoint | Client Method | Reference |
---|---|---|
/AnswerMFAQuestions |
Not implemented | Docs |
/Attributes |
Not implemented | Docs |
/Authorize |
authorize |
Docs |
/DeleteCard |
Not implemented | Docs |
/GenerateAuthorizeToken |
Not implemented | Docs |
/GetAccountsDetail |
getAccountsDetail |
Docs |
/GetAccountsDetailAsync |
getAccountsDetailAsync |
Docs |
/GetAccountsSummary |
getAccountsSummary |
Docs |
/GetAccountsSummaryAsync |
getAccountsSummaryAsync |
Docs |
/GetAllAttributes |
Not implemented | Docs |
/GetCreditRiskAttributes |
Not implemented | Docs |
/GetIncomeAttributes |
Not implemented | Docs |
/GetMFAQuestions |
Not implemented | Docs |
/GetStatements |
getStatements |
Docs |
/GetUserAnalysisAttributes |
Not implemented | Docs |
/Investments |
Not implemented | Docs |
/SetScheduledRefresh |
Not implemented | Docs |
/Token |
token |
Docs |
- Clone this repo
npm install
npm link
- In the package you want to test in run
npm link node-flinks
- Build package with
npm run build
or turn on watch mode withnpm run watch
If you need to clear the build cache run npm run clean
- Update the version in
package.json
- Add a
CHANGELOG
entry - Commit your changes
- Run
npm pack --dry-run
to see what will be published - Run
npm publish
- Create a release on GitHub. Use the version as the tag and release name. For example for version
1.0.0
the tag and release name would bev1.0.0
.