SmsManager

Obecný popis HTTP rozhraní

HTTP rozhraní díky své struktuře umožňuje plně využít vlastnosti našeho systému a plně je integrovat do Vašich řešení.

  • Velmi jednouchá implementace (jednodužší než XML API)
  • Odesílání zpráv
  • Neomezený počet příjemců v rámci jedné zprávy
  • Hromadné odesílání zpráv v jednom requestu
  • Vytváření akcí pro příchozí odpovědi na základě odeslané zprávy
  • Ukládání kontaktů
  • Ukládání štítků

Podporujeme šifrované připojení pomocí SSL. Jednotlivé adresy stačí volat protokolem https://.

Připravené knihovny

Máte hotovou implementaci našeho API a chcete jej nabídnout ostatním? Napište nám prosím na support@smsmanager.cz. Děkujeme!

Programovací jazyk Autor Odkaz na stažení Poslední aktualizace
PHP (Sylius) manGoweb, s.r.o. https://github.com/mangoweb-sylius/SyliusSMSManagerPlugin 4.1.2019
PHP Šimon Podlipský https://github.com/simPod/SMSManager 1.12.2018
PHP Jakub Englický https://github.com/jakubenglicky/sms-manager 3.12.2017
PHP Adrián Paníček https://github.com/superfaktura/SmsManager/ 29.3.2017
JAVA Lukáš Hrubý https://github.com/hrubysoftware/smsmanager-java-library 10.6.2017
Ruby David Hrachovy https://github.com/PrimeHammer/sms_manager 15.1.2017
PHP (Nette) Michal Pospiech https://github.com/michalpospiech/nette-smsmanager 18.3.2015
PHP @kixorz https://github.com/kixorz/SMSManager 7.8.2012

Příklady volání

Pomocí bezplatného programu Postman můžete simulovat jednotlivá volání. Po instalaci importujte následující soubor: SMSMANAGERAPI.postman_collection.json

Dostupná rozhraní

Send

Adresa:

https://http-api.smsmanager.cz/Send

GET elementy dokumentu:
Název elementu Povinné Popis
apikey
Ano API klíč, který lze získat z administrace.
number
Ano Telefonní číslo příjemce. Může obsahovat více čísel oddělených středníkem (
;
) nebo čárkou (
,
).

Správný formát telefonního čísla je:
420777111222


Přijímány jsou i varianty s "+" nebo "00" na začátku. Čísla dlouhá 9 znaků jsou doplňována o "420".
message
Ano Text zprávy.
gateway
Ano Typ brány použitého pro odesílání. Informace o jednotlivých rozdílech na stránce s ceníkem zpráv.

Možné hodnoty:

high
nebo
economy
nebo
lowcost
nebo
direct

Jiné hodnoty než
high
nemusí být dostupné pro konkrétní země nebo operátory a zpráva tak nemusí být odeslána. Viz ceník odesílání.

Výchozí:

high
sender
Ne Odesílatel zprávy. Jen u typu odesílání, který to podporuje. Odesílatele je nutné nejdříve aktivovat v nastavení. Textový odesílatel smí mít maximálně 11 znaků a musí být schválen administrátory.

Možné hodnoty:

telefonní číslo
nebo
text
.
customid
Ne Volitelné identifikační číslo zprávy. Přístupná jsou pouze čísla. Nemusí být unikátní. Maximální délka 10 znaků.
time
Ne Čas odeslání zprávy.

Správný formát:

2011-01-01T23:59:59


Výchozím nastavením je odeslání ihned.
expiration
Ne Čas expirace zprávy (= neodesílat zprávu po tomto čase)

Správný formát:

2011-01-01T23:59:59


Výchozím nastavením je doba expirace 6 hodin.


Formát odpovědi:
Odpovědi jsou zobrazovány s
Content-Type: text/plain
v kódování UTF-8.

Odpověď na požadavek je ukončena koncem řádku. Odpověď je rozdělena na několik částí. Všechny části jsou odděleny znakem
|
.


Příklad odpovědi v případě bezchybného požadavku:

OK|12345|420777111222

Odpověď Význam
OK
Požadavek úspěšně přijat
12345
Číslo požadavku, dle kterého lze požadavek dohledat či spárovat informaci o doručení. Toto ID je vždy unikátní (pozn.: pokud odesíláte více zpráv v samostatných volání a požadavky se liší jen telefonním číslem, může se stát, že bude vráceno jedno ID vícekrát).
420777111222
Telefonní číslo na které bude zpráva odeslána

Příklad odpovědi v případě bezchybného požadavku s definicí vlastního ID:

OK|12345|420777111222|999999

Odpověď Význam
OK
Požadavek úspěšně přijat
12345
Číslo požadavku, dle kterého lze požadavek dohledat či spárovat informaci o doručení
420777111222
Telefonní číslo na které bude zpráva odeslána
999999
Vlastní identifikační číslo, které bylo použito v požadavku na odeslání (volitelný parametr
customid
)

Příklad odpovědi v případě bezchybného požadavku s více příjemci:

OK|12345|420777111222,420777333444,420777555666

