{"id":5839,"date":"2026-06-16T06:30:18","date_gmt":"2026-06-16T06:30:18","guid":{"rendered":"https:\/\/aaxonix.com\/resources\/?post_type=glossary&#038;p=5839"},"modified":"2026-06-16T06:30:18","modified_gmt":"2026-06-16T06:30:18","slug":"catalyst-sdk-zoho-catalyst","status":"publish","type":"glossary","link":"https:\/\/aaxonix.com\/resources\/glossary\/catalyst-sdk-zoho-catalyst\/","title":{"rendered":"Catalyst SDK"},"content":{"rendered":"<style>\n.gt-body{font-family:'Poppins',sans-serif;color:#111;line-height:1.7;max-width:860px;margin:0 auto;padding:0 0 48px}\n.gt-type-badge{display:inline-block;font-size:11px;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;color:#E8650A;border:1px solid rgba(232,101,10,.25);border-radius:20px;padding:3px 12px;margin-bottom:16px}\n.gt-def{font-size:17px;line-height:1.75;color:#1a1a1a;padding:20px 24px;background:#F7F4EF;border-left:3px solid #E8650A;border-radius:0 8px 8px 0;margin-bottom:28px}\n.gt-section{margin-bottom:28px}.gt-section h2{font-size:18px;font-weight:700;color:#0A1628;margin-bottom:12px;padding-bottom:8px;border-bottom:1px solid #DDD8CF}\n.gt-section p{font-size:15px;color:#333;margin-bottom:10px}\n.gt-example-box{background:#0A1628;color:#fff;border-radius:10px;padding:24px 28px;margin:28px 0}\n.gt-example-box h3{font-size:14px;font-weight:600;color:#E8650A;text-transform:uppercase;letter-spacing:1px;margin-bottom:10px}\n.gt-example-box p{font-size:14px;line-height:1.7;color:rgba(255,255,255,.85);margin:0}\n.gt-related-pills{display:flex;flex-wrap:wrap;gap:8px;margin:28px 0}\n.sp-content-link{display:inline-block;font-size:13px;font-weight:500;color:#2563EB;border:1px solid rgba(37,99,235,.25);border-radius:20px;padding:5px 14px;text-decoration:none}\n.gt-faq-item{border:1px solid #DDD8CF;border-radius:10px;padding:18px 20px;margin-bottom:12px}\n.gt-faq-item h3{font-size:15px;font-weight:600;color:#0A1628;margin-bottom:8px}\n.gt-faq-item p{font-size:14px;color:#555;margin:0;line-height:1.65}\n<\/style>\n<div class=\"gt-body\">\n  <span class=\"gt-type-badge\">Feature<\/span><\/p>\n<div class=\"gt-def\">The Catalyst SDK is the official client library for Node.js and Java that gives serverless functions a clean API to interact with Catalyst services such as Datastore, Cache, File Store, NoSQL Tables, and Authentication, without writing raw HTTP calls to the Catalyst REST API.<\/div>\n<div class=\"gt-section\">\n<h2>How Catalyst SDK Works in Zoho Catalyst<\/h2>\n<p>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(&#8216;Orders&#8217;).insertRow(data)` or `catalyst.cache().put(&#8216;key&#8217;, value, ttl)` without managing tokens or HTTP headers manually. The Java SDK mirrors the same structure for Java-based functions.<\/p>\n<\/p><\/div>\n<div class=\"gt-section\">\n<h2>When to Use Catalyst SDK<\/h2>\n<p>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.<\/p>\n<\/p><\/div>\n<div class=\"gt-section\">\n<h2>Key Considerations<\/h2>\n<p>Always initialise the SDK using the function&#8217;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.<\/p>\n<\/p><\/div>\n<div class=\"gt-example-box\">\n<h3>India Example<\/h3>\n<p>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&#8217;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&#8217;s structured methods.<\/p>\n<\/p><\/div>\n<div class=\"gt-related-pills\">\n    <a href=\"\/resources\/glossary\/serverless-function-zoho-catalyst\/\" class=\"sp-content-link\">Serverless Function<\/a><br \/>\n    <a href=\"\/resources\/glossary\/datastore-zoho-catalyst\/\" class=\"sp-content-link\">Datastore<\/a><br \/>\n    <a href=\"\/resources\/glossary\/cache-zoho-catalyst\/\" class=\"sp-content-link\">Cache<\/a><br \/>\n    <a href=\"\/resources\/glossary\/catalyst-cli-zoho-catalyst\/\" class=\"sp-content-link\">Catalyst CLI<\/a>\n  <\/div>\n<div class=\"gt-faq-item\">\n<h3>How do I install the Catalyst SDK in a Node.js function?<\/h3>\n<p>Navigate to the function&#8217;s directory and run `npm install zcatalyst-sdk-node`. Then add `const catalyst = require(&#8216;zcatalyst-sdk-node&#8217;);` 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.<\/p>\n<\/p><\/div>\n<div class=\"gt-faq-item\">\n<h3>Can the Catalyst SDK be used outside of Catalyst functions, such as in an external Node.js app?<\/h3>\n<p>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.<\/p>\n<\/p><\/div>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>The Catalyst SDK is a Node.js and Java library that provides programmatic access to all Zoho Catalyst services, including the Datastore, Cache, File Store, and Authentication, from within serverless functions.<\/p>\n","protected":false},"template":"","meta":{"seo_title":"Catalyst SDK | Zoho Catalyst Glossary","seo_description":"The Catalyst SDK is a Node.js and Java library providing programmatic access to Zoho Catalyst services like Datastore, Cache, File Store, and Authentication from serverless functions.","seo_keyword":"catalyst sdk zoho catalyst","seo_faqs":"[{\"q\": \"How do I install the Catalyst SDK in a Node.js function?\", \"a\": \"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.\"}, {\"q\": \"Can the Catalyst SDK be used outside of Catalyst functions, such as in an external Node.js app?\", \"a\": \"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.\"}]","term_type":"Feature","glossary_related":"","glossary_links":""},"glossary_category":[1294],"class_list":["post-5839","glossary","type-glossary","status-publish","hentry","glossary_category-zoho-catalyst"],"_links":{"self":[{"href":"https:\/\/aaxonix.com\/resources\/wp-json\/wp\/v2\/glossary\/5839","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/aaxonix.com\/resources\/wp-json\/wp\/v2\/glossary"}],"about":[{"href":"https:\/\/aaxonix.com\/resources\/wp-json\/wp\/v2\/types\/glossary"}],"wp:attachment":[{"href":"https:\/\/aaxonix.com\/resources\/wp-json\/wp\/v2\/media?parent=5839"}],"wp:term":[{"taxonomy":"glossary_category","embeddable":true,"href":"https:\/\/aaxonix.com\/resources\/wp-json\/wp\/v2\/glossary_category?post=5839"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}