Try for free with a $250 wallet credits

30+ scalable services for custom application development

  • Featured
  • AI/ML
  • Serverless
  • Backend
  • DevOps
ZiaServices

Ready-to-implement AI solutions to supercharge your business.

 
ConvoKraft

Build intelligent NLP-based chatbots that converses through text

 
QuickML

No code ML platform to build, train, evaluate, deploy, and optimize ML models facilitating data-driven decision-making.

 
Functions (FaaS)

Store the business logic of your application and use APIs to invoke Functions from the Catalyst servers.

 
AppSail

Fully-managed, independent, PaaS component to develop apps using popular frameworks and deploy them.

 
Circuits

Orchestrate tasks and automate workflows. Manage multiple tasks in parallel and ensure failure-handling with ease.

 
CloudScale

BaaS support to provide you with application storage, security, automation, and hosting solutions.

 
SmartBrowz

Manage and control a headless browser in Catalyst's cloud environment.

 
APM

Obtain in-depth insights about the executions of functions in your Catalyst application.

 
Logs

Access the records of all successful and failed executions instantly after they are executed.

 
Automation Testing

Automate the testing process of the APIs in your Catalyst application. Obtain real-time detailed reports and debug results.

 

Launch production ready applications in
WeeksDays

Digital Experiences

  • Digital Transformation
  • Legacy Migration
  • Mobile Apps
  • Web Apps

Intelligence

  • Conversational Agents
  • Intelligent Automation
  • Predictive Analytics
  • Personalization Engine

Utility Software

  • File Management
  • Spider Programs
  • Task Manager
  • Data Generators

Process

  • Workflow Automation
  • Orchestration
  • Integration
  • Hospital Management

SDKs to build robust applications quickly

  • Auth
  • Data Store
  • AI
  • File Store
Add new user

Provide end-user details like email address, last name, application platform, and the role to be added.

Reset password

After user registration, you can reset the password.

Sign In with 3rd party authentication

Authorization and validation by AuthO, Okta, OneLogin, and others.


import com.zc.component.users.PlatformType; 
import com.zc.component.users.ZCSignUpData; 
import com.zc.component.users.ZCUser;

//Get an instance of ZCSignUpData
ZCSignUpData signUpdetails = ZCSignUpData.getInstance();
//Pass the necessary data for the sign-up using the instance
signUpdetails.setPlatformType(PlatformType.WEB);
signUpdetails.userDetail.setEmailId( "p.boyle@zylker.com");
signUpdetails.userDetail.setLastName("Boyle");
signUpdetails.userDetail.setRoleId(1256000000228024L);
//Register the user using an instance of ZCUser class
signUpdetails = ZCUser.getInstance().registerUser(signUpdetails);
Copy Text

#Create a dictionary
signup_config = {
'platform_type': "web",
'zaid': 81008807534807534
}
user_details = {
'last_name': 'Burrows',
'role_id': '1008807534',
'email_id': 'amelia.burrows@zylker.com'
}
#Add a new user
authentication_service = app.authentication()
response_data = authentication_service.register_user(signup_config, user_details)
Copy Text

let userManagement = app.userManagement(); 
let registerPromise = userManagement.registerUser(signupConfig, userConfig);
//Pass the JSON configration to the method 
registerPromise.then(userDetails => { 
//Returns a promise
console.log(userDetails); 
});
Copy Text

var user = ZCatalystApp.getInstance()
newUser(emailId: 'Burrows', lastName: 'emma@zylker.com');
ZCatalystApp.getInstance().signUp(
newUser: user,
onSuccess: (APIResponse response, ZCatalystUser user) {
print('User sign up success: ${user.id}'); //Actions to be executed upon a successful login
},
onFailed: (ZCatalystException exception) {
print('Exception thrown: $exception'); //Actions to be executed upon failure 
});
Copy Text

//Enter the first name, last name, email id, platform and the redirect url
var data = {
"first_name": "Jason",
"last_name": "Chang",
"email_id": "jason.c@zylker.com",
"platform_type": "web",
"redirect_url": "https://shipmenttracking.zylker.com/"
}; 

var auth = catalyst.auth;
var signupPromise = auth.signUp(data);
signupPromise
.then((response) => {
console.log(response.content);
})
.catch((err) => {
console.log(err);
});
Copy Text

