skyflow-node
Version:
Skyflow SDK for Node.js
70 lines (65 loc) • 1.35 kB
text/typescript
/*
Copyright (c) 2022 Skyflow, Inc.
*/
import {
Skyflow,
generateBearerToken,
isExpired,
setLogLevel,
LogLevel,
} from 'skyflow-node';
const filePath = '<YOUR_CREDENTIAL_FILE>';
setLogLevel(LogLevel.INFO);
let bearerToken = '';
const skyflow = Skyflow.init({
vaultID: '<VAULT_ID>',
vaultURL: '<VAULT_URL>',
getBearerToken: () => {
return new Promise((resolve, reject) => {
if (!isExpired(bearerToken)) {
resolve(bearerToken);
} else {
generateBearerToken(filePath)
.then(response => {
bearerToken = response.accessToken;
resolve(bearerToken);
})
.catch(err => {
reject(err);
});
}
});
},
});
const result = skyflow.insert(
{
records: [
{
fields: {
card_number: '411111111111111',
expiry_date: '11/22',
fullname: 'firstNameTest',
},
table: 'cards',
},
],
},
{
tokens: true,
upsert: [
{
table: 'cards', // Table.
column: 'card_number', // Unique column in the table.
},
],
}
);
result
.then(response => {
console.log('insert result:');
console.log(JSON.stringify(response));
})
.catch(error => {
console.log('insert error:');
console.log(JSON.stringify(error));
});