
Security News
Deno 2.2 Improves Dependency Management and Expands Node.js Compatibility
Deno 2.2 enhances Node.js compatibility, improves dependency management, adds OpenTelemetry support, and expands linting and task automation for developers.
node-my-info-sg
Advanced tools
[](https://badge.fury.io/js/node-my-info-sg) [](https://circleci.com/gh/stashaway-engineering/node-my-info-
Small wrapper around Singapore MyInfo V3 API for node JS. Wraps the scary-scary 😱 security logic into easy to use APIs
Lightly refactored from the excellent official example 🎉
Initialise MyInfoClient
const MyInfoClient = require('node-my-info-sg');
const myInfoClient = new MyInfoClient({
// MyInfo API base URL (sandbox/test/production)
// https://www.ndi-api.gov.sg/assets/lib/trusted-data/myinfo/specs/myinfo-kyc-v3.0.1.yaml.html#section/Environments/Available-Environments
baseUrl: 'https://sandbox.api.myinfo.gov.sg',
// Api auth level (L0 for sandbox; Otherwise L2)
authLevel: 'L0',
// Public key from MyInfo Consent Platform given to you during onboarding for RSA digital signature
publicCertPath: './ssl/stg-auth-signing-public.pem',
// Your private key for RSA digital signature
privateKeyPath: './ssl/stg-demoapp-client-privatekey-2018.pem',
// Your client_id provided to you during onboarding
clientId: 'STG2-MYINFO-SELF-TEST',
// Your client_secret provided to you during onboarding
clientSecret: '44d953c796cccebcec9bdc826852857ab412fbe2',
// Redirect URL for your web application
// https://www.ndi-api.gov.sg/library/trusted-data/myinfo/implementation-technical-requirements (Callback URLs)
redirectUrl: 'http://localhost:3001/callback',
});
Generate the OAuth2 url
var { authoriseUrl, state } = myInfoClient.getAuthoriseUrl(purpose, attributes);
// Then you can pass authoriseUrl to your frontend app and redirect the user
// (or open authoriseUrl on a WebView on your mobile apps)
//
// Note: You might want to store authoriseUrl, attributes, and state to fulfill the transaction log requirements
// https://www.ndi-api.gov.sg/library/trusted-data/myinfo/implementation-technical-requirements
Get the person object
// Exchange authorisation code with usable access token
myInfoClient.getToken(code)
// Get the person object
.then(({ accessToken }) => myInfoClient.getPerson(accessToken, _attributes))
// Now you can use the person object to pre-fill your form!
.then(({ person }) => console.log(JSON.stringify(person)));
yarn test
In the example directory, run:
yarn install
./start.sh
FAQs
[](https://badge.fury.io/js/node-my-info-sg) [](https://circleci.com/gh/stashaway-engineering/node-my-info-
The npm package node-my-info-sg receives a total of 4 weekly downloads. As such, node-my-info-sg popularity was classified as not popular.
We found that node-my-info-sg demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 2 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Deno 2.2 enhances Node.js compatibility, improves dependency management, adds OpenTelemetry support, and expands linting and task automation for developers.
Security News
React's CRA deprecation announcement sparked community criticism over framework recommendations, leading to quick updates acknowledging build tools like Vite as valid alternatives.
Security News
Ransomware payment rates hit an all-time low in 2024 as law enforcement crackdowns, stronger defenses, and shifting policies make attacks riskier and less profitable.