canonical: https://jentic.com/apis/zoho.com/zoho-catalyst-api

# Zoho Catalyst API

Jentic publishes the only available OpenAPI specification for Zoho Catalyst API, keeping it validated and agent-ready. Build and operate serverless applications on Zoho Catalyst with programmatic access to data store tables, file storage, cache segments, serverless functions, ZCQL queries, cron scheduling, mail sending, and project user management. The API covers the full backend-as-a-service lifecycle from data persistence through compute execution and scheduled automation.

## For AI agents

Execute serverless functions, query data store tables via ZCQL, manage file storage, and send emails on Zoho Catalyst. Covers the full BaaS lifecycle including cache, cron jobs, and user management.

## Scope

Does not handle CRM records, Zoho Mail accounts, Zoho Books accounting, or Zoho People HR - use for Catalyst serverless platform operations only.

## Capabilities

- Execute serverless functions by function ID with custom payloads for event-driven logic
- Query data store tables using ZCQL (Zoho Catalyst Query Language) for flexible record retrieval
- Upload, download, and organize files in project-scoped folder structures
- Store and retrieve key-value pairs in named cache segments with automatic expiration
- Send transactional emails with attachments through the built-in mail service
- Schedule recurring tasks using cron job definitions for background automation
- Insert, update, and delete rows in structured data store tables with typed columns

## Use cases

### AI Agent Serverless Execution

AI agents use Zoho Catalyst through Jentic to execute serverless functions, query structured data, and trigger background jobs without managing infrastructure. An agent discovers the function execution endpoint via Jentic's intent search, passes a custom payload, and receives the function's response - enabling dynamic backend logic without server provisioning. Through Jentic, agents interact with Catalyst's BaaS layer in under a minute.

Example prompt: Execute serverless function ID 'process_order_12345' in project '67890' with a JSON payload containing order details using the POST /project/{projectId}/function/{functionId}/execute endpoint

### Structured Data Querying with ZCQL

Run SQL-like queries against Catalyst data store tables using ZCQL (Zoho Catalyst Query Language). The query endpoint accepts ZCQL statements that support SELECT, WHERE, ORDER BY, and LIMIT clauses across project tables. Results are returned as typed row objects. This enables agents to retrieve specific records without fetching entire tables.

Example prompt: Execute a ZCQL query 'SELECT * FROM orders WHERE status = "pending" LIMIT 10' against project ID '67890' using the POST /project/{projectId}/query endpoint

### File Management for Serverless Applications

Store, retrieve, and organize files within project-scoped folders on Zoho Catalyst. The file store API supports upload, download, listing, and deletion of files organized by folder. Use it for document storage, media handling, or any file-based workflow that your serverless functions produce or consume.

Example prompt: Upload a PDF report to folder ID '111' in project '67890' using the POST /project/{projectId}/folder/{folderId}/file endpoint

### Transactional Email Delivery

Send transactional emails directly from Catalyst serverless applications without configuring a separate email provider. The mail endpoint accepts recipient addresses, subject, body (HTML or plain text), and optional attachments. Emails are sent from your project's configured sender address with delivery tracking handled by Catalyst's infrastructure.

Example prompt: Send a transactional email with subject 'Order Confirmation' and HTML body to 'customer@example.com' using the POST /project/{projectId}/mail/send endpoint

## Key endpoints

| Method | Path | Description |
| --- | --- | --- |
| POST | /project/{projectId}/function/{functionId}/execute | Execute a serverless function |
| POST | /project/{projectId}/query | Run a ZCQL query against data store tables |
| POST | /project/{projectId}/table/{tableId}/row | Insert a row into a data store table |
| GET | /project/{projectId}/table/{tableId}/row | List rows in a data store table |
| POST | /project/{projectId}/folder/{folderId}/file | Upload a file to a folder |
| POST | /project/{projectId}/mail/send | Send a transactional email |
| PUT | /project/{projectId}/cache/{segmentId} | Set a cache value in a segment |
| GET | /project/{projectId}/cron | List all cron jobs |

## Key resources

- **Data Store** — List tables, create/read/update/delete rows, and run ZCQL queries against structured data
- **File Store** — Upload, download, list, and delete files organized in project folders
- **Cache** — Get, set, and delete key-value pairs in named cache segments
- **Functions** — Execute serverless functions by ID with custom request payloads
- **Mail** — Send transactional emails with recipients, subject, body, and attachments
- **Cron** — List scheduled cron jobs configured for the project
- **Users** — List, retrieve, and remove project users

