Ukázka API volání:
JSON
{ "function": "mailkit.sendmail_mass", "id": "client_id", "md5": "client_md5", "recipients": [ { "send_to": "email@email.eu", "mailinglist_id": 123456, "campaign_id": 123456, "subject":"Message subject", "message_data":"base64 encoded message body", "create_email":true, "customs": { "first_name": "First name", "last_name": "Last name", "custom1": "custom field", "custom2": "custom field" }, "content": { "var1": "variable content" }, "attachment": [ { "url": "url přílohy č. 1", "name": "název přílohy č. 1", "data": "data přílohy č. 1 v base64" }, { "url": "url přílohy č. 2", "name": "název přílohy č. 2", "data": "data přílohy č. 2 v base64" } ] }, { "send_to": "email2@email2.eu", "mailinglist_id": 123456, "campaign_id": 123456, "subject":"Message subject", "message_data":"base64 encoded message body", "create_email":true, "customs": { "first_name": "First name", "last_name": "Last name", "custom1": "custom field", "custom2": "custom field" }, "content": { "var1": "variable content" }, "attachment": [ { "url": "url přílohy", "name": "název přílohy", "data": "data přílohy v base64" } ] } ], "options" : { "id_send": "today" } }
XML
<?xml version="1.0"?>
<methodCall>
<methodName>mailkit.sendmail_mass</methodName>
<params>
<param>
<value>
<int>client_id</int>
</value>
</param>
<param>
<value>
<string>client_md5</string>
</value>
</param>
<param>
<value>
<array>
<data>
<value>
<struct>
<member>
<name>send_to</name>
<value>
<string>email@email.com</string>
</value>
</member>
<member>
<name>mailinglist_id</name>
<value>
<int>ID seznamu příjemců</int>
</value>
</member>
<member>
<name>campaign_id</name>
<value>
<int>ID kampaně</int>
</value>
</member>
<member>
<name>subject</name>
<value>
<string>předmět kampaně</string>
</value>
</member>
<member>
<name>message_data</name>
<value>
<string>obsah e-mailu</string>
</value>
</member>
<member>
<name>create_email</name>
<value>
<string>TRUE</string>
</value>
</member>
<member>
<name>customs</name>
<value>
<struct>
<member>
<name>custom1</name>
<value>Vlastní pole č.1</value>
</member>
<member>
<name>custom25</name>
<value>Vlastní pole č.25</value>
</member>
<member>
<name>first_name</name>
<value>Jméno</value>
</member>
<member>
<name>last_name</name>
<value>Příjmení</value>
</member>
</struct>
</value>
</member>
<member>
<name>attachement</name>
<value>
<array>
<data>
<value>
<struct>
<member>
<name>url</name>
<value>
<string>url přílohy č. 1</string>
</value>
</member>
<member>
<name>name</name>
<value>
<string>název přílohy č. 1</string>
</value>
</member>
<member>
<name>data</name>
<value>data přílohy č. 1 v base64</value>
</member>
</struct>
</value>
<value>
<struct>
<member>
<name>url</name>
<value>
<string>url přílohy č. 2</string>
</value>
</member>
<member>
<name>name</name>
<value>
<string>název přílohy č. 2</string>
</value>
</member>
<member>
<name>data</name>
<value>data přílohy č. 2 v base64</value>
</member>
</struct>
</value>
</data>
</array>
</value>
</member>
<member>
<name>content</name>
<value>
<struct>
<member>
<name>var1</name>
<value>
<string>proměnná 1</string>
</value>
</member>
<member>
<name>jiny_nazev</name>
<value>
<string>proměnná 2</string>
</value>
</member>
</struct>
</value>
</member>
</struct>
</value>
</data>
</array>
</value>
</param>
<param>
<value>
<struct>
<member>
<name>id_send</name>
<value>
<string>today</string>
</value>
</member>
</struct>
</value>
</param>
</params>
</methodCall>
Hodnoty
client_id * = API ID naleznete ve svém Mailkit účtu v menu Profil/Integrace.
client_md5 * = MD5 kód naleznete ve svém Mailkit účtu v menu Profil/Integrace.
send_to * = e-mailová adresa příjemce
mailinglist_id * = ID seznamu příjemců
campaign_id * = ID kampaně (v rámci jednoho API volání je možné zadat pouze 1 ID kampaně, tzn. všem příjemcům musí být zasílána stejná kampaň)
subject = volitelný jiný předmět kampaně
message_data (v Base64) = volitelný jiný obsah e-mailu, než je u dané kampaně
create_email = vložení e-mailové adresy do seznamu příjemců:
- TRUE = v případě, že zadaná e-mailová adresa není v seznamu příjemců, bude do něj vložena
- FALSE = v případě, že zadaná e-mailová adresa není v seznamu příjemců, nebude do něj vložena a zároveň na danou adresu nebude zaslán žádný e-mail
customs = volitelná personalizační data příjemce (jméno, vlastní pole atp.), které rovněž budou aktualizovány u příjemce v seznamu příjemců
attachment = volitelná příloha kampaně. Je dvojí možnost vložení - odkázání na url adresu, kde je příloha umístěna, nebo zaslání dat přílohy. Přílohu je možné přiložit pouze u transakční kampaně! Pokud bude příloha použita u netransakční zprávy, nedojde k odeslání zprávy!
- url = url přílohy
- name = název přílohy
- data (v base64) = data přílohy
Jak je uvedeno výše, přílohu můžete odeslat buď tak, že uvedete URL, kde je uložena, typicky např. někde na FTP, nebo můžete data přílohy base64 enkódovat a použít v API volání jako hodnotu pro "data". Vždy je však potřeba použít buď "url", nebo "data". Pokud pošlete hodnoty v obou parametrech ("url" i "data"), má přednost hodnota pro "url" a hodnota pro "data" bude ignorována.
Název přílohy (name):
- pokud vyplníte "url", např. použijete hodnotu - "https://cesta_k_souboru/priloha_2.pdf" - a nevyplníte hodnotu pro "name", bude soubor přílohy v e-mailu pojmenován "priloha_2.pdf"
- pokud vyplníte "url", např. použijete hodnotu - "https://cesta_k_souboru/priloha_2.pdf" - a zároveň vyplníte hodnotu pro "name" - např. "Název poslaný přes API", bude soubor přílohy v e-mailu pojmenován "Název poslaný přes API"
- pokud vyplníte "data" (tzn. pošlete base64 enkódovaná data přílohy) a zároveň vyplníte hodnotu pro "name" - např. "Název poslaný přes API", bude soubor přílohy v e-mailu pojmenován "Název poslaný přes API"
- pokud vyplníte "data" (tzn. pošlete base64 enkódovaná data přílohy) a zároveň nevyplníte hodnotu pro "name", bude soubor přílohy v e-mailu pojmenován "unnamed"
content = proměnný obsah, který se uloží do struktur shared (pro pár název/hodnota), resp. data (pro komplexní struktury a pole). Hodnoty z těchto struktur lze následně použít v šabloně prostřednictvím tagů [% shared.NAZEV_VETVE -%], resp. [% data.NAZEV_STRUKTURY -%].
id_send s hodnotou today = volitelná možnost sloučit více rozesílek v jednom dni do jedné
* povinný parametr
Po úspěšném volání se vrací:
JSON
{ "list": [ "email@email.eu", "email2@email2.eu" ], "data": "OK", "request_id": "123456", "error_status": 0 }
XML
<methodResponse>
<params>
<param>
<value>
<struct>
<member>
<name>data</name>
<value>
<string>OK</string>
</value>
</member>
<member>
<name>request_id</name>
<value>
<i4>123456789</i4>
</value>
</member>
<member>
<name>list</name>
<value>
<array>
<data>
<value>
<string>email@email.eu</string>
</value>
<value>
<string>email2@email2.eu</string>
</value>
</data>
</array>
</value>
</member>
</struct>
</value>
</param>
</params>
</methodResponse>
Hodnoty
data = OK = požadavek na hromadné odeslání byl v pořádku přijat
request_id = ID požadavku, pomocí kterého se lze dotázat na stav a možné chyby, které nastaly při zpracování tohoto požadavku.
list = seznam e-mailových adres přijatých k rozeslání
error_status
- 0 = volání proběhlo úspešně
- 1+ = volání selhalo