Send Email API

The transmission API lets you to send emails to numerous recipients.

Note: Transmission refers to a campaign. For example, transmission_id means the campaign's unique ID.

Request Type

  • POST

Request URL

https://campaigns.zoho.com/emailapi/v2/transmission

Content-Type

application/json

List of Request Body Attributes

Parameters

Data Type

Description

transmission_name

String

A name for the email. (Max length: 150)

from

JSON object

A sender address.

recipients

JSON array

A list of recipients who will receive the email.

address

String

The email address to deliver the emails. (Max length: 100)

nameStringIndicates the sender's name (Max length: 100)
reply_toStringThe email address to which the subscribers reply. This is an optional parameter. (Max length: 100)

subject

String

The email's subject line. (Max length: 200)

content

String

The generated message for the email.

html

String

The HTML for the email's text/HTML part.

text

String

The text for the email's text/plain part. If 'html' node is provided, text need not be specified as it is automatically generated.

additional_dataString Any additional information for the email.
merge_dataStringAny merge tags used in the email.
recipient_list_idStringThe ID of a List in which the recipients are a part of.
template_idStringThe ID of the template
used to load the content of the email.
optionsJSONObjectOptions to customize your transmission.
schedule_atLongUTC timestamp in milliseconds that represents the time at which the transmission must be sent
tracking (deprecated, will be removed soon)StringIndicates whether opens/clicks tracking must be enabled or disabled for this campaign. If this parameter is absent, tracking will be enabled by default.
Values: enabled/disabled
open_trackingStringIndicates whether open tracking must be enabled or disabled for this transmission. If the parameter is absent, tracking will be enabled by default.
Values: enabled/disabled
click_trackingStringIndicates whether click tracking must be enabled or disabled for this transmission. If the parameter is absent, tracking will be enabled by default.
Values: enabled/disabled

List of Response Body Attributes

ParametersData TypeDescription
rejected_recipientsIntegerThe count of the recipients rejected by our API. Rejection maybe due to invalid syntax.
accepted_recipientsIntegerThe count of the recipients accepted by our API.
responseJSON ObjectContains the response details of the API.
codeIntegerSuccess or failure code.
messageStringSuccess or failure message returned by the API.
transmission_idStringUnique ID of the transmission.
errorsJSON ArrayContains the error details of the API such as 'code' and 'message'.

Unsubscribe Link

Unsubscribe links can be included in the content using an anchor tag with the attribute data-zcea-unsubcribe="1". Refer to the 'Sample Request Payload for transmission with unsubscribe link' to your right. If you had configured an unsubscribe webhook, it will be called when a contact clicks this link. This webhook will contain the contact details, from which you can get the contact email and add them to your suppression list using our Suppression API.
 

Possible Error Cases

Error Codes

Description

400001

Transmission name not provided.

400002

The recipient list is not provided.

400003

Content details are not provided.

400004

Sender details are not provided.

400005

The sender address is not provided.

400006

Subject is not provided.

400007

Content body is not provided.

400008

Invalid sender address.

400009

The sender domain is not authenticated. Please authenticate your domain before sending emails.

400011

Recipient limit exceeded.

400012CNAME record not verified for bounce domain.

400013

None of the recipients are valid.

400015Your account license has expired. 
400016You do not have sufficient credits to perform this action.
400017Schedule time is lesser than current time.
400024

Invalid tracking option

400025

Invalid Reply-To address

  400026Your trial period has ended

Sample Request Payload for Transmission with inline content

Copied{
 "transmission_name": "hello_customer",
 "recipients": [
   {
     "address": "lucy@example.campaigns.zoho.com",
      "name": "Lucy Girea",
      "additional_data": {
        "phone" : "+919876543210",
        "country": "CA"
     },
     "merge_data": {
       "first_name": "Lucy"
     }
   }
 ],
 "content": {
   "from": {
     "address": "aron@marketing.campaigns.zoho.com",
     "name": "Aron Fletcher"
   },
   "subject": "Welcome to Zylker",
   "html": "<html><body>Welcome $[first_name|Customer]$, your content here!<br></body></html>",
 }
}

Sample Request Payload for Transmission with pre-configured recipient list

