StorX Storage Node SDK
StorX SDK to access all storage based APIs
Installation
npm install --save storx-storage-sdk
Setup
const StorxStorage = require('storx-storage-sdk');
const storxStorageFunctions = StorxStorage();
Quickly test that you can connect to the API with the following call:
storxStorageFunctions
.welcome({
token: 'Bearer <token>',
})
.then(result => {
console.log(result);
})
.catch(err => {
console.log(err);
});
API functions
Get Folder By ID
storxStorageFunctions
.getFolderById({
folderId: '<folderId>',
token: 'Bearer <token>',
teamId: '<teamId>',
})
.then(result => {
console.log(result);
})
.catch(err => {
console.log(err);
});
Create Folder
storxStorageFunctions
.createFolder({
folderName: '<folderName>',
parentFolderId: '<parentFolderId>',
token: 'Bearer <token>',
})
.then(result => {
console.log(result);
.catch(err => {
console.log(err);
});
Update Folder Metadata
storxStorageFunctions
.updateFolderMetadata({
folderId: '<folderId>',
metadata: '<metadata>',
token: 'Bearer <token>',
})
.then(result => {
console.log(result);
})
.catch(err => {
console.log(err);
});
Delete Folder
storxStorageFunctions
.deleteFolder({
folderId: '<folderId>',
token: 'Bearer <token>',
})
.then(result => {
console.log(result);
})
.catch(err => {
console.log(err);
});
Move Folder
storxStorageFunctions
.moveFolder({
folderId: '<folderId>',
destination: '<destinationId>',
token: 'Bearer <token>',
})
.then(result => {
console.log(result);
})
.catch(err => {
console.log(err);
});
Create File
storxStorageFunctions
.createFile({
file : {
fileId: '<file Id>',
bucket: '<bucket Id>',
size: '<file size>',
folder_id: '<folder Id>',
name: '<file Name>'
},
token: 'Bearer <token>',
})
.then(result => {
console.log(result);
.catch(err => {
console.log(err);
});
Upload File to Folder
storxStorageFunctions
.uploadFileToFolder({
data: '<file>',
folderId: '<folderId>',
mnemonic: '<account mnemonic paraphrase>',
token: 'Bearer <token>',
})
.then(result => {
console.log(result);
.catch(err => {
console.log(err);
});
Update File Metadata
storxStorageFunctions
.updateFileMetadata({
fileId: '<fileId>',
metadata: '<metadata>',
token: 'Bearer <token>',
})
.then(result => {
console.log(result);
})
.catch(err => {
console.log(err);
});
Move File
storxStorageFunctions
.moveFile({
fileId: '<fileId>',
destination: '<destinationId>',
token: 'Bearer <token>',
})
.then(result => {
console.log(result);
})
.catch(err => {
console.log(err);
});
Delete File from Folder
storxStorageFunctions
.deleteFileFromFolder({
fileId: '<fileId>',
folderId: '<folderId>',
token: 'Bearer <token>',
})
.then(result => {
console.log(result);
})
.catch(err => {
console.log(err);
});
Delete File from Bucket
storxStorageFunctions
.deleteFileFromBucket({
fileId: '<fileId>',
bucketId: '<bucketId>',
token: 'Bearer <token>',
})
.then(result => {
console.log(result);
})
.catch(err => {
console.log(err);
});
Create Share Token
storxStorageFunctions
.generateShareToken({
isFolder: '<isFolder>',
itemId: '<itemId>',
mnemonic: '<mnemonic>',
views: '<views>',
token: 'Bearer <token>',
})
.then(result => {
console.log(result);
})
.catch(err => {
console.log(err);
});
NOTE: getFileById and downloadEntityByToken are both download APIs. Hence, they wont have their functions and using those functions will return you empty object.
More to continue......
Dev Installation
Step 1 : Clone the repository.
Step 2 : Go to the project where you want to use this package.
Step 3 : npm install 'path of the cloned repository' and you should be able to access all functions in your project.
Step 4 : Once you make any changes in the repo, run 'npm run build'. This will update the functions you changed and also update the package in your project.