# Mail -------------------------------------------------------------------------------- title: "Introduction" description: "Catalyst Mail enables you to send emails from your application by configuring your organization's email addresses of public or private domains, or the SMTP settings of any external email clients you prefer to use." last_updated: "2026-09-02T11:24:40.081Z" source: "https://docs.catalyst.zoho.com/en/cloud-scale/help/mail/introduction/" service: "Cloud Scale" -------------------------------------------------------------------------------- # Mail ### Introduction Mail is a Catalyst Cloud Scale component that allows you to securely send emails from within your Catalyst application to its end-users. You can configure sender email addresses for different departments like marketing, customer support, or finance and send transactional or mass communication emails based on your app’s business logic. Whether using public domain emails or your own domain’s addresses, this system powered by Catalyst lets you authenticate and manage these configurations directly from the console. Additionally, you have the flexibility to either use Catalyst’s built-in email client or integrate with an external email client by configuring SMTP settings. #### SDK and API documentation Catalyst provides you with SDK tools and an API to send emails to your application users. You can easily incorporate the developer tools in your application's code after you configure the sender emails and domains with Catalyst. Refer to the SDK and API documentation for details: * Send Mail- Java SDK * Send Mail- Node.js SDK * Send Mail- Python SDK * Send Mail- API #### Key Features of Catalyst Mail * Enables you to configure a sender email address with the click of a few buttons and send emails within minutes. * Highly scalable and ensures speed, efficiency, and consistency irrespective of the load. * Allows you to store multiple email addresses for various purposes. * Enables the use of public domain email addresses directly without configuring their SMTP settings, for the domains that support this functionality. * Provides you with the flexibility of configuring private domains or your organization's own domains and send emails from them. * Optimized performance of the built-in email client and reliable email delivery helps boost your business credibility. * Allows you to use an email client of your choice instead of the built-in client. * Provides support for various functionalities such as file attachments, CC, and BCC while sending emails through the SDKs or the API. <br /> -------------------------------------------------------------------------------- title: "Email Configuration" description: "Catalyst Mail enables you to send emails from your application by configuring your organization's email addresses of public or private domains, or the SMTP settings of any external email clients you prefer to use." last_updated: "2026-09-02T11:24:40.081Z" source: "https://docs.catalyst.zoho.com/en/cloud-scale/help/mail/email-configuration/" service: "Cloud Scale" -------------------------------------------------------------------------------- # Email Configuration You can configure the sender email addresses in the _Email Configuration_ section of the Mail component from your console. These email addresses can be from public domain email clients such as Gmail, Apple mail, and Outlook, or hosted in a private domain, such as your organization's or business's domain. Note: To send emails from Catalyst using the Email component, you need to verify both the sender email address and the domain. * [Learn more about verifying the domain](#verify-the-domain). * Learn more about verifying the sender email addresses After an email address is added and verified, you can send emails with it from your Catalyst application by coding the logic using the SDK toolkits, or using the API. ### Add a New Email Address To add a new sender email address for your Catalyst application: 1. Navigate to Notify then Mail, in your Catalyst Cloud Scale console. 2. Click Add Email Address in the _Email Configuration_ section.<br /> <br /> 3. Enter the name that must be displayed as the sender's name and the sender email address, then click Add Email.<br /> <br /> 4. Click Add Email. The email address is now added in your Catalyst project as a sender. You can find all the email addresses that you have added listed in the _Email Configuration_ page. After you add an email address, you must verify it and its domain before it can be used. The _Confirmation Status_ column displays the verification status for each email address. ### Verify an Email Address To verify an email address that was added: 1. Click Click to confirm for the email address that you want to confirm.<br /> <br /> This will automatically send an email to the email address containing a confirmation code.<br /> <br /> 2. Enter the confirmation code that was sent in the pop-up box shown next to the email address.<br /> <br /> 3. Click Confirm. If you did not receive an email with the confirmation code, click Resend Code in the pop-up box. After the confirmation code has been entered and verified, the confirmation status of your email address will be changed to _Verified_. <br /> You will need to verify the domain to send emails. -------------------------------------------------------------------------------- title: "SMTP Configuration" description: "Catalyst Mail enables you to send emails from your application by configuring your organization's email addresses of public or private domains, or the SMTP settings of any external email clients you prefer to use." last_updated: "2026-09-02T11:24:40.082Z" source: "https://docs.catalyst.zoho.com/en/cloud-scale/help/mail/smtp-configuration/" service: "Cloud Scale" -------------------------------------------------------------------------------- # SMTP Configuration Catalyst uses Zoho's own email client for sending emails from within Catalyst applications. If you prefer to use another email client instead, you can configure the SMTP settings of that email client in your project. SMTP (Simple Mail Transfer Protocol) is a standard protocol for electronic mail transmission. It handles the communication between the servers used to send and receive emails. To use another email client in place of Zoho's own client for sending emails, you must configure the client's SMTP server in Catalyst by adding its parameters. After the SMTP server has been configured, the third-party email client will handle the emails that you send from your Catalyst application. Note: Although you can use public domain email addresses to send emails from Catalyst, Zoho cannot guarantee the functioning of these email domains. Your emails may sometimes not be delivered or be delivered in the receiver's spam folder. <br /><br />Some public domain email providers, such as Yahoo Mail, cannot be used directly in Catalyst to send emails. In such cases, you will need to configure the email client's SMTP settings with Catalyst to be able to use it. If the public domain email can be used directly with Catalyst, configuring its SMTP settings is optional. To configure the SMTP server of another email client in Catalyst: 1. Click the SMTP Configuration tab in the _Mail_ component, and click **Add SMTP**. <br /> <br /> 2. Enter the following SMTP parameters of the email client: * Sender Address: The sender email address that you want to configure with the email client. * SMTP Server Host: The name of the email client's SMTP server host. * SMTP Server Port: The port number of the SMTP's server. The available ports are 25, 465, 587, and 2525. * SMTP Account Username: Your SMTP account username. * SMTP Account Password: Your SMTP account password. * SMTP Account Security Mode: You can use SSL or TLS encryption to make your connection secure by encrypting the communication channel. You can select None for no security.<br /> <br /> 3. Click Save. <br /> The SMTP server is now configured in your Catalyst project. You can now send emails from the application, and this external client will handle the process. You can also disable the email client if you do not require it, using the toggle switch on the top, and re-enable it when needed. <br /> -------------------------------------------------------------------------------- title: "Domains" description: "Catalyst Mail enables you to send emails from your application by configuring your organization's email addresses of public or private domains, or the SMTP settings of any external email clients you prefer to use." last_updated: "2026-09-02T11:24:40.082Z" source: "https://docs.catalyst.zoho.com/en/cloud-scale/help/mail/domains/" service: "Cloud Scale" -------------------------------------------------------------------------------- # Domains If the sender email addresses you wish to use are not by public email providers such as Gmail or Outlook, and are hosted on a private domain such as your business's own domain through third-party email providers or hosting services, you will need to add and validate that domain in Catalyst. You can add the sender email addresses, after you validate the domain. Catalyst requires the authenticity of external domains and sub-domains to be verified. Domain validation is mandatory, as Catalyst needs to ensure that the domain an email is sent from is valid and trustworthy. Catalyst performs this validation of the domains and sub-domains you add, through their DNS configurations. This is done using the following email authentication and validation standards: * DKIM: DKIM (DomainKeys Identified Mail) is an authentication method which uses encryption with public/private keys, to validate whether the emails are generated from the authorized servers. * SPF: SPF (Sender Policy Framework) is an email validation system which looks for spoofed or forged emails using a specific SPF record published for the domain with the details of the hosts that are permitted by the domain's administrators. This enables Catalyst to provide security for the applications you build with it. ### Add Your Own Domain To add an external domain in Catalyst: 1. Click the Domain tab in the _Mail_ component, then click Add Domain.<br /> <br /> 2. Enter the email address of the external domain.<br /> <br /> 3. Click Create. The domain is now added in the project and will be displayed in the Domain section. You can add and use multiple domains for sending emails from your application. You must now verify and authenticate the domain before you use it. ### Verify a Domain To verify an external domain: 1. Click Verify Code for the domain you want to verify in the _Domain_ section.<br /> <br /> This will automatically send an email to the email address containing a confirmation code.<br /> <br /> If you don't receive the email with the verification code, click Resend Code in the _Verify Code_ box.<br /> 2. Enter the verification code that was sent to the email address in the pop-up box in the console.<br /> <br /> 3. Click Confirm. If the verification code matches, the domain will be displayed as verified. <br /> Note: You will not be able to verify public domain email addresses such as Gmail and Yahoo Mail, and hence not be able to send emails through Catalyst Mail using them. ### Authenticate your Domain You will also need to authenticate the external domain by validating its DKIM and SPF records. To do this, you must configure the DKIM and SPF record codes that are generated in Catalyst with the DNS settings of your domain's host. To authenticate an external domain: 1. Click Validate for the domain you wish to authenticate in the _Domain_ section.<br /> <br /> 2. Copy the SPF and the DKIM record codes shown in the pop-up window.<br /> <br /> 3. Navigate to the DNS settings of the domain's host and paste the SPF and DKIM record codes in the respective fields. This process will vary depending on the domain host you use. 4. After the record codes have been added and saved in the domain's host, click Authenticate in the _Authenticate Domain_ pop-up in the Catalyst console. After the SPF and DKIM record codes have been validated by Catalyst, your domain will be displayed as authenticated. <br /> Once the domain and the sender email address are verified, you will be able to send emails using the *Mail* component. <br /> You can also add and verify the email addresses of this domain to send emails from Catalyst in the same manner as described in this section. -------------------------------------------------------------------------------- title: "Send Emails" description: "Catalyst Mail enables you to send emails from your application by configuring your organization's email addresses of public or private domains, or the SMTP settings of any external email clients you prefer to use." last_updated: "2026-09-02T11:24:40.083Z" source: "https://docs.catalyst.zoho.com/en/cloud-scale/help/mail/send-emails/" service: "Cloud Scale" -------------------------------------------------------------------------------- # Send Emails You can send emails from your Catalyst application after you configure the sender email address, and optionally the private domain and the SMTP server of the email client. The code templates for Java, Node.js and Python platforms, as well as the API specifications to send emails are mentioned in the respective help pages. Note: Ensure you verify your domain with Catalyst to send out emails using the Mail component. No emails can be sent without the verification being done. Attempting to send emails without proper email and domain verification will throw an exception, and mail will not be sent. Catalyst enables you to set multiple email addresses as the receivers, and to CC, BCC, and reply to, through a single send mail operation through the SDKs or the API. You can also attach files in the emails you send. The maximum supported limits for email recipients and file attachments in a single send mail operation are specified below: * To address: 10 * CC: 10 * BCC: 5 * Reply to: 5 * Number of file attachments: 5 * Size of file attachments: 15 MB (through a single file or multiple files upto 5 files) <br /> --- ## API Reference — Mail -------------------------------------------------------------------------------- title: "Send Email" description: "This API enables you to send emails from a verified email address from your Catalyst application through Catalyst Mail." last_updated: "2026-09-02T11:24:40.087Z" source: "https://docs.catalyst.zoho.com/en/api/code-reference/cloud-scale/mail/send-email/" service: "Cloud Scale" -------------------------------------------------------------------------------- # Mail Catalyst Mail enables you to add the email addresses of your business that will be used to send emails to the end-users from your Catalyst application. You can configure email addresses of public domains or of your organization's own domains. You can also use an external email client of your choice and configure its SMTP settings with Catalyst, instead of using the built-in Catalyst email client. You can perform these configurations from the console. # Send Email ### Description This API enables you to send emails from a verified email address to the recipients you specify, from your Catalyst application. Catalyst enables you to set multiple email addresses as the receivers, and to CC, BCC, and reply to through a single send mail operation. You can also attach files in your email. The **maximum supported limits** for email recipients and file attachments in a single send mail operation are specified below: * To address: 10 * CC: 10 * BCC: 5 * Reply to: 5 * Number of file attachments: 5 * Size of file attachments: 15 MB (through a single file or multiple files up to 5 files) You must pass the sender and receiver email addresses, the subject, content, and the attachments of the email as form-data in your API request. The keys to be passed as **form-data**, along with sample values are specified in the *Form-Data Properties* section below. Note: You must have configured and verified the sender's email address in the Catalyst console to be able to send emails. If the sender's email is hosted on a private domain or if you choose to use a third-party email client, you must configure them before sending emails as well. ### Request Details #### Request URL <p>{api-domain}/baas/v1/project/{project_id}/email/send</p> The DC-specific domain to access Catalyst API The unique ID of the project #### Request Headers **Authorization:** Zoho-oauthtoken {oauth_token} <br> **Content-Type:** multipart/form-data; boundary=----WebKitFormBoundary7MA4YWxkTrZu0gW **Optional Headers** <br> **CATALYST-ORG:** {org_id} **Environment:** Development #### Scope ZohoCatalyst.email.CREATE #### Form-Data Properties The sender's email address that is configured in Catalyst Mail Email addresses of the recipients Email addresses to carbon copy (cc) Email addresses to blind carbon copy (bcc) Email addresses to reply to The files to be attached in the email The subject of the email The body of the email. You can pass the content in a HTML format by setting the html_mode as "True". Specifies if the email content is in a HTML format. You must pass true or false as the value. If the value is false, the email content is in a regular text format. The display name of the sender ### Response Details The response returns the details of the email that was sent such as the status of the sent email, the project details, from_email, to_email, and content. curl -X POST \ https://api.catalyst.zoho.com/baas/v1/project/4000000006007/email/send \ -H "Authorization: Zoho-oauthtoken 1000.910*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*16.2f*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*57" \ -H "Content-Type: multipart/form-data; boundary=----WebKitFormBoundary7MA4YWxkTrZu0gW" \ -F from_email=emma@zylker.com \ -F to_email=vanessa.hyde@zoho.com,r.owens@zoho.com,chang.lee@zoho.com \ -F cc=p.boyle@zylker.com,robert.plant@zylker.com \ -F bcc=ham.gunn@zylker.com,rover.jenkins@zylker.com \ -F reply_to=peter.d@zoho.com,arnold.h@zoho.com \ -F attachments=kycform.pdf \ -F subject="Greetings from Zylker Corp!" \ -F content="<p>Hello,</p><p>We're glad to welcome you at Zylker Corp. To begin your journey with us, please download the attached KYC form and fill in your details. You can send us the completed form to this same email address. We cannot wait to get started!<p>Cheers!</p><p>Team Zylker</p>" \ -F html_mode=true \ -F display_name="Amelia Burrows" \ { "status": "success", "data": { "isAsync": false, "project_details": { "project_name": "Onboarding", "id": 2648000000235047, "project_type": "Live" }, "display_name": "Amelia Burrows", "from_email": "emma@zylker.com", "to_email": [ "vanessa.hyde@zoho.com", "r.owens@zoho.com", "chang.lee@zoho.com" ], "cc": [ "p.boyle@zylker.com", "robert.plant@zylker.com" ], "bcc": [ "ham.gunn@zylker.com", "rover.jenkins@zylker.com" ], "html_mode": true, "subject": "Greetings from Zylker Corp!", "content": "<p>Hello,</p><p>We're glad to welcome you at Zylker Corp. To begin your journey with us, please download thattached KYC form and fill in your details. You can send us the completed form to this same email address. We cannowait to get started!<p>Cheers!</p><p>Team Zylker </p>", "reply_to": [ "peter.d@zoho.com", "arnold.h@zoho.com" ] } } Send Email- Java SDK</br></br> Send Email- Node.js SDK</br></br> Send Email- Python SDK</br></br> --- ## SDK — Java — Mail -------------------------------------------------------------------------------- title: "Send email" description: "This page describes the method to send out emails to end-users from your Java application with sample code snippets." last_updated: "2026-09-02T11:24:40.132Z" source: "https://docs.catalyst.zoho.com/en/sdk/java/v1/cloud-scale/mail/send-email/" service: "Cloud Scale" related: - Send email - API (/en/api/code-reference/cloud-scale/mail/send-email/#SendEmail) - Send email (/en/cloud-scale/help/mail/introduction) -------------------------------------------------------------------------------- # Mail Catalyst Mail enables you to add the email addresses of your business that will be used to send emails to the end-users from your Catalyst application. You can configure email addresses of public domains or of your organization's own domains. You can also use an external email client of your choice and configure its SMTP settings with Catalyst, instead of using the built-in Catalyst email client. ### Send Mail You must configure the domains, email addresses, and the SMTP settings for an email client of your choice from the console. The code snippet shown here enables you to send emails to the email addresses you specify from your Catalyst application. Catalyst enables you to set multiple email addresses as the receivers, and to CC, BCC, and reply to through a single send mail operation. You can also attach files in your email. The maximum supported limits for email recipients and file attachments in a single send mail operation are specified below: * To address: 10 * CC: 10 * BCC: 5 * Reply to: 5 * Number of file attachments: 5 * Size of file attachments: 15 MB (through a single file or multiple files upto 5 files) Note: The subject, sender, and atleast one recipient email addresses are mandatory. Other attributes of the email are optional. You must fetch an instance of ZCMailContent as shown in the code below. You can define the recipients and file attachments of an email as array lists. You must then set these lists, as well as the sender's email address, the subject and the content of the email in the ZCMailContent object, and pass it as an argument to the sendMail() method to send the email. Note: You must have configured and verified the sender's email address in the Catalyst console to be able to send emails. If the sender's email is hosted on a private domain or if you choose to use a third-party email client, you must configure them before sending emails as well. #### Sample Code Snippet import java.io.File; import com.zc.component.mail.ZCMail; import com.zc.component.mail.ZCMailContent; ZCMailContent mailContent = ZCMailContent.getInstance(); //Get a ZCMailContent instance ArrayList toMailList = new ArrayList(); //Add the recipient email addresses as an array list toMailList.add("vanessa.hyde@zoho.com"); toMailList.add("r.owens@zoho.com"); toMailList.add("chang.lee@zoho.com"); ArrayList ccMailList = new ArrayList<>(); //Add the email addresses to CC as an array list ccMailList.add("p.boyle@zylker.com"); ccMailList.add("robert.plant@zylker.com"); ArrayList bccMailList = new ArrayList<>(); //Add the email addresses to BCC as an array list bccMailList.add("ham.gunn@zylker.com"); bccMailList.add("rover.jenkins@zylker.com"); ArrayList replytoMailList = new ArrayList<>(); //Add the email addresses to reply to as an array list replytoMailList.add("peter.d@zoho.com"); replytoMailList.add("arnold.h@zoho.com"); ArrayList attachments = new ArrayList<>(); //Add the email attachments as an array list File file1 = new File("kycform.pdf"); File file2 = new File("info.png"); attachments.add(file1); attachments.add(file2); // Set the email properties in the ZCMailContent object mailContent.setFromEmail("p.boyle@zylker.com"); //Set the sender's email address mailContent.setToEmailList(toMailList); //Pass the recipient array list mailContent.setCcEmailList(ccMailList); //Pass the CC array list mailContent.setBccEmailList(bccMailList); //Pass the BCC array list mailContent.setReplyTo(replytoMailList); //Pass the reply to array list mailContent.setSubject("Greetings from Zylker Corp!"); //Set the email's subject mailContent.setContent("Hello,We're glad to welcome you at Zylker Corp. To begin your journey with us, please download the attached KYC form and fill in your details. You can send us the completed form to this same email address.We cannot wait to get started!Cheers!Team Zylker"); //Set the email's body as an HTML content mailContent.setAttachments(attachments); //Pass the email attachments array list ZCMail.getInstance().sendMail(mailContent); //Send emails using the mailContent object --- ## SDK — Modular JavaScript SDK — Mail -------------------------------------------------------------------------------- title: "Overview" description: "This page describes the method to perform operations using the Mail component." last_updated: "2026-09-02T11:24:40.133Z" source: "https://docs.catalyst.zoho.com/en/sdk/javascript/v1/cloudscale/mail/overview/" service: "CloudScale" related: - Catalyst CloudScale (/en/cloud-scale/) - Mail Help Documentation (/en/cloud-scale/help/mail/introduction/) - Java SDK Documentation (/en/sdk/java/v1/cloud-scale/mail/send-email/) - NodeJS SDK Documentation (/en/sdk/nodejs/v2/cloud-scale/mail/get-component-instance/) - Python SDK Documentation (/en/sdk/python/v1/cloud-scale/mail/get-component-instance/) - REST API Documentation (/en/api/code-reference/cloud-scale/mail/send-email/#SendEmail) -------------------------------------------------------------------------------- # Mail JavaScript SDK # Overview Mail is a *CloudScale* component that allows you to send emails to your end-users from within your application. You can configure email addresses of public domains or of your organization’s own domains. You can also use an external email client of your choice and configure its SMTP settings with Catalyst, instead of using the built-in Catalyst email client. The *Mail JavaScript SDK* package enables you to send emails to registered users of your application through code. ### Prerequisites You will need to install the following package to be able to use the Mail SDK methods. npm install @zcatalyst/mail Info: Ensure that you have applied the required authentication configuration to use the SDK methods of this component. ### Import Requirement You will need to import the following modules to use the Mail SDK methods. const { Email } = require('@zcatalyst/mail'); ### List of SDK Methods The following table contains the list of SDK methods that can be used to perform operations in the ZCQL component through code. <table border="1" cellpadding="8" cellspacing="0"> <thead> <tr> <th>Category</th> <th>SDK Method</th> <th>Required Scope</th> </tr> </thead> <tbody> <tr> <td>General Operations</td> <td>Get Mail Instance</td> <td>Not required</td> </tr> <tr> <td>Mail Operations</td> <td>Send Email</td> <td>Admin</td> </tr> </tbody> </table> -------------------------------------------------------------------------------- title: "Get Mail Instance" description: "This page describes the method to perform operations using the Mail component." last_updated: "2026-09-02T11:24:40.134Z" source: "https://docs.catalyst.zoho.com/en/sdk/javascript/v1/cloudscale/mail/get-mail-instance/" service: "CloudScale" related: - Catalyst CloudScale (/en/cloud-scale/) - Mail Help Documentation (/en/cloud-scale/help/mail/introduction/) - Java SDK Documentation (/en/sdk/java/v1/cloud-scale/mail/send-email/) - NodeJS SDK Documentation (/en/sdk/nodejs/v2/cloud-scale/mail/get-component-instance/) - Python SDK Documentation (/en/sdk/python/v1/cloud-scale/mail/get-component-instance/) - REST API Documentation (/en/api/code-reference/cloud-scale/mail/send-email/#SendEmail) -------------------------------------------------------------------------------- # Get Mail Instance Note: Ensure you have installed the required package to use this SDK method. You can get the email component reference as shown below. This will not fire a server-side call. You will refer to this component instance in various code snippets when working with the Mail component. const email = new Email(); -------------------------------------------------------------------------------- title: "Send Email" description: "This page describes the method to perform operations using the Mail component." last_updated: "2026-09-02T11:24:40.134Z" source: "https://docs.catalyst.zoho.com/en/sdk/javascript/v1/cloudscale/mail/send-email/" service: "CloudScale" related: - Catalyst CloudScale (/en/cloud-scale/) - Mail Help Documentation (/en/cloud-scale/help/mail/introduction/) - Java SDK Documentation (/en/sdk/java/v1/cloud-scale/mail/send-email/) - NodeJS SDK Documentation (/en/sdk/nodejs/v2/cloud-scale/mail/send-email/) - Python SDK Documentation (/en/sdk/python/v1/cloud-scale/mail/send-email/) - REST API Documentation (/en/api/code-reference/cloud-scale/mail/send-email/#SendEmail) -------------------------------------------------------------------------------- # Send Email Note: Ensure you have installed the required package to use this SDK method. You need to accomplish the following steps in order to send an email using the Mail component: * Configure and verify the domain * Configure and verify the sender email address * Configure the SMTP settings for your required email client Once the above requirements are completed, you can proceed to send your email. Notes: * It is crucial you verify not only the sender email address, but also its domain. This ensures that the emails sent from your application to your end users are sent securely and that it does not end up in their spam. Learn more about verifying your domain. * You must have configured and verified the sender’s email address in the Catalyst console to be able to send emails. If the sender's email is hosted on a private domain or if you choose to use a third-party email client, you must configure them before sending emails as well. Catalyst enables you to set multiple email addresses as the receivers, and to CC, BCC, and reply to through a single send mail operation. You can also attach files to your email. The maximum supported limits for email recipients and file attachments in a single send mail operation are specified below: <table border="1" cellpadding="8" cellspacing="0"> <thead> <tr> <th>Email Header Fields</th> <th>Maximum Supported Limits</th> </tr> </thead> <tbody> <tr> <td>To address</td> <td>10</td> </tr> <tr> <td>CC</td> <td>10</td> </tr> <tr> <td>BCC</td> <td>5</td> </tr> <tr> <td>Reply to</td> <td>5</td> </tr> <tr> <td>Number of file attachments</td> <td>5</td> </tr> <tr> <td>Size of file attachments</td> <td>15MB (through a single file or multiple files up to 5 files)</td> </tr> </tbody> </table> <br /> Note: The subject, sender, and at least one recipient email addresses are mandatory. Other attributes of the email are optional. #### Create a JSON Configuration You must initially create a JSON object containing the required attributes of the email. This includes the sender’s email address and all the recipients of the email. You can also create file streams for the file attachments and pass them through the createReadStream() SDK method, as well as specify the subject and content of the email. The email reference used in the code below is the component instance. const fs = require('fs'); // Define the file stream for file attachments // Create a config object with the email configuration const config = { from_email: 'emma@zylker.com', to_email: ['vanessa.hyde@zoho.com', 'r.owens@zoho.com', 'chang.lee@zoho.com'], cc: ['p.boyle@zylker.com', 'robert.plant@zylker.com'], bcc: ['ham.gunn@zylker.com', 'rover.jenkins@zylker.com'], reply_to: ['peter.d@zoho.com', 'arnold.h@zoho.com'], subject: 'Greetings from Zylker Corp!', content: "Hello, We're glad to welcome you at Zylker Corp. To begin your journey with us, please download the attached KYC form and fill in your details. You can send us the completed form to this same email address. We can't wait to get started! Cheers, Team Zylker", attachments: [fs.createReadStream('kycform.pdf')] // Create a file stream for the file attachment }; Now, you need to pass the config JSON object to the sendMail() SDK method as an argument. This triggers the sending of the email. The promise returned here will be resolved to a JSON object. const mailPromise = await email.sendMail(config); console.log(mailPromise); #### Example of Expected Response A sample response that you will receive is shown below. { isAsync: false, project_details: { project_name: "Onboarding", id: "2136000000007733" }, from_email: "emma@zylker.com", to_email: ["vanessa.hyde@zoho.com", "r.owens@zoho.com", "chang.lee@zoho.com"], cc: ["p.boyle@zylker.com", "robert.plant@zylker.com"], bcc: ["ham.gunn@zylker.com", "rover.jenkins@zylker.com"], reply_to: ["peter.d@zoho.com", "arnold.h@zoho.com"], html_mode: true, subject: "Greetings from Zylker Corp!", content: "Hello, We're glad to welcome you at Zylker Corp. To begin your journey with us, please download the attached KYC form and fill in your details. You can send us the completed form to this same email address. We can't wait to get started! Cheers, Team Zylker" } --- ## SDK — Node JS — Mail -------------------------------------------------------------------------------- title: "Get Mail Instance" description: "This page describes the method to send out emails to end-users from your NodeJS application with sample code snippets." last_updated: "2026-09-02T11:24:40.146Z" source: "https://docs.catalyst.zoho.com/en/sdk/nodejs/v2/cloud-scale/mail/get-component-instance/" service: "Cloud Scale" related: - Mail (/en/cloud-scale/help/mail/introduction) -------------------------------------------------------------------------------- # Catalyst Mail Catalyst Mail enables you to add the email addresses of your business that will be used to send emails to the end-users from your Catalyst application. You can configure email addresses of public domains or of your organization's own domains. You can also use an external email client of your choice and configure its SMTP settings with Catalyst, instead of using the built-in Catalyst email client. #### Get Component Instance You can create an email reference as shown below. This will not fire a server-side call. We will refer to this component instance while performing the send mail operation. //Create an email instance let email = app.email(); -------------------------------------------------------------------------------- title: "Send Email" description: "This page describes the method to send out emails to end-users from your NodeJS application with sample code snippets." last_updated: "2026-09-02T11:24:40.147Z" source: "https://docs.catalyst.zoho.com/en/sdk/nodejs/v2/cloud-scale/mail/send-email/" service: "Cloud Scale" related: - Send Email - API (/en/api/code-reference/cloud-scale/mail/send-email/#SendEmail) - Mail (/en/cloud-scale/help/mail/introduction) -------------------------------------------------------------------------------- # Send Mail You must configure the domains, email addresses, and the SMTP settings for an email client of your choice from the console. The code shown here enables you to send emails to the email addresses you specify from your Catalyst application. Catalyst enables you to set multiple email addresses as the receivers, and to CC, BCC, and reply to through a single send mail operation. You can also attach files in your email. The maximum supported limits for email recipients and file attachments in a single send mail operation are specified below: * To address: 10 * CC: 10 * BCC: 5 * Reply to: 5 * Number of file attachments: 5 * Size of file attachments: 15 MB (through a single file or multiple files upto 5 files) Note: The subject, sender, and atleast one recipient email addresses are mandatory. Other attributes of the email are optional. #### Create a JSON Configuration You must initially create a JSON object containing the required attributes of the email. This includes the sender's email address and all the recipients of the email. You can also create file streams for the file attachments and pass them through the createReadStream() method, as well as specify the subject and content of the email as shown below. Note: You must have configured and verified the sender's email address in the Catalyst console to be able to send emails. If the sender's email is hosted on a private domain or if you choose to use a third-party email client, you must configure them before sending emails as well. The email reference used in the code below is the component instance created earlier. let fs = require('fs');//Define the file stream for file attachments //Create a config object with the email configuration let config = { from_email: 'emma@zylker.com', to_email:["vanessa.hyde@zoho.com","r.owens@zoho.com","chang.lee@zoho.com"], cc:["p.boyle@zylker.com","robert.plant@zylker.com"], bcc:["ham.gunn@zylker.com","rover.jenkins@zylker.com"], reply_to:["peter.d@zoho.com","arnold.h@zoho.com"], subject: 'Greetings from Zylker Corp!', content: "Hello,We're glad to welcome you at Zylker Corp. To begin your journey with us, please download the attached KYC form and fill in your details. You can send us the completed form to this same email address.We cannot wait to get started! Cheers! Team Zylker", attachments: [fs.createReadStream('kycform.pdf')] //create a file stream for the file attachment }; ### Send the Email You must now pass the JSON object to the sendMail() method as an argument as shown in the code below. This will initiate the email to be sent. The promise returned here will be resolved to an object as a JSON. let mailPromise = await email.sendMail(config); console.log(mailPromise); A sample response that you will receive for different versions of Node.js is shown below: { isAsync: false, project_details: { project_name: "Onboarding", id: "2136000000007733" }, from_email: "emma@zylker.com", to_email: ["vanessa.hyde@zoho.com","r.owens@zoho.com","chang.lee@zoho.com"], cc:["p.boyle@zylker.com","robert.plant@zylker.com"], bcc:["ham.gunn@zylker.com","rover.jenkins@zylker.com"], reply_to:["peter.d@zoho.com","arnold.h@zoho.com"], html_mode: true, subject: "Greetings from Zylker Corp!", content: "Hello, We're glad to welcome you at Zylker Corp. To begin your journey with us, please download the attached KYC form and fill in your details. You can send us the completed form to this same email address.We cannot wait to get started!Cheers!Team Zylker" } { isAsync: false, project_details: { project_name: "Onboarding", id: 2136000000007733 }, from_email: "emma@zylker.com", to_email: ["vanessa.hyde@zoho.com","r.owens@zoho.com","chang.lee@zoho.com"], cc:["p.boyle@zylker.com","robert.plant@zylker.com"], bcc:["ham.gunn@zylker.com","rover.jenkins@zylker.com"], reply_to:["peter.d@zoho.com","arnold.h@zoho.com"], html_mode: true, subject: "Greetings from Zylker Corp!", content: "Hello, We're glad to welcome you at Zylker Corp. To begin your journey with us, please download the attached KYC form and fill in your details. You can send us the completed form to this same email address.We cannot wait to get started!Cheers!Team Zylker" } --- ## SDK — Python — Mail -------------------------------------------------------------------------------- title: "Get Mail Instance" description: "This page describes the method to send out emails to end-users from your Python application with sample code snippets." last_updated: "2026-09-02T11:24:40.169Z" source: "https://docs.catalyst.zoho.com/en/sdk/python/v1/cloud-scale/mail/get-component-instance/" service: "Cloud Scale" related: - Mail Help (/en/cloud-scale/help/mail/introduction) -------------------------------------------------------------------------------- # Catalyst Mail Catalyst Mail enables you to add the email addresses of your business that will be used to send emails to the end-users from your Catalyst application. You can configure email addresses of public domains or of your organization's own domains. You can also use an external email client of your choice and configure its SMTP settings with Catalyst, instead of using the built-in Catalyst email client. This section covers the various SDK methods that can be used to implement the Catalyst Mail functionality in your application. ### Get a Component Instance A component instance is an object that can be used to access the pre-defined configurations specific to a particular component. This process will not fire a server-side call. The app reference used in the code below is the Python object returned as a response during SDK initialization. You can create a new mail_serviceinstance as shown below. Also note that this component instance will be used in multiple scenarios while implementing the Catalyst Mail service in your application. #Get a mail component instance mail_service = app.email() -------------------------------------------------------------------------------- title: "Send Email" description: "This page describes the method to send out emails to end-users from your Python application with sample code snippets." last_updated: "2026-09-02T11:24:40.169Z" source: "https://docs.catalyst.zoho.com/en/sdk/python/v1/cloud-scale/mail/send-email/" service: "Cloud Scale" related: - Send Email - API (/en/api/code-reference/cloud-scale/mail/send-email/#SendEmail) - Mail Help (/en/cloud-scale/help/mail/introduction) - SDK Scopes (/en/sdk/python/v1/sdk-scopes) -------------------------------------------------------------------------------- # Send Mail You must configure the domains, email addresses, and the SMTP settings for an email client of your choice from the console. The code shown here enables you to send emails to the email addresses you specify from your Catalyst application. Catalyst enables you to set multiple email addresses as the receivers, and to CC, BCC, and reply to through a single send mail operation. You can also attach files in your email. The maximum supported limits for email recipients and file attachments in a single send mail operation are specified below: * To address: 10 * CC: 10 * BCC: 5 * Reply to: 5 * Number of file attachments: 5 * Size of file attachments: 15 MB (through a single file or multiple files upto 5 files) Note: The subject, sender, and atleast one recipient email addresses are mandatory. Other attributes of the email are optional. #### Create a Dictionary You must initially create a dictionary containing the required attributes of the email. This includes the sender's email address and all the recipients of the email. You should first configure and verify the sender's email address in the Catalyst console. If the sender's email is hosted on a private domain or if you choose to use a third-party email client, you must configure them before sending emails as well. #Create a dictionary mail_obj = { 'from_email': 'emma@zylker.com', 'to_email': ["vanessa.hyde@zoho.com"], 'cc': ["robert.plant@zylker.com"], 'bcc': ["ham.gunn@zylker.com", "rover.jenkins@zylker.com"], 'reply_to': ["peter.d@zoho.com", "arnold.h@zoho.com"], 'subject': 'Greetings from Zylker Corp!', 'attachments': [file1], 'content': "<p>Hello,</p> We're glad to welcome you at Zylker Corp. To begin your journey with us, please download the attached KYC form and fill in your details. You can send us the completed form to this same email address.</p>We cannot wait to get started!<p><p>Cheers!</p><p>Team Zylker</p>" } ### Send Email You must now pass the configured dictionary to the send_mail() method as an argument as shown in the code below. This will initiate the email sending process. To know more about the component instance mail_service used below, please refer to this help section. **Parameters Used** <table class="content-table"> <thead> <tr> <th class="w20p">Parameter Name</th> <th class="w20p">Data Type</th> <th class="w60p">Definition</th> </tr> </thead> <tbody> <tr> <td>mail_obj</td> <td>Object</td> <td>A Mandatory parameter. Will store details of the sender's email address, recipient's email address, CC, BCC, reply-to address, subject, attachments, and email content.</td> </tr> </tbody> </table> #Send Email mail_service = app.email() response = mail_service.send_mail(mail_obj) A sample response is given below : { isAsync: false, project_details: { project_name: "Onboarding", id: "2136000000007733" }, from_email: ["emma@zylker.com"], to_email: ["vanessa.hyde@zoho.com"], cc:["robert.plant@zylker.com"], bcc:["ham.gunn@zylker.com","rover.jenkins@zylker.com"], reply_to:["peter.d@zoho.com","arnold.h@zoho.com"], html_mode: true, subject: "Greetings from Zylker Corp!", content: "<p>Hello,</p> We're glad to welcome you at Zylker Corp. To begin your journey with us, please download the attached KYC form and fill in your details. You can send us the completed form to this same email address.</p>We cannot wait to get started!<p><p>Cheers!</p><p>Team Zylker</p>" } Info : Refer to the SDK Scopes table to determine the required permission level for performing the above operation.