Copied{
  "transmission_name": "hello_customer",
  "recipient_list_id": "8000000097065",
  "content": {
    "from": {
      "address": "aron@vnaash.in",
      "name": "Aron Fletcher"
    },
    "subject": "Welcome to Zylker 2",
    "text": "Welcome, $[first_name], your content here!"
  }
}

Sample Request Payload for Transmission with template content

Copied{
  "transmission_name": "hello_customer",
  "recipients": [
    {
      "address": "lucy@example.campaigns.zoho.com",
      "additional_data": {
        "phone": "+919876543210",
        "country": "CA"
      },
      "merge_data": {
        "first_name": "Lucy"
      }
    }
  ],
  "content": {
    "from": {
      "address": "aron@vnaash.in",
      "name": "Aron Fletcher"
    },
    "subject": "Welcome to Zylker 2",
    "template_id": "8000000124003"
  }
}

Sample Request Payload for scheduled transmission

Copied{
  "transmission_name": "hello_customer",
  "recipients": [
    {
      "address": "lucy@example.campaigns.zoho.com",
      "name": "Lucy Girea",
      "additional_data": {
        "phone": "+919876543210",
        "country": "CA"
      },
      "merge_data": {
        "first_name": "Lucy"
      }
    }
  ],
  "options": {
    "schedule_at": 1728366058000
  },
  "content": {
    "from": {
      "address": "aron@marketing.campaigns.zoho.com",
      "name": "Aron Fletcher"
    },
    "subject": "Welcome to Zylker",
    "html": "<html><body>Welcome $[first_name|Customer]$, your content here!<br></body></html>"
  }
}

Sample Request Payload for transmission with tracking disabled

Copied{
  "transmission_name": "hello_customer",
  "recipients": [
    {
      "address": "lucy@example.campaigns.zoho.com",
      "name": "Lucy Girea",
      "additional_data": {
        "phone": "+919876543210",
        "country": "CA"
      },
      "merge_data": {
        "first_name": "Lucy"
      }
    }
  ],
  "options": {
    "open_tracking": "disabled",
    "click_tracking": "disabled"
  },
  "content": {
    "from": {
      "address": "aron@marketing.campaigns.zoho.com",
      "name": "Aron Fletcher"
    },
    "subject": "Welcome to Zylker",
    "html": "<html><body>Welcome $[first_name|Customer]$, your content here!<br></body></html>"
  }
}

Sample Request Payload for transmission with unsubscribe link

Copied{
  "transmission_name": "hello_customer",
  "recipients": [
    {
      "address": "lucy@example.campaigns.zoho.com",
      "additional_data": {
        "phone": "+919876543210",
        "country": "CA"
      },
      "merge_data": {
        "first_name": "Lucy"
      }
    }
  ],
  "content": {
    "from": {
      "address": "aron@vnaash.in",
      "name": "Aron Fletcher"
    },
    "subject": "Welcome to Zylker 2",
    "html": "<html><body>Welcome $[first_name|Customer]$, your content goes here <br/><br/> <a href=\"https://zylker.com.com/unsubscribe\" data-zcea-unsubscribe=\"1\" title=\"Unsub\">Unsubscribe</a></body></html>"
  }
}

Sample Request Payload for transmission with reply-to address

Copied{

 "transmission_name": "hello_customer",

 "recipients": [

   {

     "address": "lucy@example.campaigns.zoho.com",

    "name": "Lucy Girea",

    "additional_data": {

    "phone" : "+919876543210",

    "country": "CA"

     },

     "merge_data": {

       "first_name": "Lucy"

     }

   }

 ],

 "content": {

   "from": {

     "address": "aron@marketing.campaigns.zoho.com",

     "name": "Aron Fletcher"

   },

    "reply_to": "aron@reply.campaigns.zoho.com",

   "subject": "Welcome to Zylker",

   "html": "<html><body>Welcome $[first_name|Customer]$, your content here!<br></body></html>",

 }

Sample Response - Success

Copied{
   "rejected_recipients": 1,
   "accepted_recipients": 1,
   "response": {
       "code": 200001,
       "message": "Your transmission has been scheduled successfully"
   },
   "transmission_id": "146429000000058021"
}

Sample Response - Failure

Copied{
   "errors": [
       {
           "code": 400012,
           "message": "CNAME not verified for bounce domain"
       },
       {
           "code": 400009,
           "message": "Sender domain not authenticated. Please authenticate your domain before sending"
       }
   ]
}