SmartEmailing 2.0 API
Popis způsobu používání služby
1 Historie dokumentu
Datum Popis 12.03.2014 Created 1.0 11.04.2014 Added getAllUnsubscribed and typping errors 24.04.2014 Added ContactLists ­ getContacts and short info
2 Obsah
1. Základní informace 1.1 Zasílání XML requestů 1.2 Zabezpečení spojení 1.3 Vzorový příklad připojení z PHP 1.4 Jak testovat XML požadavky? 2. Podporované funkce 2.1 Kontrola přihlašovacích údajů 2.2 Zjištění ID vlastního účtu 2.3 Smazání jednoho seznamu kontaktů 2.4 Získání všech seznamů kontaktů pod účtem 2.5 Získání jednoho seznamu kontaktů pod účtem 2.6 Vytvoření seznamu kontaktů 2.7 Získání struktury vlastního pole 2.8 Kampaně: Získání všech kampaní pod účtem 2.10 Kampaně: Smazání určité kampaně 2.11 Kampaně: Vytvoření kampaně 2.12 Kampaně: Update změna kampaně 2.13 Statistika kampaní: Získat vrácené kontakty dle kampaně 2.14 Statistika kampaní: Získat kontakty, které neotevřely danou kampaň 2.15 Statistika kampaní: Získat kontakty, které se z dané kampaně odhlásily 2.16 Statistika kampaní: Získat kontakty, které klikly na odkaz v dané kampani 2.17 Statistika kampaní: Získat kontakty, které otevřely danou kampaň 2.18 Statistika kampaní: Získat přehled pro celou kampaň 2.19 Statistika SmartKampaně: Získat odhlášené kontakty dle SmartKampaně 2.21 Statistika SmartKampaně: Získat kontakty, které otevřely danou SmartKampaň 2.22 Statistika SmartKampaně: Získat kontakty, které klikly na odkaz v dané SmartKampani 2.23 Statistika SmartKampaní: Získat vrácené kontakty dle SmartKampaně 2.24 Statistika SmartKampaně: Získat přehled pro celou SmartKampaň 2.25 Kontakt: Získat všechny kontakty 2.24 Kontakt: Získat jeden kontakt 2.25 Kontakt: Vytvořit, update kontakt 2.26 Kontakt: Smazat kontakt 2.27 Kontakt: Získat všechny odhlášené kontakty 2.28 Seznamy kontaktů: Získat kontakty dle seznamu kontaktů 3 1. Základní informace
SmartEmailing API je služba umožňující uživatelům pomocí zasílaných XML požadavků vzdáleně spouštět funkce systému SmartEmailing. SmartEmailing poskytuje možnost automaticky aktualizovat a používat systém bez nutnosti fyzického přístupu. Použitím obecného a ve většině programovacích jazyků podporovaného značkovacího jazyka můžete propojit SmartEmailing s prakticky každou aplikací. Následují obecné poznámky týkající se celého systému: ● systém standardně pracuje s kódováním UTF­8 ● v rámci aplikace se pracuje s unikátním kontaktem, který je přiřazován do vícero sezanamů, kde může mít unikátní stav 1.1 Zasílání XML requestů
Veškerá komunikace je realizovaná pomocí HTTP protokolu. Žádosti jsou odesílány na předem určenou adresu jako POST požadavek obsahující XML feed s potřebnými údaji. Uživatelské jméno pro XML API je stejné jako přihlašovací jméno do webového prostředí, XML token Vám bude zaslán po objednání služby. URL API je https://app.smartemailing.cz/api/v2 V příkladech v tomto dokumentu budou jako autentizační údaje použity fiktivní přístupy: ● URL: https://app.smartemailing.cz/api/v2 ● USERNAME: USERNAME ● TOKEN: TOKEN Není­li uvedeno jinak, jsou všechny uvedené položky v zasílané XML žádosti povinné. U těchto položek také záleží na pořadí, ve kterém jsou zaslány. Je­li u daného uzlu uvedeno, že je vyžadováno, znamená to, že systém očekává neprázdnou hodnotu (tedy např. i 0). 1.2 Zabezpečení spojení
Pro komunikaci s API je využíváno výlučně šifrované spojení. Proto pro komunikaci pro API používejte výlučně odkaz se “s” na konci. s
URL API je http ://app.smartemailing.cz/api/v2 4 1.3 Vzorový příklad připojení z PHP
Každá metoda bude doplněna o vzorový příklad zápisu v programovacím jazyku PHP. Pro práci s PHP je třeba mít kromě metody uložen i soubor base.php . Kompletní vzorové kódy jsou ke stažení ZDE. Obsahuje: <?php $token = 'TOKEN'; $username = 'LOGIN'; function v($result) { echo $result; //print_r($result); die(); } function sendRequest($xml) { $ch = curl_init('https://app.smartemailing.cz/api/v2'); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_POSTFIELDS, $xml); $result = curl_exec($ch); if ($result === false) { echo "Chyba v zasilani XML requestu!"; } else { header ("Content­Type:text/xml"); v($result); /** @noinspection PhpUsageOfSilenceOperatorInspection */ $xml_doc = @simplexml_load_string($result); // intentionally @ if (!$xml_doc) { echo "ERR in request" . PHP_EOL; v($result); } 5 echo PHP_EOL . $result . PHP_EOL . '­­­­­­­­­­­­­­­­­­' . PHP_EOL; echo 'Status is ' . $xml_doc­>status . PHP_EOL; if ($xml_doc­>status == 'SUCCESS') { print_r($xml_doc­>data); } else { echo $xml_doc­>errormessage . PHP_EOL; } } } 1.4 Jak testovat XML požadavky?
Pokud chcete testovat XML jednoduše a rychle. Doporučuji nainstalovat plugin do Google Chrome s názvem Advanced rest client. 2. Podporované funkce
2.1 Kontrola přihlašovacích údajů
S touto funkcí je možno zkontrolovat správnost údajů a zda nám napojení na API funguje. Vzor XML: <xmlrequest> <username>USERNAME</username> <usertoken>TOKEN</usertoken> <requesttype>Users</requesttype> <requestmethod>testCredentials</requestmethod> <details> </details> </xmlrequest> Vzor PHP: require '../base.php'; $xml = ' <xmlrequest> 6 <username>'.$username.'</username> <usertoken>'.$token.'</usertoken> <requesttype>Users</requesttype> <requestmethod>testCredentials</requestmethod> <details> </details> </xmlrequest> '; sendRequest($xml); Když dotaz projde správně, vrátí se: <?xml version="1.0" encoding="UTF­8" ?> <response> <status> SUCCESS </status> <data> Authentication successful. </data> </response> Pokud dojde k chybě údajů: <?xml version="1.0" encoding="UTF­8" ?> <response> <status> FAILED </status> <errormessage> Invalid credentials </errormessage> </response> 2.2 Zjištění ID vlastního účtu
S touto funkcí je možno zjistit ID účtu, na které máme k dispozici údaje API. Požadavek v XML: <xmlrequest> <username>USERNAME</username> <usertoken>TOKEN</usertoken> 7 <requesttype>Users</requesttype> <requestmethod>getId</requestmethod> <details> </details> </xmlrequest> Požadavek v PHP: require '../base.php'; $xml = ' <xmlrequest> <username>'.$username.'</username> <usertoken>'.$token.'</usertoken> <requesttype>Users</requesttype> <requestmethod>getId</requestmethod> <details> </details> </xmlrequest> '; sendRequest($xml); Když dotaz projde správně, vrátí se: <?xml version="1.0" encoding="UTF­8" ?> <response> <status> SUCCESS </status> <data> 2399 </data> </response> 2.3 Smazání jednoho seznamu kontaktů
Pomocí této metody můžeme smazat seznam kontaktů, pokud známe jeho ID. Vzorové XML: <xmlrequest> <username>USERNAME</username> <usertoken>TOKEN</usertoken> <requesttype>ContactLists</requesttype> 8 <requestmethod>delete</requestmethod> <details> <id>30</id> <removecontacts>1</removecontacts><!­­ optional ­­> </details> </xmlrequest> Vzorové PHP: require '../base.php'; $xml = ' <xmlrequest> <username>' . $username . '</username> <usertoken>' . $token . '</usertoken> <requesttype>ContactLists</requesttype> <requestmethod>delete</requestmethod> <details> <id>30</id> <removecontacts>1</removecontacts><!­­ optional ­­> </details> </xmlrequest> '; sendRequest($xml); Když dotaz projde správně, vrátí se: <?xml version="1.0" encoding="UTF­8" ?> <response> <status> SUCCESS </status> <data> 1 </data> </response> 2.4 Získání všech seznamů kontaktů pod účtem
Získáme tak výpis všech seznamů kontaktů, které jsou pod účtem s danými přístupy. Dále z výpisu můžeme využít tyto informace: ● ID seznamu, ● Veřejný název seznamu, 9 ●
●
●
●
●
●
●
●
Datum vytvoření, Výpis vlastních polí, Poznámku, Jméno vlastníka seznamu, E­mail vlastníka seznamu, E­mail pro odpovědi, Podpis vlastníka seznamu, ID segmentů. Vzorové XML: <xmlrequest> <username>LOGIN</username> <usertoken>TOKEN</usertoken> <requesttype>ContactLists</requesttype> <requestmethod>getAll</requestmethod> <details> </details> </xmlrequest> Vzorové PHP: require '../base.php'; $xml = ' <xmlrequest> <username>'.$username.'</username> <usertoken>'.$token.'</usertoken> <requesttype>ContactLists</requesttype> <requestmethod>getAll</requestmethod> <details> </details> </xmlrequest> '; sendRequest($xml); Když dotaz projde správně, vrátí se: <?xml version="1.0" encoding="UTF­8" ?> <response> <status>SUCCESS</status> <data> <item><name>AB</name><publicname></publicname><notes></notes><created
>2014­02­04 13:22:03</created><alertIn>0</alertIn><alertOut>0</alertOut><trackedD
efaultFields>a:3:{i:0;s:12:&quot;emailaddress&quot;;i:1;s:4:&quot;cf_
10 1&quot;;i:2;s:4:&quot;cf_3&quot;;}</trackedDefaultFields><sendername>
Václav Růt</sendername><senderemail>EMAIL</senderemail><replyto>[email protected]
.cz</replyto><signature></signature><segment_id></segment_id><id>3</i
d></item><item><name>test</name><publicname></publicname><notes></not
es><created>2014­02­18 16:10:21</created><alertIn>0</alertIn><alertOut>0</alertOut><trackedD
efaultFields>a:0:{}</trackedDefaultFields><sendername>Václav Růt</sendername><senderemail>[email protected]</senderemail><replyto>ru
[email protected]</replyto><signature></signature><segment_id></segment_i
d><id>4</id></item> </data> </response> 2.5 Získání jednoho seznamu kontaktů pod účtem
Pomocí této metody získáme podrobné informace o jednom účtu kontaktů. K získání této informace je třeba znát ID seznamu kontaktů. Poté dostaneme výpis který bude obsahovat: ● Veřejný název seznamu, ● Datum vytvoření, ● Výpis vlastních polí, ● Poznámku, ● Jméno vlastníka seznamu, ● E­mail vlastníka seznamu, ● E­mail pro odpovědi, ● Podpis vlastníka seznamu, ● ID segmentů. Pro získání informací z pole <trackedDefaultFields> je třeba zavolat na výpis PHP funkci unserialize(), které tuto informaci rozklíčuje a vrátí PHP value, o unserialize() více info ZDE. Využití částí<alertIn> a <alertOut> budou zpřístupněny a popsány v dalších verzích dokumentace, jelikož aktuálně není doprogramována celá logika. Vzorové XML: <xmlrequest> <username>USERNAME</username> <usertoken>TOKEN</usertoken> <requesttype>ContactLists</requesttype> <requestmethod>getOne</requestmethod> 11 <details> <id>NUMBER</id> </details> </xmlrequest> Vzorové PHP: require '../base.php'; $xml = ' <xmlrequest> <username>'.$username.'</username> <usertoken>'.$token.'</usertoken> <requesttype>ContactLists</requesttype> <requestmethod>getOne</requestmethod> <details> <id>NUMBER</id> </details> </xmlrequest> '; sendRequest($xml); Když dotaz projde správně, vrátí se: <?xml version="1.0" encoding="UTF­8" ?> <response> <status> SUCCESS </status> <data> <name> AB </name> <publicname /> <notes /> <created> 2014­02­04 13:22:03 </created> <alertIn> 12 0 </alertIn> <alertOut> 0 </alertOut> <trackedDefaultFields> a:3:{i:0;s:12:"emailaddress";i:1;s:4:"cf_1";i:2;s:4:"cf_3";} </trackedDefaultFields> <sendername> Václav Růt </sendername> <senderemail> [email protected] </senderemail> <replyto> [email protected] </replyto> <signature /> <segment_id /> </data> </response> Když dotaz neprojde správně kvůli špatnému ID seznamu, vrátí se: <?xml version="1.0" encoding="UTF­8" ?> <response> <status> FAILED </status> <errormessage> contact list does not exist </errormessage> </response> 13 2.6 Vytvoření seznamu kontaktů
Tímto způsobem je možno přes API vytvořit seznam kontaktů pod určitým účtem. Pro vytvoření seznamu kontaktů je třeba do XML doplnit tyto informace, bez kterých není vytvoření možné: ● <username> ­ Uživatelské jméno ● <usertoken> ­Token ● <name> ­ Název seznamu ● <trackedDefaultFields> ­ Definice vlastních polí ● <sendername> ­ Jméno odesílatele pro daný seznam kontaktů ● <senderemail> ­ E­mail odesílatele pro daný seznam kontaktů ● <replyto> ­ E­mail pro odpovědi pro daný seznam kontaktů ● <publicname> ­ Veřejný název, který se zobrazí klientům při odhlašování ze seznamu Vzorové XML: <xmlrequest> <username>USERNAME</username> <usertoken>TOKEN</usertoken> <requesttype>ContactLists</requesttype> <requestmethod>create</requestmethod> <details> <name>List po API</name> <trackedDefaultFields>a:2:{i:0;s:7:"updated";i:1;s:11:"blacklisted";}
</trackedDefaultFields> <sendername>Václav Růt</sendername> <senderemail>[email protected]</senderemail> <replyto>[email protected]</replyto> <publicname>Testovací seznam</publicname> </details> </xmlrequest> Vzorové PHP: require '../base.php'; $xml = ' <xmlrequest> <username>' . $username . '</username> <usertoken>' . $token . '</usertoken> <requesttype>ContactLists</requesttype> <requestmethod>create</requestmethod> <details> <name>List po API</name> 14 <trackedDefaultFields>a:2:{i:0;s:7:"updated";i:1;s:11:"blacklisted";}
</trackedDefaultFields> <sendername>Václav Růt</sendername> <senderemail>[email protected]</senderemail> <replyto>[email protected]</replyto> <publicname>Testovací seznam</publicname> </details> </xmlrequest> '; sendRequest($xml); Pokud je seznam úspěšně vytvořen, vrací se: <?xml version="1.0" encoding="UTF­8" ?> <response> <status> SUCCESS </status> <data> <name> List po API </name> <publicname> Testovací seznam </publicname> <notes /> <created> 2014­03­19 13:29:25 </created> <alertIn> 0 </alertIn> <alertOut> 0 </alertOut> <trackedDefaultFields> a:2:{i:0;s:7:"updated";i:1;s:11:"blacklisted";} </trackedDefaultFields> <sendername> 15 Václav Růt </sendername> <senderemail> [email protected] </senderemail> <replyto> [email protected] </replyto> <signature /> <segment_id /> <id> 5 </id> </data> </response> 2.7 Získání struktury vlastního pole
Tato funkce vrátí strukturu vlastního pole, abyste věděli, v jakém formátu máte toto vlastní pole posílat, pokud vytváříte kontakt s tímto vlastním polem. Pro úspěšné zaslání requestu je třeba znát: ● username ­ uživatelské jméno ● token ­ api klíč ● id ­ id vlastího pole Vzorové XML: <xmlrequest> <username>USERNAME<username> <usertoken>TOKEN</usertoken> <requesttype>CustomFields</requesttype> <requestmethod>describe</requestmethod> <details> <id>41</id> </details> </xmlrequest> Vzorové PHP: require '../base.php'; $xml = " 16 <xmlrequest> <username>{$username}</username> <usertoken>{$token}</usertoken> <requesttype>CustomFields</requesttype> <requestmethod>describe</requestmethod> <details> <id>41</id> </details> </xmlrequest> "; sendRequest($xml); Pokud je vše v pořádku a chceme získat strukturu vlastního pole typu “radio button”, vrátí se toto: <?xml version="1.0" encoding="UTF­8" ?> <response> <status> SUCCESS </status> <data> <name> asdas </name> <type> radio </type> <options> <item> <id> 1 </id> <customfield_id> 4 </customfield_id> <name> a </name> <order> 0 </order> </item> 17 <item> <id> 2 </id> <customfield_id> 4 </customfield_id> <name> b </name> <order> 1 </order> </item> <item> <id> 3 </id> <customfield_id> 4 </customfield_id> <name> c </name> <order> 2 </order> </item> </options> </data> </response> 2.8 Kampaně: Získání všech kampaní pod účtem
Pomocí tohoto dotazu získáme všechny kampaně pod účtem. Vzorové XML: <xmlrequest> <username>[email protected]</username> 18 <usertoken>ZOjKBcfwqS7AbCG4Lo1aENi794JoJGVneSyt8CkA</usertoken> <requesttype>Campaigns</requesttype> <requestmethod>getAll</requestmethod> <details> </details> </xmlrequest> Vzorové PHP: require '../base.php'; $xml = " <xmlrequest> <username>USERNAME</username> <usertoken>TOKEN</usertoken> <requesttype>Campaigns</requesttype> <requestmethod>getAll</requestmethod> <details> </details> </xmlrequest> "; sendRequest($xml); V případě, že požadavek projde správně, vrátí se: <?xml version="1.0" encoding="UTF­8" ?> <response> <status> SUCCESS </status> <data> <item> <id> 2 </id> <htmlbody> PGh0bWw+CjxoZWFkPgoJPHRpdGxlPjwvdGl0bGU+CjwvaGVhZD4KPGJvZHk+ZGF0ZTwvY
m9keT4KPC9odG1sPgo= </htmlbody> <textbody> Date </textbody> <title> date </title> 19 <name> date </name> </item> </data> </response> Z tohoto výpisu získáme ID kampaní, Textovou verzi kampaně, Název kampaně, Předmět a HTML kampaně. HTML kód je zakódovaný do BASE64. Pro dekódování a zakódování je možno v PHP použít funkce base64_encode a base64_decode. 2.9 Kampaně: Získání jedné kampaně z pod účtu
Stejná metoda jako 2.8, tato je pouze zaměřena na získání dat o jedné určité kampani. Pro získání tohoto výpisu musíme znát ID kampaně, kterou chceme. Vzorové XML: <xmlrequest> <username>USERNAME</username> <usertoken>TOKEN</usertoken> <requesttype>Campaigns</requesttype> <requestmethod>getOne</requestmethod> <details> <id>11</id> </details> </xmlrequest> Vzorové PHP:
require '../base.php'; $xml = " <xmlrequest> <username>{$username}</username> <usertoken>{$token}</usertoken> <requesttype>Campaigns</requesttype> <requestmethod>getOne</requestmethod> <details> <id>11</id> </details> </xmlrequest> "; sendRequest($xml); Pokud request projde, dostaneme stejný výpis jako v případě 2.8 . 20 2.10 Kampaně: Smazání určité kampaně
Touto funkcí můžeme smazat určitou kampaň, pokud známe její ID. Příjlad XML: <xmlrequest> <username>{$username}</username> <usertoken>{$token}</usertoken> <requesttype>Campaigns</requesttype> <requestmethod>delete</requestmethod> <details> <id>75</id> </details> </xmlrequest> Příklad PHP: require '../base.php'; $xml = " <xmlrequest> <username>{$username}</username> <usertoken>{$token}</usertoken> <requesttype>Campaigns</requesttype> <requestmethod>delete</requestmethod> <details> <id>75</id> </details> </xmlrequest> "; sendRequest($xml); Výpis pokud je kampaň úspěšně smazána: <?xml version="1.0" encoding="UTF­8" ?> <response> <status> SUCCESS </status> <data> 1 </data> 21 </response> 2.11 Kampaně: Vytvoření kampaně
Pomocí této metody vytvoříme po API novou kampaň. Je třeba naplnit: ● <htmlbody> ­ HTML ● <textbody> ­ Texotovou verzi ● <name> ­ Název ● <title> ­ Předmět HTML je třeba zakódovat před odesláním requestu do BASE64. Vzorové XML: <xmlrequest> <username>USERNAME</username> <usertoken>TOKEN</usertoken> <requesttype>Campaigns</requesttype> <requestmethod>create</requestmethod> <details> <htmlbody>PGh0bWw+DQo8aGVhZD4NCgk8dGl0bGU+PC90aXRsZT4NCjwvaGVhZD4NCjx
hbmsiPmtsaWtudXQmaWFjdXRlO20gemRlPC9hPi48L3RkPg0KCQk8L3RyPg0KCTwvdGJv
ZHk+DQo8L3RhYmxlPg0KPC9ib2R5Pg0KPC9odG1sPg0K</htmlbody> <textbody>Textova verze kamapně</textbody> <name>NázevKampaně</name> <title>Předmět</title> </details> </xmlrequest> Vzorové PHP: require '../base.php'; $xml = " <xmlrequest> <username>{$username}</username> <usertoken>{$token}</usertoken> <requesttype>Campaigns</requesttype> <requestmethod>create</requestmethod> <details> <htmlbody>PGh0bWw+DQo8aGVhZD4NCgk8dGl0bGU+PC90aXRsZT4NCjwvaGVhZD4NCjx
22 hbmsiPmtsaWtudXQmaWFjdXRlO20gemRlPC9hPi48L3RkPg0KCQk8L3RyPg0KCTwvdGJv
ZHk+DQo8L3RhYmxlPg0KPC9ib2R5Pg0KPC9odG1sPg0K</htmlbody> <textbody>Textova verze kamapně</textbody> <name>NázevKampaně</name> <title>Předmět</title> </details> </xmlrequest> "; sendRequest($xml); Pokud je vše v pořádku, vrátí se: <?xml version="1.0" encoding="UTF­8" ?> <response> <status> SUCCESS </status> <data> 9 </data> </response> 2.12 Kampaně: Update změna kampaně
Touto metodou můžeme provést změnu, update již existující kampaně. Pro úspěšnou změnu je třeba znát ID kampaně, kterou chceme měnit. Vzorové XML: <xmlrequest> <username>USERNAME</username> <usertoken>TOKEN</usertoken> <requesttype>Campaigns</requesttype> <requestmethod>update</requestmethod> <details> <id>80</id> <htmlbody>HTML</htmlbody> <textbody>TEXT VERZE</textbody> <name>NEW NAME OF CAMPAIGN</name> <title>NEW SUBJECT</title> </details> 23 </xmlrequest> Vzorové PHP: require '../base.php'; $xml = " <xmlrequest> <username>{$username}</username> <usertoken>{$token}</usertoken> <requesttype>Campaigns</requesttype> <requestmethod>update</requestmethod> <details> <id>80</id> <htmlbody>HTML</htmlbody> <textbody>TEXT VERZE</textbody> <name>NEW NAME OF CAMPAIGN</name> <title>NEW SUBJECT</title> </details> </xmlrequest> "; sendRequest($xml); Pokud je vše v pořádku, vrátí se: <?xml version="1.0" encoding="UTF­8" ?> <response> <status> SUCCESS </status> <data> 1 </data> </response> 2.13 Statistika kampaní: Získat vrácené kontakty dle kampaně
Pomocí této metody získáme všechny vrácené kontakty, které byly v rámci jedné kampaně označeny jako “vrácené”. K získání této informace musíme znát ID statistiky = ID rozesílky. Vzorové XML: <xmlrequest> <username>USERNAME</username> <usertoken>TOKEN</usertoken> <requesttype>NewsletterStats</requesttype> 24 <requestmethod>getBounces</requestmethod> <details> <id>133</id> </details> </xmlrequest> Vzorové PHP: require '../base.php'; $xml = " <xmlrequest> <username>{$username}</username> <usertoken>{$token}</usertoken> <requesttype>NewsletterStats</requesttype> <requestmethod>getBounces</requestmethod> <details> <id>133</id> </details> </xmlrequest> "; sendRequest($xml); Pokud požadavek projde správně, dostaneme tento výpis: <?xml version="1.0" encoding="UTF­8" ?> <response> <status>SUCCESS</status> <data> <item> <contact_id>32</contact_id> <type>1</type> <reason>emaildoesntexist</reason> <message>User unknown; rejecting</message> <time>2014­03­21 13:00:11</time> <emailaddress>[email protected]</emailaddress> </item> </data> </response> Důvody, proč je kontakt vrácený: ● kontakt neexistuje, ● má plnou schránku, ● server neexistuje a ● server odmítá naše zprávy. 25 Pokud narazíte na to, že nás někdo blokuje, neváhejte kontaktovat podporu na [email protected] a zařídíme odblokování. 2.14 Statistika kampaní: Získat kontakty, které neotevřely danou kampaň
Pomocí této metody získáme všechny kontakty v dané statistice, kteří neotevřely danou kampaň. Otevření se započítá pokud kontakt stáhne obrázky v kampani, nebo klikne na odkaz v kampani. K získání těchto informací je třeba mít k dispozici ID statistiky = ID rozesílky. Vzorové XML: <xmlrequest> <username>USERNAME</username> <usertoken>TOKEN</usertoken> <requesttype>NewsletterStats</requesttype> <requestmethod>getUnopened </requestmethod> <details> <id>133</id> </details> </xmlrequest> Vzorové PHP: require '../base.php'; $xml = " <xmlrequest> <username>{$username}</username> <usertoken>{$token}</usertoken> <requesttype>NewsletterStats</requesttype> <requestmethod>getUnopened </requestmethod> <details> <id>133</id> </details> </xmlrequest> "; sendRequest($xml); Pokud request projde správně, získáme tento výpis: <?xml version="1.0" encoding="UTF­8" ?> <response> <status>SUCCESS</status> <data> <item> 26 <id>16</id> <contact_id>4</contact_id> <newsletter_id>7</newsletter_id> <time>2014­02­24 21:13:05</time> <emailaddress>[email protected]</emailaddress> </item> </data> </response> 2.15 Statistika kampaní: Získat kontakty, které se z dané kampaně odhlásily
Pomocí této metody získáme všechny kontakty v dané statistice, kteří se z dané rozesílky odhlásily. K získání těchto informací je třeba mít k dispozici ID statistiky = ID rozesílky. Vzorové XML: <xmlrequest> <username>USERNAME</username> <usertoken>TOKEN</usertoken> <requesttype>NewsletterStats</requesttype> <requestmethod>getUnsubscribes</requestmethod> <details> <id>133</id> </details> </xmlrequest> Vzorové PHP: require '../base.php'; $xml = " <xmlrequest> <username>{$username}</username> <usertoken>{$token}</usertoken> <requesttype>NewsletterStats</requesttype> <requestmethod>getUnsubscribes</requestmethod> <details> <id>133</id> </details> </xmlrequest> "; sendRequest($xml); Pokud request projde v pořádku, získáme tyto data: <?xml version="1.0" encoding="UTF­8" ?> <response> 27 <status>SUCCESS</status> <data> <item> <contact_id>3</contact_id> <contactlist_id>3</contactlist_id> <date>2014­02­24 21:14:10</date> <source>Unsubscribe form (complete wipe)</source> <reason>abused</reason> <emailaddress>[email protected]</emailaddress> </item> </data> </response> <reason> ­ Důvody odhlášení mohou být: ● Tyto emaily mě již nezajímají, (These emails are not interesting) ● Emaily mi chodí moc často, (tooften) ● Obtěžuje mě to a (abused) ● Jiné. (other) <source> ­ Pokud máme více seznamů s veřejným názvem seznamu, budou zde vypsané seznamy, z kterých se kontakt odhlásil. 2.16 Statistika kampaní: Získat kontakty, které klikly na odkaz v dané
kampani
Pomocí této metody získáme všechny kontaky, které klikaly na odkazy v dané kamapni i s odkazy kliků. K získání této statistiky je třeba znát ID statistiky = ID rozesílky. Vzorové XML: <xmlrequest> <username>USERNAME</username> <usertoken>TOKEN</usertoken> <requesttype>NewsletterStats</requesttype> <requestmethod>getClicks</requestmethod> <details> <id>133</id> </details> </xmlrequest> Vzorové PHP: equire '../base.php'; $xml = " 28 <xmlrequest> <username>{$username}</username> <usertoken>{$token}</usertoken> <requesttype>NewsletterStats</requesttype> <requestmethod>getClicks</requestmethod> <details> <id>133</id> </details> </xmlrequest> "; sendRequest($xml); Pokud request projde v pořádku, dostaneme tento výpis: <?xml version="1.0" encoding="UTF­8" ?> <response> <status>SUCCESS</status> <data> <item> <contact_id>4</contact_id> <time>2014­02­20 11:23:40</time> <emailaddress>[email protected]</emailaddress> <href>http://rutvaclav.cz</href> </item> </data> </response> 2.17 Statistika kampaní: Získat kontakty, které otevřely danou kampaň
Touto metodou získáme všechny kontakty, které mají příznak, že danou kampaň otevřely. Tento příznak získá kontakt pokud klikl na nějaký odkaz nebo si stáhl obrázky z kampaně. K získání této statistiky je třeba znát její ID = ID rozesílky. Vzorové XML: <xmlrequest> <username>USERNAME</username> <usertoken>TOKEN</usertoken> <requesttype>NewsletterStats</requesttype> <requestmethod>getOpens</requestmethod> <details> <id>DOPLN_ID_ROZESILKY</id> </details> </xmlrequest> Vzorové PHP: 29 require '../base.php'; $xml = " <xmlrequest> <username>{$username}</username> <usertoken>{$token}</usertoken> <requesttype>NewsletterStats</requesttype> <requestmethod>getOpens</requestmethod> <details> <id>132</id> </details> </xmlrequest> "; sendRequest($xml); Pokud request projde v pořádku, dostaneme tyto informace: <?xml version="1.0" encoding="UTF­8" ?> <response> <status>SUCCESS</status> <data> <item> <contact_id>4</contact_id> <agent>Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/32.0.1700.107 Safari/537.36</agent> <time>2014­02­20 11:23:40</time> <emailaddress>[email protected]</emailaddress> </item> </data> </response> Zde kromě adresy klienta, který si kampaň otevřel (<emailaddress>) máme k dispozici další informace jako je Operační systém, Prohlížeč (<agent>) a čas otevření v <time>. 2.18 Statistika kampaní: Získat přehled pro celou kampaň
Touto metodou získáme kompletní přehled informací o rozesílce. K získání těchto informací je zapotřebí znát ID statistiky = ID rozesílky. Vzorové XML: <xmlrequest> <username>USERNAME</username> <usertoken>TOKEN</usertoken> <requesttype>NewsletterStats</requesttype> <requestmethod>getSummary</requestmethod> 30 <details> <id>DOPLN_ID_ROZESILKY</id> </details> </xmlrequest> Vzorové PHP: require '../base.php'; $xml = " <xmlrequest> <username>{$username}</username> <usertoken>{$token}</usertoken> <requesttype>NewsletterStats</requesttype> <requestmethod>getSummary</requestmethod> <details> <id>132</id> </details> </xmlrequest> "; sendRequest($xml); Pokud request projde v pořádku, dostaneme tyto informace o rozesílce: <?xml version="1.0" encoding="UTF­8" ?> <response> <status>SUCCESS</status> <data> <start>2014­02­20 11:16:05</start> <finished>2014­02­20 11:16:05</finished> <campaign_id>7</campaign_id> <sendername>Václav Růt</sendername> <senderemail>[email protected]</senderemail> <replyto>[email protected]</replyto> <track>{"utm_source":"newsletter","utm_medium":"email","utm_name":"ca
mpaign_7","utm_campaign":"campaign_7"}</track> <summary> <sent>1</sent> <opened>1</opened> <openedtotal>1</openedtotal> <clicked>1</clicked> <unsubscribed>0</unsubscribed> <bounced>0</bounced> <unopened>0</unopened> </summary> </data> 31 </response> Z tohoto výpisu můžeme získat tyto informace: ● <statust> ­ zda rozesílka proběhla v pořádku ● <start> ­ kdy začala rozesílka, ● <finished> ­ kdy byla rozesílka dokončena, ● <campaign_id> ­ id kampaně, který byla rozeslána, ● <sendername> ­ jméno odesílatele pro tuto rozesílku, ● <sendermail> ­ adresa odesílatele pro tuto rozesílku, ● <replyto> ­ email pro odpovědi pro tuto rozesílku, ● <track> ­ informace pro google analytics, ● <sent> ­ počet adres, na které byla rozesílka provedena, ● <opened> ­ počet unikátních otevření, ● <openedtotal> ­ počet otevření celkem, ● <clicked> ­ počet kliknutí, ● <unsubscribed> ­ počet odhlášených, ● <bounced> ­ počet vrácených, ● <unopened> ­ počet neotevřených. 2.19 Statistika SmartKampaně: Získat odhlášené kontakty dle SmartKampaně
Pomocí této metody získáme všechny odhlášené kontakty, které se odhlásily v rámci SmartKampaně s námi zvoleným ID. K získání této statistiky musíme znát ID SmartKampaně. Vzorové XML: <xmlrequest> <username>USERNAME</username> <usertoken>TOKEN</usertoken> <requesttype>AutoresponderStats</requesttype> <requestmethod>getUnsubscribes</requestmethod> <details> <id>DOPLN_ID_SK</id> </details> </xmlrequest> Vzorové PHP: require '../base.php'; $xml = " <xmlrequest> <username>{$username}</username> <usertoken>{$token}</usertoken> <requesttype>AutoresponderStats</requesttype> <requestmethod>getUnsubscribes</requestmethod> 32 <details> <id>12</id> </details> </xmlrequest> "; sendRequest($xml); Pokud request projde v pořádku, získáme tyto informace: <?xml version="1.0" encoding="UTF­8" ?> <response> <status>SUCCESS</status> <data> <item> <contact_id>4</contact_id> <contactlist_id>5</contactlist_id> <date>2014­03­24 14:58:41</date> <source>Unsubscribe form (complete wipe)</source> <reason /> <emailaddress>[email protected]</emailaddress> </item> </data> </response> 2.20 Statistika SmartKampaně: Získat kontakty, které neotevřely danou
SmartKampaň
Pomocí této metody získáme všechny kontakty v dané statistice, kteří neotevřely danou SmartKampaň. Otevření se započítá pokud kontakt stáhne obrázky v kampani, nebo klikne na odkaz ve SmartKampani. K získání těchto informací je třeba mít k dispozici ID SmartKampaně. Vzorové XML: <xmlrequest> <username>USERNAME</username> <usertoken>TOKEN</usertoken> <requesttype>AutoresponderStats</requesttype> <requestmethod>getUnopened</requestmethod> <details> <id>ID_SMARTKAMPANE</id> </details> </xmlrequest> Vzorové PHP: 33 require '../base.php'; $xml = " <xmlrequest> <username>{$username}</username> <usertoken>{$token}</usertoken> <requesttype>AutoresponderStats</requesttype> <requestmethod>getUnopened</requestmethod> <details> <id>12</id> </details> </xmlrequest> "; sendRequest($xml); Pokud request projde v pořádku, získáme tyto informace: <?xml version="1.0" encoding="UTF­8" ?> <response> <status>SUCCESS</status> <data> <item> <id>4</id> <contact_contactlist_id>8</contact_contactlist_id> <contact_id>3</contact_id> <autoresponder_id>3</autoresponder_id> <time>2014­03­24 15:34:07</time> <emailaddress>[email protected]</emailaddress> </item> </data> </response> 2.21 Statistika SmartKampaně: Získat kontakty, které otevřely danou
SmartKampaň
Touto metodou získáme všechny kontakty, které mají příznak, že danou SmartKampaň otevřely. Tento příznak získá kontakt pokud klikl na nějaký odkaz nebo si stáhl obrázky z SmartKampaně. K získání této statistiky je třeba znát její ID. Vzorové XML: <xmlrequest> <username>USERNAME</username> <usertoken>TOKEN</usertoken> <requesttype>AutoresponderStats</requesttype> <requestmethod>getOpens</requestmethod> <details> 34 <id>ID_SMARTKAMPANE</id> </details> </xmlrequest> Vzorové PHP: require '../base.php'; $xml = " <xmlrequest> <username>{$username}</username> <usertoken>{$token}</usertoken> <requesttype>AutoresponderStats</requesttype> <requestmethod>getOpens</requestmethod> <details> <id>12</id> </details> </xmlrequest> "; sendRequest($xml); Pokud request projde v pořádku, získáme tyto informace: <?xml version="1.0" encoding="UTF­8" ?> <response> <status>SUCCESS</status> <data> <item> <autoresponder_id>3</autoresponder_id> <contact_id>4</contact_id> <agent>Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_2) AppleWebKit/537.74.9 (KHTML, like Gecko)</agent> <time>2014­03­24 14:58:03</time> <emailaddress>[email protected]</emailaddress> </item> </data> </response> 2.22 Statistika SmartKampaně: Získat kontakty, které klikly na odkaz v dané
SmartKampani
Pomocí této metody získáme všechny kontaky, které klikaly na odkazy v dané SmartKamapni i s odkazy kliků. K získání této statistiky je třeba znát ID SmartKampaně. Vzorové XML: <xmlrequest> <username>USERNAME</username> 35 <usertoken>TOKEN</usertoken> <requesttype>AutoresponderStats</requesttype> <requestmethod>getClicks</requestmethod> <details> <id>ID_SMARTKAMPANE</id> </details> </xmlrequest> Vzorové PHP: require '../base.php'; $xml = " <xmlrequest> <username>{$username}</username> <usertoken>{$token}</usertoken> <requesttype>AutoresponderStats</requesttype> <requestmethod>getClicks</requestmethod> <details> <id>12</id> </details> </xmlrequest> "; sendRequest($xml); Pokud request projde v pořádku, získáme tyto informace: <?xml version="1.0" encoding="UTF­8" ?> <response> <status>SUCCESS</status> <data> <item> <contact_id>4</contact_id> <autoresponder_id>3</autoresponder_id> <time>2014­03­24 15:53:52</time> <emailaddress>[email protected]</emailaddress> <href>http://www.smartemailing.cz</href> </item> </data> </response> 36 2.23 Statistika SmartKampaní: Získat vrácené kontakty dle SmartKampaně
Pomocí této metody získáme všechny vrácené kontakty, které byly v rámci jedné SmartKampaně označený jako “vrácené”. K získání této informace musíme znát ID SmartKampaně. Vzorové XML: <xmlrequest> <username>USERNAME</username> <usertoken>TOKEN</usertoken> <requesttype>AutoresponderStats</requesttype> <requestmethod>getBounces</requestmethod> <details> <id>ID_SMARTKAMPANE</id> </details> </xmlrequest> Vzorové PHP: require '../base.php'; $xml = " <xmlrequest> <username>{$username}</username> <usertoken>{$token}</usertoken> <requesttype>AutoresponderStats</requesttype> <requestmethod>getBounces</requestmethod> <details> <id>12</id> </details> </xmlrequest> "; sendRequest($xml); Pokud request projde v pořádku, získáme tyto informace: <?xml version="1.0" encoding="UTF­8" ?> <response> <status>SUCCESS</status> <data> <item> <contact_id>36</contact_id> <type>1</type> <reason>relayerror</reason> <message>message could not be delivered</message> <time>2014­03­24 16:05:11</time> 37 <emailaddress>[email protected]</emailaddress> </item> </data> </response> 2.24 Statistika SmartKampaně: Získat přehled pro celou SmartKampaň
Touto metodou získáme kompletní přehled informací o rozesílce SmartKampaně. K získání těchto informací je zapotřebí znát ID SmartKampaně. Vzorové XML: <xmlrequest> <username>USERNAME</username> <usertoken>TOKEN</usertoken> <requesttype>AutoresponderStats</requesttype> <requestmethod>getSummary</requestmethod> <details> <id>ID_SMARTKAMPANE</id> </details> </xmlrequest> Vzorové PHP: require '../base.php'; $xml = " <xmlrequest> <username>{$username}</username> <usertoken>{$token}</usertoken> <requesttype>AutoresponderStats</requesttype> <requestmethod>getSummary</requestmethod> <details> <id>12</id> </details> </xmlrequest> "; sendRequest($xml); Pokud request projde v pořádku, dostaneme tyto informace o rozesílce: <?xml version="1.0" encoding="UTF­8" ?> <response> <status>SUCCESS</status> <data> 38 <campaign_id>10</campaign_id> <sendername>Václav Růt</sendername> <senderemail>[email protected]</senderemail> <replyto>[email protected]</replyto> <track /> <summary> <sent>3</sent> <opened>1</opened> <openedtotal>1</openedtotal> <clicked>1</clicked> <unsubscribed>1</unsubscribed> <bounced>1</bounced> <unopened>1</unopened> </summary> </data> </response> Z tohoto výpisu můžeme získat tyto informace: ● <statust> ­ zda rozesílka proběhla v pořádku ● <campaign_id> ­ id kampaně, který byla rozeslána, ● <sendername> ­ jméno odesílatele pro tuto rozesílku, ● <sendermail> ­ adresa odesílatele pro tuto rozesílku, ● <replyto> ­ email pro odpovědi pro tuto rozesílku, ● <track> ­ informace pro google analytics, ● <sent> ­ počet adres, na které byla rozesílka provedena, ● <opened> ­ počet unikátních otevření, ● <openedtotal> ­ počet otevření celkem, ● <clicked> ­ počet kliknutí, ● <unsubscribed> ­ počet odhlášených, ● <bounced> ­ počet vrácených, ● <unopened> ­ počet neotevřených. 2.25 Kontakt: Získat všechny kontakty
Touto metodou získáme všechny kontakty, které jsou pod účtem. Pro získání musíme mít platný API token a aktivní API. Vzorové XML: <xmlrequest> <username>USERNAME</username> <usertoken>TOKEN</usertoken> 39 <requesttype>Contacts</requesttype> <requestmethod>getAll</requestmethod> <details> </details> </xmlrequest> Vzorové PHP: require '../base.php'; $xml = ' <xmlrequest> <username>'.$username.'</username> <usertoken>'.$token.'</usertoken> <requesttype>Contacts</requesttype> <requestmethod>getAll</requestmethod> <details> </details> </xmlrequest> '; sendRequest($xml); Pokud request projde bez problému, získáme tyto informace: <?xml version="1.0" encoding="UTF­8" ?> <response> <status>SUCCESS</status> <data> <item> <language>cs_CZ</language> <created>2014­02­06 17:04:22</created> <updated>2014­03­24 19:10:22</updated> <blacklisted>0</blacklisted> <emailaddress>[email protected]</emailaddress> <domain>smartemailing.cz</domain> <name>Václav</name> <surname>Růt</surname> <titlesbefore>Bc.</titlesbefore> <titlesafter /> <birthday>2014­03­24 00:00:00</birthday> <nameday>2014­03­26 00:00:00</nameday> <salution>Václave</salution> <company>SmartEmailing</company> <street>Ulice</street> <town>Město</town> <country>Země</country> 40 <postalcode>39900</postalcode> <notes /> <phone>666777888</phone> <cellphone /> <softbounced>0</softbounced> <hardbounced>0</hardbounced> <id>4</id> <customfields> <item> <id>1</id> <value>AffilBox kód</value> </item> <item> <id>3</id> <value>2013­02­06 00:00:00</value> </item> <item> <id>4</id> <value> <item>1</item> </value> </item> </customfields> <contactliststatuses> <item> <id>5</id> <status>unsubscribed</status> </item> </contactliststatuses> </item> </data> </response> 2.24 Kontakt: Získat jeden kontakt
Touto metodou získáme jeden určitý kontakt, který je pod účtem. Pro získání potřebujeme znát jeho ID nebo e­mail. Vzorové XML: <xmlrequest> <username>USERNAME</username> <usertoken>TOKEN</usertoken> <requesttype>Contacts</requesttype> 41 <requestmethod>getOne</requestmethod> <details> <id>INSERT_CONTACTS_ID</id> <!­­ OR <emailaddress>[email protected]</emailaddress> ­­> </details> </xmlrequest> Vzorové PHP: require '../base.php'; $xml = ' <xmlrequest> <username>'.$username.'</username> <usertoken>'.$token.'</usertoken> <requesttype>Contacts</requesttype> <requestmethod>getOne</requestmethod> <details> <id>25237</id> <!­­ OR <emailaddress>[email protected]</emailaddress> ­­> </details> </xmlrequest> '; sendRequest($xml); Pokud request projde v pořádku, získáme stejný výpis informací jako v případě getAll, 2.25 2.25 Kontakt: Vytvořit, update kontakt
Touto metodou můžeme vytvořit nebo updatovat kontakt v aplikaci. Pro založení kontaktu je povinné vyplnit e­mailovou adresu, další pole jsou volitelná. Pouze pole obsažená v XML jsou aktualizovaná, ostatní zůstávají beze změny. Vzor XML: <xmlrequest> <username>USERNAME</username> <usertoken>TOKEN</usertoken> <requesttype>Contacts</requesttype> <requestmethod>createupdate</requestmethod> <details> <!­­ only emailaddress is required only fields contained in XML are updated ­­> 42 <emailaddress>[email protected]</emailaddress> <language>cs_CZ</language> <!­­ cs_CZ | sk_SK | en_GB ­­> <blacklisted>0</blacklisted> <name>Martin</name> <surname>Strouhal</surname> <titlesbefore>Ing.</titlesbefore> <titlesafter>Csc.</titlesafter> <birthday>2013­01­01</birthday> <nameday>2013­11­11</nameday> <!­­ year does not matter ­­> <salution></salution> <!­­ will be generated if this field is empty ­­> <company>My Corp</company> <street>Long 123</street> <town>My Town</town> <country>Czech Republic</country> <postalcode>123456</postalcode> <notes>Something very long</notes> <phone>+420123456789</phone> <cellphone>+420123456789</cellphone> <softbounced>0</softbounced> <!­­ number of 'soft' bounces ­­> <hardbounced>0</hardbounced> <!­­ 1 if contact is hardbounced ­­> <customfields> <item> <id>43</id> <value> <item>25</item> </value> </item> </customfields> <contactliststatuses> <!­­ statuses in lists not contained in this xml will be untouched if any if items is not valid (bad id or status) ­ it is ignored without throwing an error ­­> <item> <id>21</id> 43 <status>banned</status> <!­­ unconfirmed | confirmed | unsubscribed | banned | removed ­­> </item> <item> <id>3</id> <status>removed</status> </item> </contactliststatuses> </details> </xmlrequest> Při vytváření kontaktu je v XML část <contactliststatuses> která se stará o to, do kterého seznamu je kontakt ukládán a s jakým stavem. Každé vlastní pole má dle typu jiný zápis!! Nejdříve si vytvořte vlastní pole, vypište si kontakt a dle něj vytvořte XML zápis. Vzor PHP: require '../base.php'; $xml = " <xmlrequest> <username>{$username}</username> <usertoken>{$token}</usertoken> <requesttype>Contacts</requesttype> <requestmethod>createupdate</requestmethod> <details> <!­­ only emailaddress is required only fields contained in XML are updated ­­> <emailaddress>[email protected]</emailaddress> <language>cs_CZ</language> <!­­ cs_CZ | sk_SK | en_GB ­­> <blacklisted>0</blacklisted> <name>Martin</name> <surname>Strouhal</surname> <titlesbefore>Ing.</titlesbefore> <titlesafter>Csc.</titlesafter> <birthday>2013­01­01</birthday> <nameday>2013­11­11</nameday> <!­­ year does not matter ­­> <salution></salution> <!­­ will be generated if this field is empty ­­> 44 <company>My Corp</company> <street>Long 123</street> <town>My Town</town> <country>Czech Republic</country> <postalcode>123456</postalcode> <notes>Something very long</notes> <phone>+420123456789</phone> <cellphone>+420123456789</cellphone> <softbounced>0</softbounced> <!­­ number of 'soft' bounces ­­> <hardbounced>0</hardbounced> <!­­ 1 if contact is hardbounced ­­> <customfields> <item> <id>43</id> <value> <item>25</item> </value> </item> </customfields> <contactliststatuses> <!­­ statuses in lists not contained in this xml will be untouched if any if items is not valid (bad id or status) ­ it is ignored without throwing an error ­­> <item> <id>21</id> <status>banned</status> <!­­ unconfirmed | confirmed | unsubscribed | banned | removed ­­> </item> <item> <id>3</id> <status>removed</status> </item> </contactliststatuses> </details> </xmlrequest> "; 45 sendRequest($xml); Vysvětlení položek: ● <emailaddress> ­ emailová adresa ● <language>cs_CZ</language> ­ jazyk kontaktu, podporované tvary: <!­­ cs_CZ | sk_SK | en_GB ­­> ● <blacklisted> ­ 1, pokud je kontakt na blacklistu (nebude nikdy nic doručeno) ● <name> ­ křestní jméno ● <surname> ­ příjemní ● <titlesbefore> ­ titul před jménem ● <titlesafter> ­ titul za jménem ● <birthday> ­ narozeniny ve formátu:2013­01­01 ● <nameday> ­ svátek ve formátu: 2013­11­11 (rok nehraje roli) ● <salution> ­ oslovení, pokud nebude vyplněno, doplní se dle křestního jména, pokud to prázdné, i oslovení bude prázdné ● <company> ­ společnost ● <street> ­ ulice ● <town> ­ město ● <country> ­ stát ● <postalcode> ­ směrovací číslo ● <notes> ­ poznámka ● <phone> ­ telefon ● <cellphone> ­ mobilní telefon ● <softbounced> ­ počet softbounces ● <hardbounced> ­ pokud 1, hardbounce (nebude nic doručeno) Pokud je kontakt úspěšně vytvořen, dostaneme tuto informaci: <?xml version="1.0" encoding="UTF­8" ?> <response> <status>SUCCESS</status> <data>1</data> </response> 2.26 Kontakt: Smazat kontakt
Touto metodou můžeme smazat určitý kontakt. Ke smazání potřebujeme znát ID kontaktu nebo jeho e­mailovou adresu. Vzorové XML: <xmlrequest> <username>USERNAME</username> <usertoken>TOKEN</usertoken> <requesttype>Contacts</requesttype> <requestmethod>delete</requestmethod> <details> 46 <id>23970</id> <!­­ OR <emailaddress>[email protected]</emailaddress> ­­> </details> </xmlrequest> Vzorové PHP: require '../base.php'; $xml = ' <xmlrequest> <username>'.$username.'</username> <usertoken>'.$token.'</usertoken> <requesttype>Contacts</requesttype> <requestmethod>delete</requestmethod> <details> <id>23970</id> <!­­ OR <emailaddress>[email protected]</emailaddress> ­­> </details> </xmlrequest> '; sendRequest($xml); Pokud je kontakt úspěšně smazán, získáme tuto informaci: <?xml version="1.0" encoding="UTF­8" ?> <response> <status>SUCCESS</status> <data>1</data> </response> Pokud kontakt neexistuje: <?xml version="1.0" encoding="UTF­8" ?> <response> <status>FAILED</status> <errormessage>contact does not exist</errormessage> </response> 2.27 Kontakt: Získat všechny odhlášené kontakty
Touto metodou získáme všechny kontakty, které v jakémkoliv seznamu mají stav “odhlášený”. K získání těchto informací je zapotřebí znát API údaje k účtu. Vzor XML: 47 <xmlrequest> <username>USERNAME</username> <usertoken>TOKEN</usertoken> <requesttype>Contacts</requesttype> <requestmethod>getAllUnsubscribed</requestmethod> <details> </details> </xmlrequest> Pokud request projde v pořádku, získáme tyto informace: <?xml version="1.0" encoding="UTF­8" ?> <response> <status>SUCCESS</status> <data> <item> <language>cs_CZ</language> <created>2014­04­11 08:49:08</created> <updated>2014­04­11 08:49:19</updated> <blacklisted>0</blacklisted> <emailaddress>[email protected]</emailaddress> <domain>smartemailing.cz</domain> <name>Václav Růt</name> <surname /> <titlesbefore /> <titlesafter /> <birthday /> <nameday /> <salution>Václave</salution> <company /> <street /> <town /> <country /> <postalcode /> <notes /> <phone /> <cellphone /> <softbounced>0</softbounced> <hardbounced>0</hardbounced> <id>353</id> <customfields /> <contactliststatuses> <item> <id>20</id> 48 <status>unsubscribed</status> </item> </contactliststatuses> </item> </data> </response> Nejdůležitější je zde pro nás část: <contactliststatuses> Která vypisuje seznamy kontaktů a stav kontaktu v těchto seznamech. 2.28 Seznamy kontaktů: Získat kontakty dle seznamu kontaktů
Tato metoda vrací kontakty dle ID seznamu. K získání tohoto výpisu je třeba znát ID seznamu kontaktů a mít platný username a token. Vzorové XML: <xmlrequest> <username>USERNAME</username> <usertoken>USERTOKEN</usertoken> <requesttype>ContactLists</requesttype> <requestmethod>getContacts</requestmethod> <details> <id>ID_LIST</id> </details> </xmlrequest> Vozorové PHP: require '../base.php'; $xml = " <xmlrequest> <username>{$username}</username> <usertoken>{$token}</usertoken> <requesttype>ContactLists</requesttype> <requestmethod>getContacts</requestmethod> <details> <id>ID_LIST</id> </details> </xmlrequest>"; sendRequest($xml); Pokud request projde v pořádku, dostaneme tento výpis: <?xml version="1.0" encoding="UTF­8" ?> 49 <response> <status>SUCCESS</status> <data> <item> <contact_id>354</contact_id> <status>confirmed</status> <updated /> <added>2014­04­14 12:13:54</added> <emailaddress>[email protected]</emailaddress> </item> </response> 50 
Download

SmartEmailing 2.0 API Popis způsobu používání služby