Dokumentace SENDIO API
Sendio API verze 1.1 je dostupné na URL adrese https://sendio.cz/api/v1.1/SendioAPI_PHP.zip.
Pro veškerou komunikaci API je použito standardní kódování UTF-8.
Další informace a časté dotazy naleznete v nápovědě.
Inicializace
Pro práci se Sendio API sestavte kód podle následujích bodů nápovědy:
- Vložení pomocných souborů
- Konstrukce objektu knihovny
- Volání API
- Zpracování návratové hodnoty
Vložení pomocných souborů
Pro komunikaci s API vložte odkaz na soubory:
<?php
require("./<path>/settings.php");
require("./<path>/request.php");
...
V kódu nahraďte
<path>
existující cestou k souborům.
Sendio vyžaduje unikátní přihlašovací jméno
a API klíč
pro komunikaci s API. Požadované údaje naleznete v detailu vašeho uživatelského účtu a vložte je do souboru nastavení settings.php
.
Obsah souboru
settings.php
:
<?php
$login = "<user name>" ;
$password = "<API key>" ;
?>
V kódu nahraďte konstanty
<user name>
a<API key>
vašimi unikátními údaji.
Pro správné volání API je nutné vložit krátký kód s definicemi hlavních funkcí request.php
.
Vzorové soubory pro jazyk PHP jsou k dispozici ke stažení zde.
Obsah souboru
request.php
:
<?php
class sendio {
private $url = 'https://sendio.cz/api/v1.1/' ;
private $xml ;
public function __construct() {
$this->xml = new SimpleXMLElement( '<?xml version="1.0" encoding="UTF-8"?><xmlrequest/>' ) ;
}
public function login( $array ) {
$this->xml->addChild( 'login', $array['login'] ) ;
$this->xml->addChild( 'password', $array['password'] );
}
public function sendRequest( $array ) {
if( $array['action'] && $array['method'] ) {
$this->xml->addChild( 'action', $array['action'] ) ;
$this->xml->addChild( 'method', $array['method'] ) ;
if( count( $array['data'] > 0 ) ) {
$data = $this->xml->addChild( 'data' ) ;
foreach( $array['data'] as $key => $value ) {
if( $key == 'options' ) {
$data->addChild( $key, json_encode( $value ) ) ;
} else {
$data->addChild( $key, $value ) ;
}
}
}
$request = curl_init( $this->url ) ;
curl_setopt( $request, CURLOPT_RETURNTRANSFER, 1 ) ;
curl_setopt( $request, CURLOPT_POST, 1 ) ;
curl_setopt( $request, CURLOPT_POSTFIELDS, array( 'xml' => $this->xml->asXML() ) ) ;
$result = curl_exec( $request ) ;
if ( $result !== false ) {
return $result ;
}
}
return false ;
}
}
?>
Konstrukce objektu knihovny
<?php
require("./<path>/settings.php");
require("./<path>/request.php");
$sendio = new sendio();
...
Instanci třídy přiřaďte do libovolně pojmenované proměnné, se kterou budete dále pracovat.
Po vložení povinných souborů je třeba v kódu vytvořit instanci třídy API knihovny.
Konstruktor
new sendio()
Volání API
Komunikace se systémem Sendio skrze API probíhá pomocí funkce sendRequest
obsahující sestavený požadavek.
Sestavení požadavku (request)
Parametrem funkce SendRequest
je asociativní pole obsahující dvojice klíč => hodnota
.
V případě úspěchu vrací funkce datovou strukturu, která se liší podle vybrané metody a pluginu.
<?php
require("./<path>/settings.php");
require("./<path>/request.php");
$sendio = new sendio();
$response = $sendio->sendRequest( [
'<key>' => <value>,
'<key>' => [
'<key>' => <value>,
...
],
...
] );
echo $response;
Parametry
<key>
a<value>
nahraďte odpovídajícími názvy a hodnotami příslušných datových typů.
Funkce
sendRequest( požadavek )
Tělo požadavku
Název parametru | Popis parametru | Povinný | Datový typ |
---|---|---|---|
login | Uživatelské jméno | ANO | string |
password | API klíč | ANO | string |
action | Třída vybraného pluginu | ANO | string |
method | Výběr konkrétní metody | ANO | string |
data | Data pro volání metody | NE | Objekt |
Uživatelské jméno a API klíč
<?php
require("./<path>/settings.php");
require("./<path>/request.php");
$sendio = new sendio();
$response = $sendio->sendRequest( [
'login' => $login,
'password' => $password,
...
] );
echo $response;
Více v kapitole vložení pomocných souborů.
Parametr
'login' => '<user name>'
'password' => '<API key>'
Výběr tříd
<?php
require("./<path>/settings.php");
require("./<path>/request.php");
$sendio = new sendio();
$response = $sendio->sendRequest( [
'login' => $login,
'password' => $password,
'action' => '<class>',
...
] );
echo $response;
V kódu nahraďte
<class>
názvem třídy vybraného pluginu.
Pro práci s konkrétními pluginy (kontakty, seznamy kontaktů, kampaně, formuláře) je třeba vybrat parametrem action
příslušnou třídu metod.
Parametr
'action' => '<class>'
class | Příslušný plugin |
---|---|
ContactUser | Kontakty |
ContactUserTag | Tagy kontaktů |
ContactGroup | Seznamy kontaktů |
Campaign | E-mail marketing |
SmsCampaign | SMS marketing |
Webform | Webové formuláře |
Výběr metod
<?php
require("./<path>/settings.php");
require("./<path>/request.php");
$sendio = new sendio();
$response = $sendio->sendRequest( [
'login' => $login,
'password' => $password,
'action' => '<class>',
'method' => '<method>',
...
] );
echo $response;
Parametr
<method>
nahraďte názvem odpovídající metody třídy.
Každá třída pluginů obsahuje definice metod, které jsou dostupné k volání. Výběr konkrétní metody je prováděn parametrem method
.
Parametr
'method' => '<method>'
Nastavení dat
<?php
require("./<path>/settings.php");
require("./<path>/request.php");
$sendio = new sendio();
$response = $sendio->sendRequest( [
'login' => $login,
'password' => $password,
'action' => '<class>',
'method' => '<method>',
'data' => [
'<key>' => <value>,
'<key>' => [
'<key>' => <value>,
...
],
...
],
] );
echo $response;
Parametry
<key>
nahraďte jmennými identifikátory, které určuje typ vkládaných dat. Parametry<value>
nahraďte odpovídajícími hodnotami.
Podle zvolené metody je povinné nebo volitelné vložit do API požadavku další data ke zpracování pomocí parametru data
.
Parametr
'data' => ['<key>' => <value>]
Alternativní volání (GET)
Sendio API lze alternativně volat také pomocí GET
požadavku zaslaného na adresu https://app.sendio.cz/api/v1_json
. Požadavek vrací data ve formátu JSON
.
Příklad sestavení požadavku pro získání všech uživatelů ze systému Sendio:
https://app.sendio.cz/api/v1_json?login=<user name>&password=<API key>&action=contactUser&method=getAll
JSON response
{"SUCCESS":{
"data":{
"user":[
{"id":"263","name":"Karel",...},
{"id":"264","name":"Pavel",...}
]
}
},
"status":"SUCCESS"
}
Parametry požadavku
Název parametru | Popis parametru | Povinný | Datový typ |
---|---|---|---|
login | Uživatelské jméno | ANO | string |
password | API klíč | ANO | string |
action | Třída vybraného pluginu | ANO | string |
method | Výběr konkrétní metody | ANO | string |
data | Data pro volání metody | NE | Objekt |
Návratová hodnoty (response)
XML data úspěšně provedeného požadavku
<?xml version="1.0" endocoding="UTF-8"?>
<response>
<status>SUCCESS</status>
<data>
<id>273</id>
</data>
</response>
XML data úspěšně provedeného požadavku s upozorněním
<?xml version="1.0" endocoding="UTF-8"?>
<response>
<status>WARNING</status>
<data>
<id>273</id>
<message>Contact user with email karel.novak@domena.cz already exist</message>
</data>
</response>
XML data chybně provedeného požadavku
<?xml version="1.0" endocoding="UTF-8"?>
<response>
<status>FAILED</status>
<data>
<errormessage>Contact user width id 273 not found</errormessage>
</data>
</response>
Funkce sendRequest
vrací XML strukturu, která obsahuje stav a data provedeného požadavku.
Podle typu API požadavku obsahuje XML odpověď buď jednoduchou strukturu se stavem provedení (vkládání, mazání, přesun) nebo komplexní XML se všemi získanými daty (dotaz na informace ze systému SENDIO).
Kontakty (třída ContactUser)
Název metody | Popis metody |
---|---|
add | Vytvoření a přidání kontaktu |
update | Úprava kontaktu |
delete | Smazání kontaktu |
deleteFromGroup | Smazání kontaktu ze skupiny |
addToGroup | Přidání kontaktu do skupiny |
moveToGroup | Přesun kontaktu mezi skupinami |
get | Získání dat kontaktu |
getAll | Získání všech kontaktů |
Vytvoření a přidání kontaktu (add)
Příklad: Request pro vložení uživatele Ing. Karel Novák do nezařazených kontaktů.
<?php
require("./<path>/settings.php");
require("./<path>/request.php");
$sendio = new sendio();
$response = $sendio->sendRequest( [
'login' => $login,
'password' => $password,
'action' => 'ContactUser',
'method' => 'add',
'data' => [
'email' => 'karel.novak@domena.cz',
'phone' => '420413252733',
'full_name' => 'Karel Novák',
'title_before' => 'Ing.',
'description' => 'Importovaný kontakt',
],
] );
echo $response;
XML response
<?xml version="1.0" endocoding="UTF-8"?>
<response>
<status>SUCCESS</status>
<data>
<id>273</id>
</data>
</response>
Přidá kontakt. Hlavním identifikátorem kontaktu je e-mailová adresa.
Metoda
add
Data
Název parametru | Popis parametru | Povinný | Datový typ | Příklad |
---|---|---|---|---|
E-mailová adresa | ANO | string | 'karel.novak@domena.cz' |
|
phone | Telefon | NE | string (s mezistátní předvolbou bez ’+’) | '420413252733' |
all_name | Celé jméno | NE | string | 'Karel Novák' |
first_name | Jméno | NE | string | 'Karel' |
first_name_salutation | Oslovení | NE | string | 'Karle' |
last_name | Příjmení | NE | string | 'Novák' |
last_name_salutation | Oslovení | NE | string | 'Nováku' |
title_before | Titul před jménem | NE | string | 'Ing.' |
title_after | Titul za jménem | NE | string | 'dr. h. c.' |
description | Poznámka u kontaktu | NE | string | 'Lorem ipsum' |
company_id_number | Identifikační číslo (IČ) | NE | string | '28306201' |
company_name | Název firmy | NE | string | 'PS Works s.r.o.' |
company_tax_number | Daňové identifikační číslo (DIČ) | NE | string | 'CZ28306201' |
company_detail | Poznámka u společnosti | NE | string | 'Lorem ipsum' |
company_street | Ulice | NE | string | 'Jungmannova 1310/10' |
company_zip | Poštovní směrovací číslo | NE | string | '61200' |
company_city_part | Část obce | NE | string | 'Kyjov' |
company_city | Obec | NE | string | 'Kyjov' |
sex | Pohlaví | NE | int (číselník sex) | 1 |
verified | Ověřený kontakt (souhlas se zpracováním údajů) | NE | int (číselník verified) | 0 |
group_id | Identifikátor skupiny kontaktů | NE | int | 12 |
Úprava kontaktu (update)
Příklad: Request pro úpravu uživatele Ing. Karel Novák.
<?php
require("./<path>/settings.php");
require("./<path>/request.php");
$sendio = new sendio();
$response = $sendio->sendRequest( [
'login' => $login,
'password' => $password,
'action' => 'ContactUser',
'method' => 'update',
'data' => [
'phone' => '420847712344',
'full_name' => 'Pavel Novák',
'title_before' => 'Doc.',
],
] );
echo $response;
XML response
<?xml version="1.0" endocoding="UTF-8"?>
<response>
<status>SUCCESS</status>
<data>1</data>
</response>
Upraví data kontaktu.
Metoda
update
Data
Název parametru | Popis parametru | Povinný | Datový typ | Příklad |
---|---|---|---|---|
E-mailová adresa | NE | string | 'karel.novak@domena.cz' |
|
phone | Telefon | NE | string (s mezistátní předvolbou bez ’+’) | '420413252733' |
all_name | Celé jméno | NE | string | 'Karel Novák' |
first_name | Jméno | NE | string | 'Karel' |
first_name_salutation | Oslovení | NE | string | 'Karle' |
last_name | Příjmení | NE | string | 'Novák' |
last_name_salutation | Oslovení | NE | string | 'Nováku' |
title_before | Titul před jménem | NE | string | 'Ing.' |
title_after | Titul za jménem | NE | string | 'dr. h. c.' |
description | Poznámka u kontaktu | NE | string | 'Lorem ipsum' |
company_id_number | Identifikační číslo (IČ) | NE | string | '28306201' |
company_name | Název firmy | NE | string | 'PS Works s.r.o.' |
company_tax_number | Daňové identifikační číslo (DIČ) | NE | string | 'CZ28306201' |
company_detail | Poznámka u společnosti | NE | string | 'Lorem ipsum' |
company_street | Ulice | NE | string | 'Jungmannova 1310/10' |
company_zip | Poštovní směrovací číslo | NE | string | '61200' |
company_city_part | Část obce | NE | string | 'Kyjov' |
company_city | Obec | NE | string | 'Kyjov' |
sex | Pohlaví | NE | int (číselník sex) | 1 |
verified | Ověřený kontakt (souhlas se zpracováním údajů) | NE | int (číselník verified) | 0 |
Smazání kontaktu (delete)
Příklad: Smazání kontaktu s ID 273.
<?php
require("./<path>/settings.php");
require("./<path>/request.php");
$sendio = new sendio();
$response = $sendio->sendRequest( [
'login' => $login,
'password' => $password,
'action' => 'ContactUser',
'method' => 'delete',
'data' => [
'id' => 273,
],
] );
echo $response;
XML response
<?xml version="1.0" endocoding="UTF-8"?>
<response>
<status>SUCCESS</status>
<data>1</data>
</response>
Smaže kontakt ze všech seznamů a odstraní jeho data.
Metoda
delete
Data
Název parametru | Popis parametru | Povinný | Datový typ | Příklad |
---|---|---|---|---|
id | Číselný identifikátor kontaktu | ANO | int | 273 |
Anonymizace kontaktu (anonymize)
Příklad: Anonymizace kontaktu s ID 273.
<?php
require("./<path>/settings.php");
require("./<path>/request.php");
$sendio = new sendio();
$response = $sendio->sendRequest( [
'login' => $login,
'password' => $password,
'action' => 'ContactUser',
'method' => 'anonymize',
'data' => [
'id' => 273,
],
] );
echo $response;
XML response
<?xml version="1.0" endocoding="UTF-8"?>
<response>
<status>SUCCESS</status>
<data>1</data>
</response>
Anonymizuje všechna data kontaktu včetně e-mailové adresy. Nahradí citlivé údaje kontaktu, ale zachová jeho statistiky.
Metoda
anonymize
Data
Název parametru | Popis parametru | Povinný | Datový typ | Příklad |
---|---|---|---|---|
id | Číselný identifikátor kontaktu | ANO | int | 273 |
Smazání kontaktu ze skupiny (deleteFromGroup)
Příklad: Smazání kontaktu s ID 273 ze seznamu s ID 113.
<?php
require("./<path>/settings.php");
require("./<path>/request.php");
$sendio = new sendio();
$response = $sendio->sendRequest( [
'login' => $login,
'password' => $password,
'action' => 'ContactUser',
'method' => 'deleteFromGroup',
'data' => [
'id' => 273,
'group_id' => 113,
],
] );
echo $response;
XML response
<?xml version="1.0" endocoding="UTF-8"?>
<response>
<status>SUCCESS</status>
<data>1</data>
</response>
Smaže kontakt ze skupiny, ale zachová jeho data. Kontakt se stane nezařazeným.
Metoda
deleteFromGroup
Data
Název parametru | Popis parametru | Povinný | Datový typ | Příklad |
---|---|---|---|---|
id | Číselný identifikátor kontaktu | ANO | int | 273 |
group_id | Číselný identifikátor skupiny | ANO | int | 113 |
Přidání kontaktu do skupiny (addToGroup)
Příklad: Přidání kontaktu s ID 273 do seznamu s ID 113.
<?php
require("./<path>/settings.php");
require("./<path>/request.php");
$sendio = new sendio();
$response = $sendio->sendRequest( [
'login' => $login,
'password' => $password,
'action' => 'ContactUser',
'method' => 'addToGroup',
'data' => [
'id' => 273,
'group_id' => 113,
],
] );
echo $response;
XML response
<?xml version="1.0" endocoding="UTF-8"?>
<response>
<status>SUCCESS</status>
<data>1</data>
</response>
Přidá kontakt do skupiny. Kontakt může existovat ve více skupinách.
Metoda
addToGroup
Data
Název parametru | Popis parametru | Povinný | Datový typ | Příklad |
---|---|---|---|---|
id | Číselný identifikátor kontaktu | ANO | int | 273 |
group_id | Číselný identifikátor skupiny | ANO | int | 113 |
Přesun kontaktu mezi skupinami (moveToGroup)
Příklad: Přesune kontakt s ID 273 do skupiny s ID 113.
<?php
require("./<path>/settings.php");
require("./<path>/request.php");
$sendio = new sendio();
$response = $sendio->sendRequest( [
'login' => $login,
'password' => $password,
'action' => 'ContactUser',
'method' => 'moveToGroup',
'data' => [
'id' => 273,
'group_id' => 113,
],
] );
echo $response;
XML response
<?xml version="1.0" endocoding="UTF-8"?>
<response>
<status>SUCCESS</status>
<data>1</data>
</response>
Přesune kontakt mezi skupinami. Ze všech ostatních skupin je kontakt smazán.
Metoda
moveToGroup
Data
Název parametru | Popis parametru | Povinný | Datový typ | Příklad |
---|---|---|---|---|
id | Číselný identifikátor kontaktu | ANO | int | 273 |
group_id | Číselný identifikátor skupiny | ANO | int | 113 |
Účel zpracování kontaktu (addPurpose)
Příklad: Request pro vložení účelu zpracování osobních údajů ke kontaktu Ing. Karel Novák.
<?php
require("./<path>/settings.php");
require("./<path>/request.php");
$sendio = new sendio();
$response = $sendio->sendRequest( [
'login' => $login,
'password' => $password,
'action' => 'ContactUser',
'method' => 'addPurpose',
'data' => [
'contact_user_id' => '273',
'puspose_id' => '1',
],
] );
echo $response;
XML response
<?xml version="1.0" endocoding="UTF-8"?>
<response>
<status>SUCCESS</status>
<data>1</data>
</response>
Přidá účel zpracování osobních údajů ke kontaktu.
Metoda
addPurpose
Data
Název parametru | Popis parametru | Povinný | Datový typ | Příklad |
---|---|---|---|---|
contact_user_id | ID kontaktu | ANO | int | 273 |
puspose_id | ID účelu zpracování | ANO | int | 1 |
date_from | Datum | NE | Databázový formát [datetime] | '2018-02-22 12:55:01' |
Získání dat kontaktu (get)
Příklad: Získá data kontaktu s ID 273.
<?php
require("./<path>/settings.php");
require("./<path>/request.php");
$sendio = new sendio();
$response = $sendio->sendRequest( [
'login' => $login,
'password' => $password,
'action' => 'ContactUser',
'method' => 'get',
'data' => [
'id' => 273,
],
] );
echo $response;
XML response
<?xml version="1.0" encoding="UTF-8"?>
<response>
<data>
<id>275</id>
<first_name>Pavel</first_name>
<first_name_salutation>Pavle</first_name_salutation>
<last_name>Malý</last_name>
<last_name_salutation>Malý</last_name_salutation>
<title_before>Mgr.</title_before>
<title_after/>
<description>Importovaný kontakt</description>
<email>novy@email.cz</email>
<phone>420123456789</phone>
<sex>1</sex>
<birthday/>
<nameday>29.06.</nameday>
<company_id_number>28306201</company_id_number>
<company_name/>
<company_tax_number/>
<company_detail/>
<company_stret/>
<company_city_part/>
<company_city/>
<company_zip/>
<blacklist>0</blacklist>
<blacklist_time/>
<blacklist_ip/>
<blacklist_reason/>
<blacklist_campaign_id/>
<returned>0</returned>
<returned_time/>
<returned_campaign_id/>
<register_via/>
</data>
<status>SUCCESS</status>
</response>
Získá všechna data konkrétního kontaktu.
Metoda
get
Data
Název parametru | Popis parametru | Povinný | Datový typ | Příklad |
---|---|---|---|---|
id | Číselný identifikátor kontaktu | ANO | int | 273 |
Získání všech kontaktů (getAll)
Příklad: Získá data prvních deseti kontaktů.
<?php
require("./<path>/settings.php");
require("./<path>/request.php");
$sendio = new sendio();
$response = $sendio->sendRequest( [
'login' => $login,
'password' => $password,
'action' => 'ContactUser',
'method' => 'getAll',
'data' => [
'limit_from' => 0,
'limit_to' => 10,
],
] );
echo $response;
XML response
<?xml version="1.0" encoding="UTF-8"?>
<response>
<data>
<user>
<id>275</id>
<first_name>Pavel</first_name>
<first_name_salutation>Pavle</first_name_salutation>
<last_name>Malý</last_name>
...
</user>
<user>
<id>276</id>
<first_name>Karel</first_name>
<first_name_salutation>Karle</first_name_salutation>
<last_name>Novák</last_name>
...
</user>
...
</data>
<status>SUCCESS</status>
</response>
Získá data všech kontaktů v systému Sendio.
Metoda
getAll
Data
Název parametru | Popis parametru | Povinný | Datový typ | Příklad |
---|---|---|---|---|
limit_from | Počáteční pozice procházení (počet přeskočených kontaktů) | NE | int (výchozí hodnota 0) | 0 |
limit_to | Maximální počet vrácených výsledků | NE | int (výchozí hodnota 20) | 10 |
Tagy kontaktů (třída ContactUserTag)
Název metody | Popis metody |
---|---|
add | Přidání příznaku ke kontaktu |
delete | Smazání příznaku kontaktu |
getAll | Získání všech příznaků kontaktu |
Vytvoření a přidání tagu kontaktu (add)
Příklad: Přidá tag věrnostního programu ke kontaktu s ID 273.
<?php
require("./<path>/settings.php");
require("./<path>/request.php");
$sendio = new sendio();
$response = $sendio->sendRequest( [
'login' => $login,
'password' => $password,
'action' => 'ContactUserTag',
'method' => 'add',
'data' => [
'contact_user_id' => 273,
'name' => 'věrnostní program SILVER',
],
] );
echo $response;
XML response
<?xml version="1.0" encoding="UTF-8"?>
<response>
<data>
<id>99</id>
</data>
<status>SUCCESS</status>
</response>
Přidání tagu ke kontaktu.
Metoda
add
Data
Název parametru | Popis parametru | Povinný | Datový typ | Příklad |
---|---|---|---|---|
contact_user_id | Číselný identifikátor kontaktu | ANO | int | 273 |
name | Název tagu | ANO | string | 'věrnostní program SILVER' |
Smazání tagu kontaktu (delete)
Příklad: Smaže tag věrnostního programu u kontaktu s ID 273.
<?php
require("./<path>/settings.php");
require("./<path>/request.php");
$sendio = new sendio();
$response = $sendio->sendRequest( [
'login' => $login,
'password' => $password,
'action' => 'ContactUserTag',
'method' => 'delete',
'data' => [
'contact_user_id' => 273,
'name' => 'věrnostní program SILVER',
],
] );
echo $response;
XML response
<?xml version="1.0" encoding="UTF-8"?>
<response>
<data>1</data>
<status>SUCCESS</status>
</response>
Smazaní tagu u kontaktu.
Metoda
delete
Data
Název parametru | Popis parametru | Povinný | Datový typ | Příklad |
---|---|---|---|---|
contact_user_id | Číselný identifikátor kontaktu | ANO | int | 273 |
name | Název tagu | ANO | string | 'věrnostní program SILVER' |
Získání tagů kontaktu (getAll)
Příklad: Zíslá tagy kontaktu s ID 273.
<?php
require("./<path>/settings.php");
require("./<path>/request.php");
$sendio = new sendio();
$response = $sendio->sendRequest( [
'login' => $login,
'password' => $password,
'action' => 'ContactUserTag',
'method' => 'getAll',
'data' => [
'contact_user_id' => 273,
],
] );
echo $response;
XML response
<?xml version="1.0" encoding="UTF-8"?>
<response>
<data>
<tag>
<name>věrnostní program SILVER</name>
</tag>
<tag>
<name>zájem SPORT</name>
</tag>
</data>
<status>SUCCESS</status>
</response>
Získání všech tagů u kontaktu.
Metoda
getAll
Data
Název parametru | Popis parametru | Povinný | Datový typ | Příklad |
---|---|---|---|---|
contact_user_id | Číselný identifikátor kontaktu | ANO | int | 273 |
Seznamy kontaktů (třída ContactGroup)
Název metody | Popis metody |
---|---|
add | Vytvoření a přidání seznamu kontaktů |
delete | Smazání seznamu kontaktů |
get | Získání seznamu kontaktů |
Vytvoření a přidání seznamu kontaktů (add)
Příklad: Přidání nového seznam kontaktů.
<?php
require("./<path>/settings.php");
require("./<path>/request.php");
$sendio = new sendio();
$response = $sendio->sendRequest( [
'login' => $login,
'password' => $password,
'action' => 'ContactGroup',
'method' => 'add',
'data' => [
'name' => 'Importovaní zákazníci',
],
] );
echo $response;
XML response
<?xml version="1.0" encoding="UTF-8"?>
<response>
<data>
<id>14</id>
</data>
<status>SUCCESS</status>
</response>
Přidání pojmenovaného seznamu kontaktů.
Metoda
add
Data
Název parametru | Popis parametru | Povinný | Datový typ | Příklad |
---|---|---|---|---|
name | Název skupiny kontaktů | ANO | string | 'Importovaní zákazníci' |
Smazání seznamu kontaktů (delete)
Příklad: Smazání seznam kontaktů s ID 14.
<?php
require("./<path>/settings.php");
require("./<path>/request.php");
$sendio = new sendio();
$response = $sendio->sendRequest( [
'login' => $login,
'password' => $password,
'action' => 'ContactGroup',
'method' => 'delete',
'data' => [
'id' => 14,
],
] );
echo $response;
XML response
<?xml version="1.0" encoding="UTF-8"?>
<response>
<data>1</data>
<status>SUCCESS</status>
</response>
Smazání konkrétního seznamu kontaktů.
Metoda
delete
Data
Název parametru | Popis parametru | Povinný | Datový typ | Příklad |
---|---|---|---|---|
id | Číselný identifikátor seznamu | ANO | int | 14 |
Získání dat seznamu kontaktů (get)
Příklad: Získání dat seznamu kontaktů s ID 14.
<?php
require("./<path>/settings.php");
require("./<path>/request.php");
$sendio = new sendio();
$response = $sendio->sendRequest( [
'login' => $login,
'password' => $password,
'action' => 'ContactGroup',
'method' => 'get',
'data' => [
'id' => 14,
],
] );
echo $response;
XML response
<?xml version="1.0" encoding="UTF-8"?>
<response>
<data>
<id>14</id>
<name>Importovaní zákazníci</name>
<description/>
</data>
<status>SUCCESS</status>
</response>
Získá všechna data konkrétního seznamu kontaktů.
Metoda
get
Data
Název parametru | Popis parametru | Povinný | Datový typ | Příklad |
---|---|---|---|---|
id | Číselný identifikátor seznamu | ANO | int | 14 |
E-mail kampaně (třída Campaign)
Název metody | Popis metody |
---|---|
delete | Smazání e-mail kampaně |
get | Získání e-mail kampaně |
getAll | Získání všech e-mail kampaní |
send | Rozeslání e-mail kampaně |
sendUser | Zaslání e-mail kampaně konkrétnímu uživateli |
Smazání e-mail kampaně (delete)
Příklad: Smazání e-mail kampaně s ID 25.
<?php
require("./<path>/settings.php");
require("./<path>/request.php");
$sendio = new sendio();
$response = $sendio->sendRequest( [
'login' => $login,
'password' => $password,
'action' => 'Campaign',
'method' => 'delete',
'data' => [
'id' => 25,
],
] );
echo $response;
XML response
<?xml version="1.0" encoding="UTF-8"?>
<response>
<data>1</data>
<status>SUCCESS</status>
</response>
Smazání konkrétní e-mail kampaně.
Metoda
delete
Data
Název parametru | Popis parametru | Povinný | Datový typ | Příklad |
---|---|---|---|---|
id | Číselný identifikátor kampaně | ANO | int | 25 |
Získání dat e-mail kampaně (get)
Příklad: Získání všech dat e-mail kampaně s ID 25.
<?php
require("./<path>/settings.php");
require("./<path>/request.php");
$sendio = new sendio();
$response = $sendio->sendRequest( [
'login' => $login,
'password' => $password,
'action' => 'Campaign',
'method' => 'get',
'data' => [
'id' => 25,
],
] );
echo $response;
XML response
<?xml version="1.0" encoding="UTF-8"?>
<response>
<data>
<id>25</id>
<name>Podzimní slevy</name>
<subject>Veškerý sortiment za polovinu!</subject>
<description>Kampaň podzimních slev a akcí</description>
<sender_email>zbozi@obchod.cz</sender_email>
<sender_name>Martin Zahálka</sender_name>
</data>
<status>SUCCESS</status>
</response>
Získá všechna data konkrétní e-mail kampaně.
Metoda
get
Data
Název parametru | Popis parametru | Povinný | Datový typ | Příklad |
---|---|---|---|---|
id | Číselný identifikátor kampaně | ANO | int | 25 |
Získání všech e-mail kampaní (getAll)
Příklad: Získá data prvních deseti kampaní.
<?php
require("./<path>/settings.php");
require("./<path>/request.php");
$sendio = new sendio();
$response = $sendio->sendRequest( [
'login' => $login,
'password' => $password,
'action' => 'Campaign',
'method' => 'getAll',
'data' => [
'limit_from' => 0,
'limit_to' => 10,
],
] );
echo $response;
XML response
<?xml version="1.0" encoding="UTF-8"?>
<response>
<data>
<campaign>
<id>25</id>
<name>Podzimní slevy</name>
<subject>Veškerý sortiment za polovinu</subject>
...
</campaign>
<campaign>
<id>26</id>
<name>Speciální akce</name>
<subject>Extrémní výprodej letního zboží</subject>
...
</campaign>
...
</data>
<status>SUCCESS</status>
</response>
Získá data všech e-mail kampaní v systému Sendio.
Metoda
getAll
Data
Název parametru | Popis parametru | Povinný | Datový typ | Příklad |
---|---|---|---|---|
limit_from | Počáteční pozice procházení (počet přeskočených kampaní) | NE | int (výchozí hodnota 0) | 0 |
limit_to | Maximální počet vrácených výsledků | NE | int (výchozí hodnota 20) | 10 |
Rozeslání e-mail kampaně (send)
Příklad: Rozeslání e-mail kampaně s ID 25.
<?php
require("./<path>/settings.php");
require("./<path>/request.php");
$sendio = new sendio();
$response = $sendio->sendRequest( [
'login' => $login,
'password' => $password,
'action' => 'Campaign',
'method' => 'send',
'data' => [
'id' => 25,
'options' => {"id_zakazky":"174","stav":"odeslána"},
],
] );
echo $response;
XML response
<?xml version="1.0" encoding="UTF-8"?>
<response>
<status>SUCCESS</status>
</response>
Rozešle konkrétní e-mail kampaň na předem definovaný seznam kontaktů.
Metoda
send
Data
Název parametru | Popis parametru | Povinný | Datový typ | Příklad |
---|---|---|---|---|
id | Číselný identifikátor kampaně | ANO | int | 25 |
all | Rozeslat kampaň na daný počet kontaktů | NE | int (číselník all) | 1 |
first | Rozeslat kampaň na prvních x kontaktů | NE | int | 100 |
now | Rozeslat kampaň ihned | NE | int (číselník now) | 1 |
sent_time | Datum a čas odeslání | NE | SQL DateTime UTM (YYYY-MM-DD HH:MI:SS) | 2017-10-08 14:02:33 |
just_sent | Rozeslat i na kontakty, které již kampaň obdrželi | NE | int (číselník just_sent) | 1 |
sto | Časová optimalizace rozesílky | NE | int (číselník sto) | 0 |
verified | Rozeslat pouze na ověřené kontakty | NE | int (číselník verified) | 0 |
mozify | Použít rozšíření mozify | NE | int (číselník mozify) | 0 |
images | Poslat obrázky jako odkazy | NE | int (číselník images) | 0 |
options | JSON pole key => value pro šablony hodnot |
NE | string | {"id_zakazky":"174", "stav":"odeslána"} |
Princip šablonování e-mailu pomocí parametru
options
:
Dobrý den, rádi bychom Vás informovali, že zakázka číslo {id_zakazky} byla úspěšně {stav}.
Výsledek po naplnění šablony:
Dobrý den, rádi bychom Vás informovali, že zakázka číslo 174 byla úspěšně odeslána.
Zaslání e-mail kampaně uživateli (sendUser)
Příklad: Rozeslání e-mail kampaně s ID 25 uživateli s ID 273.
<?php
require("./<path>/settings.php");
require("./<path>/request.php");
$sendio = new sendio();
$response = $sendio->sendRequest( [
'login' => $login,
'password' => $password,
'action' => 'Campaign',
'method' => 'send',
'data' => [
'campaign_id' => 25,
'contact_user_id' => 273,
],
] );
echo $response;
XML response
<?xml version="1.0" encoding="UTF-8"?>
<response>
<status>SUCCESS</status>
</response>
Rozešle konkrétní e-mail kampaň na definovaný kontakt.
Metoda
sendUser
Data
Název parametru | Popis parametru | Povinný | Datový typ | Příklad |
---|---|---|---|---|
campaign_id | Číselný identifikátor kampaně | ANO | int | 25 |
contact_user_id | Číselný identifikátor kontaktu | ANO | int | 273 |
now | Rozeslat kampaň ihned | NE | int (číselník now) | 1 |
sent_time | Datum a čas odeslání | NE | SQL DateTime UTM (YYYY-MM-DD HH:MI:SS) | 2017-10-08 14:02:33 |
sto | Časová optimalizace rozesílky | NE | int (číselník sto) | 0 |
mozify | Použít rozšíření mozify | NE | int (číselník mozify) | 0 |
images | Poslat obrázky jako odkazy | NE | int (číselník images) | 0 |
options | JSON pole key => value pro šablony hodnot |
NE | string | {"id_zakazky":"174", "stav":"odeslána"} |
Princip šablonování e-mailu pomocí parametru
options
:
Dobrý den, rádi bychom Vás informovali, že zakázka číslo {id_zakazky} byla úspěšně {stav}.
Výsledek po naplnění šablony:
Dobrý den, rádi bychom Vás informovali, že zakázka číslo 174 byla úspěšně odeslána.
SMS kampaně (třída SmsCampaign)
Název metody | Popis metody |
---|---|
delete | Smazání SMS kampaně |
get | Získání SMS kampaně |
getAll | Získání všech SMS kampaní |
send | Rozeslání SMS kampaně |
sendUser | Zaslání SMS kampaně konkrétnímu uživateli |
sendPhoneNumber | Zaslání SMS kampaně na konkrétní telefonní číslo |
Smazání SMS kampaně (delete)
Příklad: Smazání SMS kampaně s ID 31.
<?php
require("./<path>/settings.php");
require("./<path>/request.php");
$sendio = new sendio();
$response = $sendio->sendRequest( [
'login' => $login,
'password' => $password,
'action' => 'SmsCampaign',
'method' => 'delete',
'data' => [
'id' => 31,
],
] );
echo $response;
XML response
<?xml version="1.0" encoding="UTF-8"?>
<response>
<data>1</data>
<status>SUCCESS</status>
</response>
Smazání konkrétní SMS kampaně.
Metoda
delete
Data
Název parametru | Popis parametru | Povinný | Datový typ | Příklad |
---|---|---|---|---|
id | Číselný identifikátor kampaně | ANO | int | 31 |
Získání dat SMS kampaně (get)
Příklad: Získání všech dat e-mail kampaně s ID 31.
<?php
require("./<path>/settings.php");
require("./<path>/request.php");
$sendio = new sendio();
$response = $sendio->sendRequest( [
'login' => $login,
'password' => $password,
'action' => 'SmsCampaign',
'method' => 'get',
'data' => [
'id' => 31,
],
] );
echo $response;
XML response
<?xml version="1.0" encoding="UTF-8"?>
<response>
<data>
<id>31</id>
<name>Objednávka</name>
<description>Potvrzení objednávky zboží</description>
<text>Dobrý den {osloveni prijmeni}, děkujeme za Vaši objednávku.</text>
</data>
<status>SUCCESS</status>
</response>
Získá všechna data konkrétní SMS kampaně.
Metoda
get
Data
Název parametru | Popis parametru | Povinný | Datový typ | Příklad |
---|---|---|---|---|
id | Číselný identifikátor kampaně | ANO | int | 31 |
Získání všech SMS kampaní (getAll)
Příklad: Získá data prvních deseti kampaní.
<?php
require("./<path>/settings.php");
require("./<path>/request.php");
$sendio = new sendio();
$response = $sendio->sendRequest( [
'login' => $login,
'password' => $password,
'action' => 'SmsCampaign',
'method' => 'getAll',
'data' => [
'limit_from' => 0,
'limit_to' => 10,
],
] );
echo $response;
XML response
<?xml version="1.0" encoding="UTF-8"?>
<response>
<data>
<smsCampaign>
<id>31</id>
<name>Objednávka</name>
<description>Potvrzení objednávky zboží</description>
...
</smsCampaign>
<smsCampaign>
<id>32</id>
<name>Připomenutí</name>
<description>Připomenutí expedované objednávky</description>
...
</smsCampaign>
...
</data>
<status>SUCCESS</status>
</response>
Získá data všech SMS kampaní v systému Sendio.
Metoda
getAll
Data
Název parametru | Popis parametru | Povinný | Datový typ | Příklad |
---|---|---|---|---|
limit_from | Počáteční pozice procházení (počet přeskočených kampaní) | NE | int (výchozí hodnota 0) | 0 |
limit_to | Maximální počet vrácených výsledků | NE | int (výchozí hodnota 20) | 10 |
Rozeslání SMS kampaně (send)
Příklad: Rozeslání e-mail kampaně s ID 31.
<?php
require("./<path>/settings.php");
require("./<path>/request.php");
$sendio = new sendio();
$response = $sendio->sendRequest( [
'login' => $login,
'password' => $password,
'action' => 'SmsCampaign',
'method' => 'send',
'data' => [
'id' => 31,
],
] );
echo $response;
XML response
<?xml version="1.0" encoding="UTF-8"?>
<response>
<status>SUCCESS</status>
</response>
Rozešle konkrétní SMS kampaň na předem definovaný seznam kontaktů.
Metoda
send
Data
Název parametru | Popis parametru | Povinný | Datový typ | Příklad |
---|---|---|---|---|
id | Číselný identifikátor kampaně | ANO | int | 31 |
all | Rozeslat kampaň na daný počet kontaktů | NE | int (číselník all) | 1 |
first | Rozeslat kampaň na prvních x kontaktů | NE | int | 100 |
now | Rozeslat kampaň ihned | NE | int (číselník now) | 1 |
sent_time | Datum a čas odeslání | NE | SQL DateTime UTM (YYYY-MM-DD HH:MI:SS) | 2017-10-08 14:02:33 |
just_sent | Rozeslat i na kontakty, které již kampaň obdrželi | NE | int (číselník just_sent) | 1 |
options | JSON pole key => value pro šablony hodnot |
NE | string | {"id_zakazky":"174", "stav":"odeslána"} |
Princip šablonování e-mailu pomocí parametru
options
:
Dobrý den, rádi bychom Vás informovali, že zakázka číslo {id_zakazky} byla úspěšně {stav}.
Výsledek po naplnění šablony:
Dobrý den, rádi bychom Vás informovali, že zakázka číslo 174 byla úspěšně odeslána.
Zaslání SMS kampaně uživateli (sendUser)
Příklad: Rozeslání SMS kampaně s ID 31 uživateli s ID 273.
<?php
require("./<path>/settings.php");
require("./<path>/request.php");
$sendio = new sendio();
$response = $sendio->sendRequest( [
'login' => $login,
'password' => $password,
'action' => 'SmsCampaign',
'method' => 'send',
'data' => [
'campaign_id' => 31,
'contact_user_id' => 273,
],
] );
echo $response;
XML response
<?xml version="1.0" encoding="UTF-8"?>
<response>
<status>SUCCESS</status>
</response>
Rozešle konkrétní SMS kampaň na definovaný kontakt.
Metoda
sendUser
Data
Název parametru | Popis parametru | Povinný | Datový typ | Příklad |
---|---|---|---|---|
campaign_id | Číselný identifikátor kampaně | ANO | int | 31 |
contact_user_id | Číselný identifikátor kontaktu | ANO | int | 273 |
now | Rozeslat kampaň ihned | NE | int (číselník now) | 1 |
sent_time | Datum a čas odeslání | NE | SQL DateTime UTM (YYYY-MM-DD HH:MI:SS) | 2017-10-08 14:02:33 |
options | JSON pole key => value pro šablony hodnot |
NE | string | {"id_zakazky":"174", "stav":"odeslána"} |
Princip šablonování e-mailu pomocí parametru
options
:
Dobrý den, rádi bychom Vás informovali, že zakázka číslo {id_zakazky} byla úspěšně {stav}.
Výsledek po naplnění šablony:
Dobrý den, rádi bychom Vás informovali, že zakázka číslo 174 byla úspěšně odeslána.
Zaslání SMS kampaně na číslo (sendPhoneNumber)
Příklad: Rozeslání SMS kampaně s ID 31 na telefonní číslo +420 413 252 733.
<?php
require("./<path>/settings.php");
require("./<path>/request.php");
$sendio = new sendio();
$response = $sendio->sendRequest( [
'login' => $login,
'password' => $password,
'action' => 'SmsCampaign',
'method' => 'send',
'data' => [
'campaign_id' => 31,
'phone_number' => '420413252733',
],
] );
echo $response;
XML response
<?xml version="1.0" encoding="UTF-8"?>
<response>
<status>SUCCESS</status>
</response>
Rozešle konkrétní SMS kampaň na definované telefonní číslo.
Metoda
sendPhoneNumber
Data
Název parametru | Popis parametru | Povinný | Datový typ | Příklad |
---|---|---|---|---|
campaign_id | Číselný identifikátor kampaně | ANO | int | 31 |
phone_number | Telefon | ANO | string (s mezistátní předvolbou bez ’+’) | 420413252733 |
now | Rozeslat kampaň ihned | NE | int (číselník now) | 1 |
sent_time | Datum a čas odeslání | NE | SQL DateTime UTM (YYYY-MM-DD HH:MI:SS) | 2017-10-08 14:02:33 |
options | JSON pole key => value pro šablony hodnot |
NE | string | {"id_zakazky":"174", "stav":"odeslána"} |
Princip šablonování e-mailu pomocí parametru
options
:
Dobrý den, rádi bychom Vás informovali, že zakázka číslo {id_zakazky} byla úspěšně {stav}.
Výsledek po naplnění šablony:
Dobrý den, rádi bychom Vás informovali, že zakázka číslo 174 byla úspěšně odeslána.
Webové formuláře (třída Webform)
Název metody | Popis metody |
---|---|
delete | Smazání webového formuláře |
get | Získání webového formuláře |
getAll | Získání všech webových formulářů |
Smazání webového formuláře (delete)
Příklad: Smazání formuláře s ID 4.
<?php
require("./<path>/settings.php");
require("./<path>/request.php");
$sendio = new sendio();
$response = $sendio->sendRequest( [
'login' => $login,
'password' => $password,
'action' => 'Webform',
'method' => 'delete',
'data' => [
'id' => 4,
],
] );
echo $response;
XML response
<?xml version="1.0" encoding="UTF-8"?>
<response>
<data>1</data>
<status>SUCCESS</status>
</response>
Smazání konkrétního webového formuláře.
Metoda
delete
Data
Název parametru | Popis parametru | Povinný | Datový typ | Příklad |
---|---|---|---|---|
id | Číselný identifikátor formuláře | ANO | int | 4 |
Získání dat formuláře (get)
Příklad: Získání všech dat webového formuláře s ID 4.
<?php
require("./<path>/settings.php");
require("./<path>/request.php");
$sendio = new sendio();
$response = $sendio->sendRequest( [
'login' => $login,
'password' => $password,
'action' => 'Webform',
'method' => 'get',
'data' => [
'id' => 4,
],
] );
echo $response;
XML response
<?xml version="1.0" encoding="UTF-8"?>
<response>
<data>
<id>4</id>
<name>Kontaktní formulář</name>
<campaign_id/>
<contact_group_id>111</contact_group_id>
<send_to/>
</data>
<status>SUCCESS</status>
</response>
Získá všechna data konkrétního webového formuláře.
Metoda
get
Data
Název parametru | Popis parametru | Povinný | Datový typ | Příklad |
---|---|---|---|---|
id | Číselný identifikátor formuláře | ANO | int | 4 |
Získání všech formulářů (getAll)
Příklad: Získá data prvních deseti webových formulářů.
<?php
require("./<path>/settings.php");
require("./<path>/request.php");
$sendio = new sendio();
$response = $sendio->sendRequest( [
'login' => $login,
'password' => $password,
'action' => 'Webform',
'method' => 'getAll',
'data' => [
'limit_from' => 0,
'limit_to' => 10,
],
] );
echo $response;
XML response
<?xml version="1.0" encoding="UTF-8"?>
<response>
<data>
<webform>
<id>4</id>
<name>Kontaktní formulář</name>
<campaign_id/>
...
</webform>
<webform>
<id>5</id>
<name>Poptávkový formulář</name>
<campaign_id/>
...
</webform>
...
</data>
<status>SUCCESS</status>
</response>
Získá data všech webových formulářů v systému Sendio.
Metoda
getAll
Data
Název parametru | Popis parametru | Povinný | Datový typ | Příklad |
---|---|---|---|---|
limit_from | Počáteční pozice procházení (počet přeskočených kampaní) | NE | int (výchozí hodnota 0) | 0 |
limit_to | Maximální počet vrácených výsledků | NE | int (výchozí hodnota 20) | 10 |
Číselníky
sex
Pohlaví kontaktus
Hodnota parametru | Popis |
---|---|
0 | Nevyplněno |
1 | Muž |
2 | Žena |
verified
Ověřený kontakt (kontakt dal souhlas se zařazením do databáze)
Hodnota parametru | Popis |
---|---|
0 | Neověřený |
1 | Ověřený |
all
Rozeslání na daný počet kontaktů
Hodnota parametru | Popis |
---|---|
0 | Všechny kontakty |
1 | Pouze na prvních x |
just_sent
Rozeslání na kontakty, které již kampaň obdrželi
Hodnota parametru | Popis |
---|---|
0 | Pouze na nové kontakty |
1 | Všechny kontakty |
sto
Časová optimalizace rozesílky
Hodnota parametru | Popis |
---|---|
0 | Vypnuta |
1 | Zapnuta |
mozify
Použít rozšíření Mozify
Hodnota parametru | Popis |
---|---|
0 | Vypnuto |
1 | Zapnuto |
images
Způsob vložení obrázků
Hodnota parametru | Popis |
---|---|
0 | Vložit jako odkazy |
1 | Vložit do e-mailu jako přílohy |
Chybové stavy
SENDIO API používá následující chybové stavy:
HTTP kód | Význam kódu |
---|---|
200 | Volání proběhlo úspěšně |
404 | Neexistující služba |
500 | Volání skončilo chybou |