Odpověď Význam
OK
Požadavek úspěšně přijat
12345
Číslo požadavku, dle kterého lze požadavek dohledat či spárovat informaci o doručení
420777111222,420777333444,...
Telefonní čísla na která bude zpráva odeslána. Jednotlivá čísla jsou vždy oddělena znakem
,

Příklad odpovědi na chybný požadavek:

ERROR|102

Odpověď Význam
ERROR
Požadavek nebyl přijat
102
Číslo chyby dle tabulky návratových kódů


RequestList

Adresa:

https://http-api.smsmanager.cz/RequestList

Parametry elementy dokumentu:
Název elementu Povinné Popis
apikey
Ano API klíč, který lze získat z administrace.


Formát odpovědi:
Odpovědi jsou zobrazovány s
Content-Type: text/plain
v kódování UTF-8.

Každý jednotlivý požadavek je ukončen koncem řádku. Odpověď je rozdělena na několik částí. Všechny části jsou odděleny znakem
|
.


Příklad odpovědi:

12345|high|2011-01-01 00:00:00|2011-01-02 00:00:00|SMSMANAGER|0|2

Odpověď Význam
1234
Číslo požadavku.
high
Označení použité brány.
2011-01-01 00:00:00
Čas odeslání zprávy.
2011-01-02 00:00:00
Čas po kterém se již systém nebude pokoušet odeslat zprávu.
SMSMANAGER
Nastavený odesílatel zprávy.
0
Počet zbývajících příjemců na které ještě nebyla zpráva odeslána.
2
Stav požadavku. Význam jednotlivých kódů viz. tabulka návratových kódů.


RequestStatus

Adresa:

https://http-api.smsmanager.cz/RequestStatus

Parametry elementy dokumentu:
Název elementu Povinné Popis
apikey
Ano API klíč, který lze získat z administrace.
requestID
Ano Identifikační číslo požadavku (získané po odeslání zprávy nebo z metody RequestList).


Formát odpovědi:
Odpovědi jsou zobrazovány s
Content-Type: text/plain
v kódování UTF-8.

Každý jednotlivý požadavek je ukončen koncem řádku. Odpověď je rozdělena na několik částí. Všechny části jsou odděleny znakem
|
.


Příklad odpovědi:

420777111222|2|0|2

Odpověď Význam
420777111222
Telefonní číslo.
2
Stav odesílání. Význam jednotlivých kódů viz. tabulka návratových kódů.
0
Počet doručenek, které je pro toto číslo nutné obdržet (0 = již dorazily všechny doručenky). Číslo větší než nula se zpravidla rovná počtu jednotlivých SMS na které byl text zprávy rozdělen.
2
Stav doručení. Význam jednotlivých kódů viz. tabulka návratových kódů.


GetUserInfo

Adresa:

https://http-api.smsmanager.cz/GetUserInfo

Parametry elementy dokumentu:
Název elementu Povinné Popis
apikey
Ano API klíč, který lze získat z administrace.


Formát odpovědi:
Odpovědi jsou zobrazovány s
Content-Type: text/plain
v kódování UTF-8.

Každý jednotlivý požadavek je ukončen koncem řádku. Odpověď je rozdělena na několik částí. Všechny části jsou odděleny znakem
|
.


Příklad odpovědi:

9999|SMSMANAGER|high

Odpověď Význam
9999
Stav kreditu v Kč bez DPH.
SMSMANAGER
Odesílatel, který je nastaven jako výchozí.
high
Brána, která je nastavena jako výchozí.


GetPrice

Adresa:

https://http-api.smsmanager.cz/GetPrice

Parametry elementy dokumentu:
Název elementu Povinné Popis
apikey
Ano API klíč, který lze získat z administrace.
number
Ano Telefonní číslo příjemce. Může obsahovat více čísel oddělených středníkem (
;
) nebo čárkou (
,
).

Správný formát telefonního čísla je:
420777111222


Přijímány jsou i varianty s "+" nebo "00" na začátku. Čísla dlouhá 9 znaků jsou doplňována o "420".
message
Ano Text zprávy.
gateway
Ano Typ brány použitého pro odesílání. Informace o jednotlivých rozdílech na stránce s ceníkem zpráv.

Možné hodnoty:

high
nebo
economy
nebo
lowcost


Formát odpovědi:
Odpovědi jsou zobrazovány s
Content-Type: text/plain
v kódování UTF-8.

Každý jednotlivý požadavek je ukončen koncem řádku. Odpověď je rozdělena na několik částí. Všechny části jsou odděleny znakem
|
.


Příklad odpovědi:

2|1|50|0.75|1.50

Odpověď Význam
2
Počet platných příjemců (telefonních čísel).
1
Počet SMS do kterých bude text rozdělen.
50
Počet znaků.
0.75
Cena 1 SMS pro všechny zadané příjemce.
1.50
Celková cena za odeslání všem příjemcům.


18.8.2011
Začátek changelogu. Nový parametr "hash" u metody Send který může nahradit parametr "password", pro každou zprávu je unikátní. Přidány metody RequestList a RequestStatus.