import com.zc.component.users.PlatformType;
import com.zc.component.users.ZCSignUpData;
import com.zc.component.users.ZCUser;

//Get an instance of the ZCSingUpData object 
ZCSignUpData signUpdetails = ZCSignUpData.getInstance();
//Set the necessary data for resetting password
signUpdetails.setPlatformType(PlatformType.WEB);
signUpdetails.userDetail.setEmailId("amelia.burrows@zylker.com");
signUpdetails.userDetail.setLastName("Burrows");
//Call reset password to send a mail to reset password
ZCUser.getInstance().resetPassword(signUpdetails);
                
Copy Text

#Create a dictionary
signupConfig = {
"platform_type": 'web',
'zaid': '10014774358'
}
userConfig = {
'last_name': 'Burrows',
'email_id': 'amelia.burrows@zohocorp.com'
};
#Reset user password
authentication_service = app.authentication()
response_data = authentication_service.reset_password(signup_config, user_details)
        
Copy Text

//Create Config Object for the user 
var signupConfig = { platform_type: 'web', zaid: 10014774358 }; 
var userConfig = { last_name: 'B', email_id: 'amelia.burrows@zohocorp.com' };

//Pass the configuration to reset the password which in turn returns a promise 
let userManagement = app.userManagement(); 
let resetPromise = userManagement.resetPassword(signupConfig, userConfig);
resetPromise.then(response => { console.log(response); });
                
Copy Text

//Create an object with the details such as email Id, platform and redirect url
var data = {
"email_id": "amelia.burrows@zohocorp.com",
"platform_type": "web",
"redirect_url": "https://catalyst.zoho.com"
};
//Reset password by passing the details. This in turn returns a promise.
var userManagement = catalyst.userManagement;
var forgotPromise = userManagement.forgotPassword(data);
forgotPromise
.then((response) => {
console.log(response.content);
})
.catch((err) => {
console.log(err);
});
            
Copy Text

ZCCustomTokenDetails customTokenDetails = ZCCustomTokenDetails.getInstance();
ZCCustomTokenUserDetails tokenUserDetails = ZCCustomTokenUserDetails.getInstance();
//Set token user details
tokenUserDetails.setEmailId("emma@zylker.com");
tokenUserDetails.setFirstName("Amelia");
tokenUserDetails.setLastName("Burrows");
tokenUserDetails.setRoleName("App Admin");
customTokenDetails.setUserDetails(tokenUserDetails);
ZCCustomTokenResponse customTokenResp = ZCUser.getInstance().generateCustomToken(customTokenDetails);
            
Copy Text

import zcatalyst
def handler(context, basicio):
app = zcatalyst.initialize()
auth = app.authentication()
resp = auth.generate_custom_token({
'type':'web',
'user_details': {
'first_name': 'mahesh',
'email_id': 'mahesh.annamalai@zohotest.com'
}
})
basicio.write(str(resp))
context.close() 
            
Copy Text

const catalystApp = catalyst.initialize(context);
const userManagement = catalystApp.userManagement();
userManagement.generateCustomToken({
type:'web',
user_details:{
email_id: "${email_id}",
first_name: "${first_name}",
last_name: "${last_name}",
org_id: "${org_id}",
phone_number: "${phone_number}",
country_code: "${country_code}",
role_name: "${role_name}"
}
});
        
Copy Text

<script src="https://static.zohocdn.comsdk/js/4.0.0/catalystWebSDK.js"></script>
<script src="/__catalyst/sdk/init.js">>/script>
<script>
catalyst.auth.signinWithJwt(getCustomTokenCallback);
function getCustomTokenCallback(){
return fetch("{domain}/server/{function_name}/execute")
//function url to get the generated custom token
.then(resp => resp.json()
.then(resp => {
return new Promise((resolve, reject) => {
resolve({
client_id : "********",
scopes : "ZOHOCATALYST.tables.rows.ALL,ZOHOCATALYST.cache.READ",
jwt_token : "*********"
});
});
}))
}
</script>

        
Copy Text
Insert Rows

Insert a new row(s) of data or record

Get All Rows

Retrieve all rows from a table

Update Rows