## Why Jentic

- **Setup:** Wiring Zoho Catalyst by hand means running its OAuth 2.0 flow with Catalyst-specific scopes, refreshing tokens, and threading the projectId path segment through every serverless call yourself. Through Jentic you install once, import Zoho Catalyst from the API Directory, store the OAuth credential once, and your agent calls it.
- **Permission scoping:** Zoho Catalyst puts the project id in the URL path (/project/{projectId}/...), so a rule can pin your agent to one project: it can run functions and queries in that project and nothing else. You choose the operations it may call, so writes like table row inserts or cache updates are not included unless you add them.
- **Credential handling:** Your Zoho OAuth credential is stored once, encrypted, by your own Jentic One instance and injected at execution time. It never enters the agent's prompt, logs, or context.
- **Discovery method:** Agents search Jentic by intent such as 'execute a serverless function on Zoho Catalyst' or 'run a data query', and Jentic returns the matching Catalyst operation with its input schema so the agent calls the right endpoint without browsing the reference docs.

## Related APIs

- **Zoho CRM API** — Zoho's CRM API for managing contacts, deals, and accounts alongside Catalyst backend logic
- **SendGrid API Keys** — Dedicated email delivery service for higher-volume transactional and marketing email
- **Airtable API** — Cloud database with API access for structured data without serverless compute

## FAQ

### Why is there no official OpenAPI spec for Zoho Catalyst API?

Zoho does not publish an OpenAPI specification for their Catalyst platform. Jentic generates and maintains this spec so that AI agents and developers can call Zoho Catalyst API via structured tooling. It is validated against the live API and kept up to date. Get started with Jentic One, the self-hosted execution layer.

### What authentication does the Zoho Catalyst API use?

The API uses OAuth 2.0 with Zoho's accounts system. You need an access token with Catalyst-specific scopes (ZohoCatalyst.tables.READ, ZohoCatalyst.functions.EXECUTE, etc.) depending on the resources you access. Through Jentic, OAuth tokens are stored in your Jentic One instance and agents receive scoped access without handling the Zoho OAuth refresh flow.

### Can I run SQL-like queries against Catalyst data store tables?

Yes. The POST /project/{projectId}/query endpoint accepts ZCQL (Zoho Catalyst Query Language) statements. ZCQL supports SELECT, WHERE, ORDER BY, LIMIT, and basic aggregation functions. Queries run against the data store tables in your project and return typed row objects matching your criteria.

### How do I execute a serverless function through Jentic?

Install the SDK with pip install jentic, then search for 'execute a serverless function on Zoho Catalyst'. Jentic returns the POST /project/{projectId}/function/{functionId}/execute operation with its input schema. Provide your project ID, function ID, and a JSON payload - the OAuth token handling is automated by your Jentic One instance.

### What are the rate limits for the Zoho Catalyst API?

Zoho Catalyst applies rate limits based on your plan tier. The free tier allows 500 function executions per day, while paid plans scale to 25,000+ daily executions. Data store operations are limited to 5,000 rows per table on free plans. Cache operations have no per-request limit but total cache size is capped per project.

### Can I send emails directly through the Catalyst API?

Yes. The POST /project/{projectId}/mail/send endpoint sends transactional emails with configurable recipients, subject, HTML or plain text body, and optional attachments. Emails are sent from your project's verified sender address. The free tier includes 100 emails per day.

### Is Zoho Catalyst free to use?

Zoho Catalyst offers a free tier with limited quotas: 1 project, 500 function executions per day, 1 GB file storage, and 100 emails per day. Paid plans start at $7/project/month and increase limits for functions, storage, cache, and data store rows.

### Can I limit what my agent is allowed to do with the Zoho Catalyst API?

Yes. Because you run Jentic One yourself, your own rules decide which Catalyst operations and credentials the agent can use. Since the project id sits in the URL path, a rule can pin the agent to a single project so it only runs functions and ZCQL queries there and nothing else. You also choose which operations it may call, so writes such as table row inserts, file uploads, or cache updates are not available to the agent unless you add them.
