XML-RPC request must be sent in the format displayed below.
NOTICE: Data must be Base64 encoded.
API call example:
JSON
{ "function": "mailkit.campaigns.create", "id": "client_id", "md5": "client_md5", "parameters": { "name": "name", "subject": "subject", "ID_allow_email": "ID of sending email address", "ID_mailing_list":"ID of mailing list", "ID_delivery_feed":"ID of delivery feed datasource", "ID_query":"ID of query", "ID_template":"ID of template", "type_message":"email|sms", "google_analytics":"true|false", "analytic_name":"name for analytics", "ID_tagset":"ID of tagset", "test_mode":"true|false", "test_emails":"comma separated list of emails", "content":"content 1", "content2":"content 2", "content3":"content 3", "content4":"content 4", "content5":"content 5", "content6":"content 6", "content7":"content 7", "content8":"content 8", "content9":"content 9", "content10":"content 10", "reply_to":"email@domain.com", "type_reply_to":"prefer_recipient", "unsubscribe_email":"email@domain.com", "web_template":"true|false", "style_inline":"true|false", "ID_unsubscribe_group":"ID of topic" }, "ab_version":{ "subject":"subject B version", "content":"content 1 B version", "content2":"content 2 B version", "ID_allow_email":"ID of sending email address", "ID_template":"ID of template", "ab_percentage":"1-99", "ab_evaluation":"open|click|conversion|ctr", "ab_evaluation_time":"1h-4d" } }
XML
<?xml version="1.0"?>
<methodCall>
<methodName>mailkit.campaigns.create</methodName>
<params>
<param>
<value>
<int>client_id</int>
</value>
</param>
<param>
<value>
<string>client-md5</string>
</value>
</param>
<param>
<value>
<struct>
<member>
<name>name</name>
<value>
<string>campaign name</string>
</value>
</member>
<member>
<name>subject</name>
<value>
<string>subject</string>
</value>
</member>
<member>
<name>ID_allow_email</name>
<value>
<string>ID of sending email address</string>
</value>
</member>
<member>
<name>type_message</name>
<value>
<string>email|sms</string>
</value>
</member>
<member>
<name>ID_mailing_list</name>
<value>
<string>ID of mailing list</string>
</value>
</member>
<member>
<name>ID_delivery_feed</name>
<value>
<string>ID of delivery feed datasource</string>
</value>
</member>
<member>
<name>ID_query</name>
<value>
<string>ID of query</string>
</value>
</member>
<member>
<name>ID_template</name>
<value>
<string>ID of template</string>
</value>
</member>
<member>
<name>google_analytics</name>
<value>
<string>true|false</string>
</value>
</member>
<member>
<name>analytic_name</name>
<value>
<string>name for analytics</string>
</value>
</member>
<member>
<name>ID_tagset</name>
<value>
<string>ID of tagset</string>
</value>
</member>
<member>
<name>content</name>
<value>
<string>content 1</string>
</value>
</member>
<member>
<name>reply_to</name>
<value>
<string>ZW1haWxAZG9tYWluLmNvbQ==</string>
</value>
</member>
<member>
<name>type_reply_to</name>
<value>
<string>ZGlzYWJsZWQ=</string>
</value>
</member>
<member>
<name>unsubscribe_email</name>
<value>
<string>ZW1haWxAZG9tYWluLmNvbQ==</string>
</value>
</member>
<member>
<name>web_template</name>
<value>
<string>true|false</string>
</value>
</member>
<member>
<name>style_inline</name>
<value>
<string>true|false</string>
</value>
</member>
<member>
<name>ID_unsubscribe_group</name>
<value>
<string>ID of topic</string>
</value>
</member>
</struct>
</value>
</param>
<---settings related to AB test, B version of campaign--->
<param>
<value>
<struct>
<member>
<name>subject</name>
<value>
<string>subject B version</string>
</value>
</member>
<member>
<name>content</name>
<value>
<string>content 1 B version</string>
</value>
</member>
<member>
<name>content2</name>
<value>
<string>content 2 B</string>
</value>
</member>
<member>
<name>ID_allow_email</name>
<value>
<string>ID of sender email address</string>
</value>
</member>
<member>
<name>ab_percentage</name>
<value>
<string>1-99</string>
</value>
</member>
<member>
<name>ab_evalution</name>
<value>
<string>open|click|conversion|ctr</string>
</value>
</member>
<member>
<name>ab_evalution_time</name>
<value>
<string>1h-4d</string>
</value>
</member>
</struct>
</value>
</param>
------
</params>
</methodCall>
Values
client_id * = client ID can be found in your Mailkit account's menu Profile/Integration.
client_md5 * = MD5 code can be found in your Mailkit account's menu Profile/Integration.
name (Base64) * = name of campaign
subject (Base64) * = subject of campaign
ID_allow_email (Base64) * = ID of sender address
type_message (Base64) = type of message
- email = e-mail campaign
- sms = SMS campaign
ID_mailing_list (Base64) = ID of mailing list / lists. (ID of mailing lists are comma separated)
ID_delivery_feed (Base64) = ID of data source used for delivery (delivery feed). Campaign may have either a mailing list (one or many) or a delivery feed assigned (one).
ID_template (Base64) = ID of template
ID_query (Base64) = ID of query (only when used together with mailing lists)
google_analytics (v base64) = automatically tag links using UTM parameters for analytics
- true = enabled
- false = disabled
analytics_name (v base64) = UTM analytics campaign name
ID_tagset (base64) = ID of tagset for Google Analytics
content (Base64) = content 1
content2 (Base64) = content 2. Total number of contents is 10.
content_txt (Base64) = content in TXT format. (When autogenerating plain text from HTML is off).
files (Base64) = ID of attachments (ID of attachments are comma separated)
reply_to (Base64) = e-mail address for reply-to
type_reply_to (Base64) = reply-to address type setting. It can have the following values:
- disabled
- force_campaign
- force_recipient
- prefer_recipient
unsubscribe_email (Base64) = e-mail address for sending unsubscribes
web_template (Base64) = use microsite
- true = yes
- false = no
style_inline (Base64) = convert CSS styles to inline
- true = yes
- false = no
ID_unsubscribe_group (Base64) = ID of topic
ab_percentage (base64) = AB test group size as percentage (1 - 99)
ab_evalution (base64) = AB test evaluation criteria (open|click|conversion|ctr)
ab_evalution_time (base64) = AB test evaluation time (1h - 23h, 1d - 4d)
* required value
Successful call response:
JSON
{ "message": "Campaign 123456789 created", "error_status": 0, "ID_message": "123456789" }
XML
<?xml version="1.0" encoding="utf-8"?>
<methodResponse>
<params>
<param>
<value>
<i4>123456789</i4>
</value>
</param>
</params>
</methodResponse>
Values
ID of newly created campaign
Unsuccessful call response:
JSON
{ "error_status": 1, "error_code": 1, "error": "Missing name of campaign" }
XML
<?xml version="1.0" encoding="utf-8"?>
<methodResponse>
<params>
<param>
<value>
<string>Missing name of campaign</string>
</value>
</param>
</params>
</methodResponse>
Values
Missing name of campaign (error_code:1) = campaign name is missing
Missing subject of campaign (error_code:2/52 for B ver) = campaign subject is missing
Missing ID allow email (error_code:3/53 for B ver) = ID_allow_email is missing
error allow email: ID, status, auth (error_code:4/54 for B ver) = ID_allow_email selected can not be used (sending address is not properly configured
Wrong ID_template (error_code:5/55 for B ver) = ID_template provided is not valid
Invalid ID_query (error_code:6) = Requested query ID was not found
Wrong ID_query (error_code: 7) =Requested query can not be used
Invalid ID_delivery_feed (error_code: 8) = Requested delivery feed ID doesn't exist or is not a delivery feed data source.
No valid emails provided in test_emails param (error_code: 9) = Empty or invalid list of emails provided
Invalid tagset ID (error_code: 10) = Requested tagset doesn't exist
Wrong ID_mailing_list (error_code: 11) = Invalid mailing list ID requested
Confused parameters - it is not possible to combine mailing lists and delivery feeds (error_code: 12) = Request contains both mailing list ID and delivery feed ID which is an invalid combination.
Confused parameters - it is not possible to combine delivery capping and delivery feeds (error_code: 13) = Request contains both delivery feed ID and delivery capping query ID which is an invalid combination.
Content failed to save (error_code: 14) = An error occurred while saving message content.
Missing ab percentage (error_code: 82) = AB test group size percentage value is missing
Wrong ab percentage (error_code: 83) = Invalid AB test group size percentage
Wrong ab evalution (error_code: 81) = Invalid AB test evaluation policy requested
Wrong ab evalution time (error_code: 81) = Invalid AB test evaluation time duration requested
Unknown type_reply_to = invalid “type_reply_to”