Insert single or multiple rows with one or more columns values


import com.zc.component.object.ZCObject; 
import com.zc.component.object.ZCRowObject; 
import com.zc.component.object.ZCTable;

//Create a base Object Instance 
ZCObject object = ZCObject.getInstance(); 
//Get a Table Instance referring the tableID on base object 
ZCTable tab = object.getTable("1510000000110121"); 
//Create a row instance 
ZCRowObject row = ZCRowObject.getInstance(); 
//Set the required column values using set() method on the row instance 
row.set("Name","George Smith"); 
row.set("Age", 25); 
//Add the single row to table by calling insertRow() method 
tab.insertRow(row);
                
Copy Text

#Insert a single row in the table
datastore_service = app.datastore()
table_service = datastore_service.table("Employee")
row_data = {'name': 'George Hamilton', 'id': '6868', 'age': '22'}
row_response = table_service.insert_row(row_data)
                
Copy Text

//Create a JSON object with the rows to be inserted 
let rowData = { Name: `George Hamilton`, Age: 22, ID: 6868 };
//Use the table meta object to insert the row which returns a promise 
let datastore = app.datastore(); 
let table = datastore.table('EmpDetails'); 
let insertPromise = table.insertRow(rowData); 
insertPromise.then((row) => {
console.log(row); });
            
Copy Text

//Create an array with the rows to be inserted
var details = [
{"Name": "Heather Drake", "Age": 26}, 
{"Name": "Lucy Park", "Age": 34}
];
//Insert the rows by passing the array, which in turn returns a promise
var datastore = catalyst.table;
var table = datastore.tableId('EmpDetails'); //Provide the table ID or table name to insert the rows
var insertPromise = table.addRow(details); //Pass the JSON array
insertPromise
.then((response) => {
console.log(response.content);
})
.catch((err) => {
console.log(err);
});
        
Copy Text

import com.zc.component.object.ZCObject; 
import com.zc.component.object.ZCRowObject;
import com.zc.component.object.ZCTable;

//Create a base object instance ZCObject
ZCObject obj = ZCObject.getInstance(); 
//Get a table instance referring to the table ID using the base object 
ZCTable tab = obj.getTable(1510000000110121L); 
//Fetch a single row from the table by passing the Row ID 
ZCRowObject row = tab.getRow(1510000000108103L);
Copy Text

# Get A Single Row
datastore_service = app.datastore()
table_service = datastore_service.table("CITY")
row_data = table_service.get_row(5249000000032385)
datastore_service = app.datastore()
table_service = datastore_service.table("Aliens")
def getMyPagedRows(next_token=None, more_records=True):
rows = table_service.get_paged_rows(next_token, max_rows=100)
more_records = rows['more_records']
if not more_records:
return None
next_token = rows['next_token']
return getMyPagedRows(next_token, more_records)
getMyPagedRows()
                
Copy Text

//Use the table instance or the table meta object
//to fetch a row by passing the Row ID 
let rowPromise = table.getRow(1510000000109476);
//Fetch rows through pagination and declare the value 
//for nextToken as undefined for the first iteration function
getMyPagedRows(hasNext = true, nextToken = undefined) 
{ 
if (!hasNext) 
{ 
return; 
} 
dataStore.table(195000000042025)
//Specify the Table ID of the table to fetch the records from 
.getPagedRows({ nextToken, maxRows: 100 }) 
//Define the maximum rows to be fetched in a single page and pass it along with nextToken 
.then(({ data, next_token, more_records
}) => { console.log('rows : ', data); 
//Fetch the rows from the table 
return getMyPagedRows(more_records, next_token);
//Fetch the next set of records and the token string for the next iteration 
}) .catch((err) => {
console.log(err.toString()); }); 
}
            
Copy Text

var table = dataStore.getTableInstance(identifier: 'Products');
table.getRow(
id: 2823000000014176,
onSuccess: (APIResponse response, ZCatalystRow row) {
print('Get Row Success');
print('The row details are: ${row.getData()}'); //Actions executed on successfully fetching the row
},
onFailed: (ZCatalystException exception) {
print('Get Row failed: $exception'); //Actions executed upon a failed state
},
);
            
Copy Text

