The Node.js SDK is installed as an npm package (`zcatalyst-sdk-node`) and required at the top of each function file. You initialise the SDK with the current request context, which provides automatic authentication so the SDK knows which Catalyst project and environment to interact with. From there, you call SDK methods such as `catalyst.datastore().table(‘Orders’).insertRow(data)` or `catalyst.cache().put(‘key’, value, ttl)` without managing tokens or HTTP headers manually. The Java SDK mirrors the same structure for Java-based functions.
Every Catalyst serverless function that needs to access a Catalyst service should use the SDK. Calling Catalyst services via raw HTTP would require manual token management and offers no type safety or convenience methods. The SDK is especially valuable in complex functions that interact with multiple services in one invocation, such as reading from the Datastore, writing a file to File Store, and updating a Cache entry, all in a single request handler.
Always initialise the SDK using the function’s request context rather than creating a standalone client, as the context carries the authenticated session that Catalyst uses to scope operations to the correct project. The SDK version in your package.json should be kept current; older SDK versions may lack support for newer Catalyst features. Breaking changes between major SDK versions are documented in the Catalyst release notes.
A Delhi-based supply chain startup writes a Catalyst function to process purchase order confirmations from suppliers. Using the SDK, the function reads the order record from the Datastore with one method call, updates the order status with another, writes a confirmation PDF to File Store, and puts the supplier’s last-response timestamp in Cache for quick access by the dashboard. The entire interaction with four Catalyst services takes fewer than 15 lines of code thanks to the SDK’s structured methods.
Navigate to the function’s directory and run `npm install zcatalyst-sdk-node`. Then add `const catalyst = require(‘zcatalyst-sdk-node’);` at the top of your function file and initialise it with `const app = catalyst.initialize(req);` inside the handler, where `req` is the incoming request object. The SDK is now ready to use for all Catalyst service calls within that handler.
The SDK is designed primarily for use inside Catalyst functions where the request context provides authentication automatically. Using it in an external application requires manual credential configuration and is not the supported use case. For external applications that need to interact with Catalyst resources, use the Catalyst REST API directly with an OAuth-authenticated client.
Aaxonix is a certified Zoho implementation partner based in Pune. Architecture-first, no surprises.