Skip to main content

Node JS SDK Samples - Send Mail Operations

Get Email Addresses
              
              
const SendMailOperations = require("@zohocrm/nodejs-sdk-2.1/core/com/zoho/crm/api/send_mail/send_mail_operations").SendMailOperations;
const ResponseWrapper = require("@zohocrm/nodejs-sdk-2.1/core/com/zoho/crm/api/send_mail/response_wrapper").ResponseWrapper;
const Mail = require("@zohocrm/nodejs-sdk-2.1/core/com/zoho/crm/api/send_mail/mail").Mail;
const InventoryTemplate = require("@zohocrm/nodejs-sdk-2.1/core/com/zoho/crm/api/inventory_templates/inventory_template").InventoryTemplate;
const BodyWrapper = require("@zohocrm/nodejs-sdk-2.1/core/com/zoho/crm/api/send_mail/body_wrapper").BodyWrapper;
const UserAddress = require("@zohocrm/nodejs-sdk-2.1/core/com/zoho/crm/api/send_mail/user_address").UserAddress;
const APIException = require("@zohocrm/nodejs-sdk-2.1/core/com/zoho/crm/api/send_mail/api_exception").APIException;
const ActionWrapper = require("@zohocrm/nodejs-sdk-2.1/core/com/zoho/crm/api/send_mail/action_wrapper").ActionWrapper;
const SuccessResponse = require("@zohocrm/nodejs-sdk-2.1/core/com/zoho/crm/api/send_mail/success_response").SuccessResponse;

class SendMail {

    static async getEmailAddresses() {
        //Get instance of SendMailOperations Class
        let sendMailOperations = new SendMailOperations();

        //Call getEmailAddresses method that takes ParameterMap instance as parameter
        let response = await sendMailOperations.getEmailAddresses();

        if (response != null) {
            //Get the status code from response
            console.log("Status code " + response.getStatusCode());

            if ([204, 304].includes(response.getStatusCode())) {
                console.log(response.getStatusCode() == 204 ? "No Content" : "Not Modified");

                return;
            }

            //Get object from response
            let responseHandler = response.getObject();

            if (responseHandler instanceof ResponseWrapper) {
                //Get the received ResponseWrapper instance
                let responseWrapper = responseHandler;

                let emails = responseWrapper.getFromAddresses();

                for (let email of emails) {
                    console.log("UserName: " + email.getUserName());

                    console.log("Mail Type: " + email.getType());

                    console.log("Mail : " + email.getEmail());

                    console.log("Mail ID: " + email.getId());

                    console.log("Mail Default: " + email.getDefault());
                }
            }
            //Check if the request returned an exception
            else if (responseHandler instanceof APIException) {
                //Get the Status
                console.log("Status: " + responseHandler.getStatus().getValue());

                //Get the Code
                console.log("Code: " + responseHandler.getCode().getValue());

                console.log("Details");

                //Get the details map
                let details = responseHandler.getDetails();

                if (details != null) {
                    Array.from(details.keys()).forEach(key => {
                        console.log(key + ": " + details.get(key));
                    });
                }

                //Get the Message
                console.log("Message: " + responseHandler.getMessage().getValue());
            }
        }
    }
}

module.exports = { SendMail }
 
Send Mail