//Fetch the row details by passing the row ID to the row object 
var datastore = catalyst.table; 
var table = datastore.tableId('ShipmentTracking'); 
var row = table.rowId(12781121212121); 
var rowPromise = row.get();
rowPromise.then((response) => { console.log(response.content); }) .catch((err) => { console.log(err); });
{
if (!hasNext) {
return;
} 
catalyst.table
.tableId('userDetails') //Specify the Table ID or Table name of the table to fetch the records from
.getPagedRows({ next_token, max_rows: 100 }) //Define the maximum rows to be fetched in a single page and pass it along with nextToken
.then(resp => {
console.log('rows : ', resp.content); //Fetch the rows from the table
return getMyPagedRows(resp.more_records, resp.next_token); //Fetch the next set of records and the token string for the next iteration
})
.catch((err) => {
console.log(err.toString());
}); 
}   
Copy Text

import com.zc.component.object.ZCObject; 
import com.zc.component.object.ZCRowObject; 
import com.zc.component.object.ZCTable;

//Create a base Object Instance 
ZCObject object = ZCObject.getInstance(); 
//Get a Table Instance referring the table ID on base object 
ZCTable table = object.getTable(1510000000110121L); // replace table ID
List  rows = new ArrayList(); 
ZCRowObject row1 = ZCRowObject.getInstance(); 
ZCRowObject row2 = ZCRowObject.getInstance(); 
//Set the updated value on the rows referring the ROWIDs 
row1.set("Name","Amelia S"); 
row1.set("Age", 19); 
row1.set("ROWID", 1510000000109113L);  // replace row id
row2.set("Name", "Walker Don"); 
row2.set("Age", 19); 
row2.set("ROWID", 1510000000109115L); // replace row id
rows.add(row1); 
rows.add(row2); 
table.updateRows(rows);
                
Copy Text

#Update a single row
datastore_service = app.datastore()
table_service = datastore_service.table("table_name")
row_data = {
'name': 'Mathew Jones', 
'id': '7211', 
'age': '31', 
'ROWID': 2136000000011011}
row_response = table_service.update_row(row_data)
logging.info(row_response)
#Update multiple rows
datastore_service = app.datastore()
table_service = datastore_service.table("Employee")
row_data = [{'name': 'Mathew Jones', 'id': '7211', 'age': '31', 'ROWID': 2136000000034043},
{'name': 'Rhonda Watson', 'id': '7212', 'age': '28', 'ROWID': 2136000000034045}]
row_response = table_service.update_rows(row_data)
Copy Text

//Data to be updated along with the ROWID 
let updatedRowsData = [{ Name: `Mathew Jones`, Age: 31, ROWID:
1510000000113298 }, { Name: `Rhonda Watson`, Age: 28, ROWID: 1510000000109474 }]; 
//Use Table Meta Object to update a multiple rows using ROWIDs which returns a promise 
let datastore = app.datastore(); 
let table = datastore.table('SampleTable'); 
let rowPromise = table.updateRows(updatedRowsData); 
rowPromise.then((rows) => {
console.log(rows); 
});
Copy Text

List modifiedRows = []; //Create an array
var table = ZCatalystApp.getInstance()
.getDataStoreInstance()
.getTableInstance(identifier: 'Products'); //Create table instance   
await table.getRow( //Fetch row instance for a row to be updated
id: 2823000000014176,
onSuccess: (APIResponse response, ZCatalystRow row) {
row.setColumnValue('product_price', '400'); //Pass the column name-value to be updated
modifiedRows.add(row); //Add the row instance to the array
},
onFailed: (ZCatalystException exception) {
print('Get Row Failed: $exception');
},
);
await table.getRow(
id: 2823000000014177,
onSuccess: (APIResponse response, ZCatalystRow row) {
row.setColumnValue('product_price', '90');
modifiedRows.add(row);
},
onFailed: (ZCatalystException exception) {
print('Get Row Failed: $exception');
},
);   
await table.getRow(
id: 2823000000014178,
onSuccess: (APIResponse response, ZCatalystRow row) {
row.setColumnValue('product_price', '100');
modifiedRows.add(row);
},
onFailed: (ZCatalystException exception) {
print('Get Row Failed: $exception');
},
);
//Pass the array containing the row instances to the updateRows() method
table.updateRows(
rows: modifiedRows,
onSuccess: (APIResponse response, List rows) {
print('The rows are updated successfully: $rows');
}, //Actions to be executed upon a successful update
onFailed: (ZCatalystException exception) {
print('Exception thrown: $exception'); //Actions to be handled upon a failed state
},
);
Copy Text

//Create an object with the details to be updated referring to the corresponding ROWID
var details = [
{ "Name": "John Denver", "Age": 25, "ROWID": 1510000000085482},
{ "Name": "Jill Scott", "Age": 39, "ROWID": 1510000000113707}
];
//Update The Row Object using details
var datastore = catalyst.table;
var table = datastore.tableId('SampleTable');
var updatePromise = table.updateRow(details);
updatePromise
.then((response) => {
console.log(response.content);
})
.catch((err) => {
console.log(err);
});
Copy Text
Optical Character Recognition

Detect textual characters in images or digital documents

Face Analytics

Perform facial detection in images.

Sentiment Analysis

Process textual content to recognize the tone of message.


import com.zc.component.ml.ZCContent; 
import com.zc.component.ml.ZCLine;
import com.zc.component.ml.ZCML; 
import com.zc.component.ml.ZCOCRModelType; 
import com.zc.component.ml.ZCOCROptions;
import com.zc.component.ml.ZCParagraph;
import java.io.File;

File file = new File("/Users/amelia-421/Desktop/MyImage.jpg"); 
//Specify the file path 
ZCOCROptions options = ZCOCROptions.getInstance().setModelType(ZCOCRModelType.OCR).setLanguageCode("eng,tam");
//Set the model type and languages 
ZCContent ocrContent = ZCML.getInstance().getContent(file, options); 
//Call getContent() with the file object to get the detected text in ZCContent object 
//To get individual paragraphs List
paragraphs = ocrContent.getParagraphs(); 
for(ZCParagraph paragraph : paragraphs)
{ 
//To get individual lines in the paragraph 
List paraLines = paragraph.lines; 
for(ZCLine line : paraLines)
{ 
//To get individual words in the line
String words = line.words; 
String text = line.text; 
//Raw line text 
} 
String text = paragraph.text; 
//Returns the raw paragraph text 
} 
String text = ocrContent.text; 
//Returns the raw image text
Copy Text

#OCR Implementation
import zcatalyst-sdk
app = zcatalyst-sdk.initialize()
zia = app.zia()
img = open('sample.jpg', 'rb')
result = zia.extract_optical_characters(img, {'language': 'eng', 'modelType': 'OCR'})
Copy Text

let fs = require('fs');  //Define the file stream for file attachments 
let result = await zia.extractOpticalCharacters(
fs.createReadStream('/Users/amelia-421/Desktop/MyDoc.jpg'), 
{
language:'eng', 
modelType: 'OCR'
}) ; 
console.log(result);
Copy Text

import com.zc.component.ml.ZCAge; 
import com.zc.component.ml.ZCAnalyseMode;
import com.zc.component.ml.ZCFaceAnalysisData; 
import com.zc.component.ml.ZCFaceAnalyticsOptions; 
import com.zc.component.ml.ZCFaceEmotion; 
import com.zc.component.ml.ZCFaceLandmark; 
import com.zc.component.ml.ZCFacePoints;
import com.zc.component.ml.ZCFaces; 
import com.zc.component.ml.ZCGender; 
import com.zc.component.ml.ZCML;
import java.io.File;

File file = new File("{filePath}"); 
//Specify the file path 
//Set each attribute detection as required or not required, and the mode of detection 
ZCFaceAnalyticsOptions options = ZCFaceAnalyticsOptions.getInstance().setAgeNeeded(false)
.setEmotionNeeded(true).setGenderNeeded(true).setAnalyseMode(ZCAnalyseMode.ADVANCED);
ZCFaceAnalysisData faceData = ZCML.getInstance().analyzeFace(file, options); 
//Call analyzeFace() with the file and options 
Long facesCount = faceData.getFacesCount(); 
//To obtain the count of faces in the image 
List faces = faceData.getFacesList(); 
for(ZCFaces face : faces)
{ 
//Executed for each detected face 
Double faceConfidence = face.getConfidence(); 
//To obtain the confidence score of each analysis 
ZCAge age = face.getAge(); 
//To get the age of the face 
ZCGender gender = face.getGender(); 
//To get the gender of the face 
ZCFaceEmotion emotion = face.getEmotion();
//To get smile information 
ZCFacePoints facePoints = face.getCoordinates(); 
//To get the coordinates of the face 
List faceLandmarks = face.getFaceLandmarks(); 
//To get the landmarks of the facial features 
}
Copy Text

#Face Analytics implementation
import zcatalyst-sdk
app = zcatalyst-sdk.initialize()
zia = app.zia()
img = open('sample.jpg', 'rb')
result = zia.analyse_face(img, {
'mode': 'moderate',
'age': True,
'emotion': True,
'gender': False
})
Copy Text

var zia = app.zia();
//Pass the input file, the mode, and the features to detect
zia.analyseFace(fs.createReadStream('./face.png'), {
mode: 'moderate',
age: true,
emotion: true,
gender: false
}).then((result) => {
console.log(result);
})
.catch((err) => console.log(err.toString())); //Push errors to Catalyst Logs
Copy Text

import org.json.simple.JSONArray; 
import com.catalyst.advanced.CatalystAdvancedIOHandler; 
import com.zc.component.ml.ZCML; 
import com.zc.component.ml.ZCSentenceAnalytics; 
import com.zc.component.ml.ZCSentimentAnalysisData; 
import com.zc.component.ml.ZCSentimentAnalysisDetails; 
import com.zc.component.ml.ZCSentimentConfidenceScore;
import java.io.File;

JSONArray textArray = new JSONArray(); 
textArray.add("ZylkerDB is one of their best products. I've been Zylker's customer for over a decade now, and I've always had a great experience with them."); 
//Input text to be processed 
JSONArray keywords = new JSONArray(); 
keywords.add("Zylker"); 
//Optional keywords, if you wish to process the sentences containing only these keywords 
List listOfSentimentAnalysisData = ZCML.getInstance().getSentimentAnalysis(textArray,keywords); 
//Input text is passed 
ZCSentimentAnalysisData sentimentAnalysisData = listOfSentimentAnalysisData.get(0); 
List SentimentAnalysisDetails = sentimentAnalysisData .getSentimentAnalysisDetails(); 
for (ZCSentimentAnalysisDetails sentimentAnalysis : SentimentAnalysisDetails) 
{ 
String sentiment = sentimentAnalysis.getDocumentSentiment(); 
//To obtain the overall sentiment of the text 
double overallScore = sentimentAnalysis.getOverallScore(); 
//To obtain the confidence score of the overall analysis 
List listOfSentenceAnalytics = sentimentAnalysis.getSentenceAnalytics(); 
//To obtain the sentiment of each sentence 
ZCSentenceAnalytics sentenceAnalytic = listOfSentenceAnalytics.get(0); 
String sentenceSentiment = sentenceAnalytic.getSentiment(); 
String sentence = sentenceAnalytic.getSentence(); 
ZCSentimentConfidenceScore sentenceLevelConfidenceScore = sentenceAnalytic.getConfidenceScore(); 
//To obtain the confidence score of each sentence analysis 
}
Copy Text

import zcatalyst-sdk
app = zcatalyst-sdk.initialize()
zia = app.zia()
result = zia.get_sentiment_analysis(['Zoho Corporation, is an Indian multinational 
technology company that makes web-based business tools. It is best known for 
Zoho Office Suite. The company was founded by Sridhar Vembu and Tony Thomas
and has a presence in seven locations with its global headquarters in Chennai, 
India, and corporate headquarters in Pleasanton, California.'],['Zoho'])
Copy Text

zia.getSentimentAnalysis(['Zoho Corporation, is an Indian multinational technology
company that makes web-based business tools. It is best known for Zoho Office Suite.
The company was founded by Sridhar Vembu and Tony Thomas and has a presence in 
seven locations with its global headquarters in Chennai, India, and corporate
headquarters in Pleasanton, California.'], ['Zoho']) 
//Pass the text and the optional keyword to process
.then((result) => console.log(result))
.catch((error) => console.log(error.toString()));
Copy Text
Upload File

Upload an image, CSV, text doc, or any file

Download File

Download any file from a folder

Delete File

Delete a file from a folder


import com.zc.component.files.ZCFile; 
import com.zc.component.files.ZCFolder;
import java.io.File;

// Create a file object 
File f = new File("empdetails.csv"); 
//Create an instance for the File Store 
ZCFile fileStore = ZCFile.getInstance(); 
//Get a folder instance using the Folder ID 
ZCFolder folder = fileStore.getFolderInstance(1510000000109393); 
//Upload the file using the folder instance 
folder.uploadFile(f);
Copy Text

config = {
'code': open('file.txt', "rb"),
'name': 'testFile.txt'
}
#Upload a file
filestore_service = app.filestore()
folder_service = filestore_service.folder(5249000000016011)
folder_service.upload_file(config)
Copy Text

//Create a JSON object with the file and its name, using the keys 'name' and 'code' 
let config = 
{ 
code:fs.createReadStream('empdata.csv'), name: 'testFile.txt' 
};
//Upload the file by passing the JSON config to the method, which in turn returns a promise 
let filestore = app.filestore(); 
let folder = filestore.folder(1510000000109545); 
//Provide the Folder ID 
let uploadPromise = folder.uploadFile(config); 
//Pass the JSON object created for the file 
uploadPromise.then((fileObject) => {
console.log(fileObject); 
});
Copy Text

ZCatalystFolder folder = ZCatalystApp.getInstance()
.getFileStoreInstance()
.getFolderInstance(2823000000006561); //Define the folder instance and specify the ID of the folder to upload the file in
folder.uploadFile(
'assets/images/product_image.jpg',
'sample_product', //Pass the file path and the file name to the uploadFile() method
(APIResponse response, ZCatalystFile file) {
print('File Upload Success: ${file.name}'); //Actions to be executed upon success
},
(ZCatalystException exception){
print('File Upload has failed: ${exception}'); //Actions to be executed upon failure
);
Copy Text

var filestore = catalyst.file;
var folder = filestore.folderId(7189310908031); //Specify the Folder ID
var uploadPromise = folder.uploadFile(fileobject).start(); //Pass the file object and upload the file
uploadPromise
.then((response) => {
console.log(response.content);
})
.catch((err) => {
console.log(err);
});
            
Copy Text

import com.zc.component.files.ZCFile; 
import com.zc.component.files.ZCFolder;

//Get an instance for the file store
ZCFile fileStore = ZCFile.getInstance(); 
//Get Folder details using folder ID 
ZCFolder folder = fileStore.getFolderInstance(1510000000109393L); 
//Download the File as an Input Stream using the file id 
InputStream is = folder.downloadFile(1510000000108418L);
Copy Text

filestore_service = app.filestore()
folder_service = filestore_service.folder(5249000000016011)
data = folder_service.download_file(5249000000032063)
Copy Text

//Download the file by passing the file ID to the method which in turn returns a promise 
let filestore = app.filestore(); 
let folder = filestore.folder(1510000000109545); 
let downloadPromise = folder.downloadFile(1510000000107568); 
downloadPromise.then((fileObject) => 
{ 
console.log(fileObject); 
});
Copy Text

ZCatalystFolder folder = ZCatalystApp.getInstance()
.getFileStoreInstance()
.getFolderInstance(2823000000006561);
folder.getFile(
2823000000006561,
(APIResponse response, ZCatalystFile file) {
file.download(
filePath: '/desktop/files/',
fileName: 'red.jpg',
onSuccess:
(FileAPIResponse fileApiResponse, String downloadFilePath) {
print(downloadFilePath);
},
onProgress: (int bytesWritten, int contentLength, double percentage) {
print('${percentage}%');
},
onFailed: (exception) {
print('Failed to download the file: ${exception}');
});
},
(ZCatalystException exception) {
print('Get File failed: $exception');
},);
            
Copy Text

//Get the download Link by calling the method which returns a promise. 
var filestore = catalyst.file; 
var folder = filestore.folderId(FOLDER_ID); 
var file = folder.fileId(FILE_ID); 
var downloadPromise = file.getDownloadLink();
downloadPromise .then((response) => { console.log(response.content); }) .catch((err) => { console.log(err); });
Copy Text

import com.zc.component.files.ZCFile;
import com.zc.component.files.ZCFolder;

//Get a file store instance 
ZCFile fileStore = ZCFile.getInstance(); 
//Get a folder Instance 
ZCFolder folder = fileStore.getFolderInstance(704000000116007l); 
//Deletes the file by referring to its ID
folder.deleteFile(704000000122001l);
Copy Text

#Delete a file
filestore_service = app.filestore()
folder_service = filestore_service.folder(5249000000016011)
folder_service.delete_file(5249000000032063)
Copy Text

// Delete the file by passing the file ID to the method which in turn returns a promise 
let filestore = app.filestore(); 
let folder = filestore.folder(1510000000109545); 
let deletePromise = folder.deleteFile(1510000000107568);
deletePromise.then((fileObject) => 
{ 
console.log(fileObject); 
});
Copy Text

ZCatalystFolder folder = ZCatalystApp.getInstance()
.getFileStoreInstance()
.getFolderInstance(2823000000006561);
folder.getFile(
2823000000006561, //Define the file instance with the Folder ID and File ID
(APIResponse response, ZCatalystFile file) {
file.delete( 
onSuccess: (APIResponse response) {
print('File deleted successfully.'); //Actions to be executed upon a successful deletion
},
onFailed: (ZCatalystException exception) {
print('Failed to delete the file: $exception'); //Actions to be executed upon failure
},
);
},
(ZCatalystException exception) {
print('Get File failed: $exception'); //Actions to be executed upon failure in fetching the file instance
},
);
Copy Text

//Delete the file by calling the method which returns a promise. 
var filestore = catalyst.file; 
var folder = filestore.folderId(FOLDER_ID); 
var file = folder.fileId(FILE_ID); 
var deletePromise = file.delete(); deletePromise
.then((response) => { console.log(response.content); }) .catch((err) => { console.log(err); });
Copy Text

Build and ship faster with ready-to-use microservices

Algolia Search Integration

Implement relevant search and discovery in your catalyst application using Algolia's hosted APIs.

 

Zoho CRM Bulk Import

Import data in bulk to any standard modules in zoho CRM.

 

Database Connector

Establish an instant database connection between your Catalyst application and an external database management system.

 

Stripe Payments Integration

Handle billing, checkout and payment functionalities in your Catalyst application.

 

Empowering developers at enterprises and startups

  • Swiggy Logo
  • Deloitte Logo
  • Livpure Logo
  • Constructionbos Logo
Saintgobin testimonial

“Catalyst proved to be a powerful serverless suite in helping us bridge the gap in existing, independent supply chain systems. By simplifying serverless, Catalyst delivers great customer experiences and focuses on the pillars of privacy and security. We were able to develop the integration using Catalyst in just a week, and deploy it in a day.”

Amanda Tighe,

Project Manager, Saint-Gobain
Swiggy LogoSwiggy testimonial

"Our People Analytics team at Swiggy had been trying to build the "unhappy employee" prediction model using contemporary Python scripts and the like. However, the ML Ops was a big challenge we were facing while deploying these solutions. QuickML with its API capabilities helped us deploy the model overnight, and then use the production data back in our data mart for interventions."

Daksh Sahni,

People Analytics & Behavioural Sciences
Deloitte LogoDeloitte testimonial

"We (Deloitte) built the application in the development sandbox while deploying a stable version in production. Catalyst is one of the very few vendors to give separate environments. This helped us ship apps with less friction and more confidence. The platform is developer-friendly and one of the finest serverless products. Deployment was just one click—agile, yet so simple!"

Kumar, Amit N

Director Deloitte
Livpure LogoLivpure testimonial

"Catalyst integration enabled Livpure customers to obtain valuable real-time information about their products’ estimated delivery times. The delivery date range is displayed on the web page within three seconds of clicking on the ‘Check Availability’ button."

Constructionbos Logoconstructionbos testimonial

"With Catalyst, we were able to serve our customers better by getting new services to them faster. Building the microservice on Catalyst was easy! We never had to deal with infrastructure management. We just wrote a code and deployed it."

Craig Mulcahy

CEO, ConstructionBOS

Turn your ideas to innovation quickly

START BUILDING FOR FREE