Informace o uživateli
Toto API slouží k získání informací o uživateli.
Základní popis a tvar API volání a odpovědi najdete popsané samostatně.
Služba
User info API patří do služby Obecné (general).
Parametry volání API
Volání musí obsahovat všechny základní parametry.
- CTRL
-
Pevná hodnota: user_info
- Identifikace uživatele
-
Jedno z následujících:
- id
- Id uživatele.
- login
- Přihlašovací jméno uživatele.
V požadavku specifikujte jeden z výše uvedených parametrů, které unikátně identifikují uživatele, není nutné specifikovat oba. Pokud byste specifikovali oba, bude mít přednost parametr login. Pokud nebudete specifikovat žádný, potom budou výstupem informace o uživateli, který provádí požadavek.
Uživatel se smí dotazovat pouze na uživatele:
- Administrátor a systémový uživatel se smí dotazovat na všechny uživatele.
- Zákazník se smí dotazovat na uživatele, kteří jsou registrování jako jeho uživatele (pouze na ty uživatele, kteří jej mají za vlastníka). A sám na sebe.
- Běžný uživatel se smí dotazovat pouze sám na sebe.
Pokud se uživatel dotáže na uživatele, na kterého nemá právo, nebo který neexistuje, nastane chyba USER_MISSING.
Příklady volání API
$login = 'user'; $call = microtime(true); $password = md5(md5("heslo").$call); $url = "https://api.profisms.cz/index.php?" . http_build_query(array( "CTRL" => "user_info", "_login" => $login, "_password" => $password, "_service" => "general", "_call" => $call, "id" => 10, // uživatel s id 10 )); /** URL bude vypadat https://api.profisms.cz/index.php?CTRL=user_info&_login=user &_password=fc60197e8aaa9c692a1268d7f3cead77&_service=general &_call=1293633208.3125&id=10 */ $json = join("", file($url));
$login = 'user'; $call = microtime(true); $password = md5(md5("heslo").$call); $url = "https://api.profisms.cz/index.php?" . http_build_query(array( "CTRL" => "user_info", "_login" => $login, "_password" => $password, "_service" => "general", "_call" => $call, "login" => "kuk", // uživatel s přihlašovacím jménem kuk )); /** URL bude vypadat https://api.profisms.cz/index.php?CTRL=user_info&_login=user &_password=fc60197e8aaa9c692a1268d7f3cead77&_service=general &_call=1293633208.3125&login=kuk */ $json = join("", file($url));
$login = 'user'; $call = microtime(true); $password = md5(md5("heslo").$call); $url = "https://api.profisms.cz/index.php?" . http_build_query(array( "CTRL" => "user_info", "_login" => $login, "_password" => $password, "_service" => "general", "_call" => $call, // není id ani login, výstupem budou informace o uživateli // s přihlašovacím jménem user )); /** URL bude vypadat https://api.profisms.cz/index.php?CTRL=user_info&_login=user &_password=fc60197e8aaa9c692a1268d7f3cead77&_service=general &_call=1293633208.3125 */ $json = join("", file($url));
Odpověď na úspěšný požadavek na API
Základní formát odpovědi naleznete v obecném popisu API.
Popis objektu data
Objekt data obsahuje tyto vlastnosti:
- id
- Id uživatele.
- id_user
- Id vlastníka.
- login
- Přihlašovací jméno uživatele.
- password
- MD5 hesla uživatele. Tento parametr je vyplněný v případě, že se uživatel API dotazuje sám a sebe, nebo se jedná o administrátora, nebo systémového uživatele.
- type
- Typ uživatele.
- created
- Datum a čas vytvoření uživatele ve formátu rrrr-mm-dd hh:nn:ss.
- account
- Pole účtů uživatele, vizte níže.
- contact
- Pole kontaktů uživatele, vizte níže.
- address
- Pole adres uživatele, vizte níže.
- values
- Objekt některých nastavených vlastností.
Popis objektů v poli account
Objekty v poli account obsahuje tyto vlastnosti:
- number
- Unikátní číslo účtu (variabilní symbol pro běžné platby).
- credit
- Kredit na účtu (množství prostředků na účtu v měně daného účtu).
- currency
- Měna účtu.
Popis objektů v poli contact
Objekty v poli contact odpovídají struktuře kontaktu.
Popis objektů v poli address
Objekty v poli address odpovídají struktuře adresy.
Popis objektu values
Objekt values obsahuje tyto vlastnosti:
- delivery_address
- Přednastavená adresa pro doručenky.
- deny_number_fix
- Zda zakázat zasílání na pevná čísla (ve výchozím stavu povoleno).
- deny_number_foreign
- Zda zakázat zasílání na zahraniční čísla (ve výchozím stavu povoleno).
- forbidden_numbers
- Pole čísel, která budou považována za neplatná (na tato čísla nepůjde tímto uživatelem zasílat SMS).
- invoice_mail
- Zda zasílat fakturu emailem.
- smsin_url
-
URL na které bude přesměrována příchozí SMS na základě session, klíčového slova, či jiného důvodu. URL je ve tvaru
http://www.example.com/index.php?ms=$msisdn&rec=$recipient&smstext=$smstext &so=$smsout&in=$smsin&reaon=$reason&created=$created
kde proměnné budou nahrazovány takto:- $msisdn
- Telefonní číslo odesilatele
- $recipient
- Telefonní číslo příjemce (jesno z telefonních čísel spravovaných Crazy Tomatem)
- $smstext
- Text SMS
- $smsout
- Čárkou oddělený seznam ID odchozích SMS zpráv, které jsou (mohli být) zdrojem této příchozí SMS (session)
- $smsin
- ID příchozí SMS
- $reason
- Důvod příchozí SMS
- phone
- SMS přišla z telefonního čísla, které je přiřazené k tomuto uživateli.
- login
- SMS začíná přihlašovacím jmenem tohoto uživatele.
- session
- SMS byla přiřazena k tomuto uživateli za základě session.
- keyword
- SMS byla přiřazena k tomuto uživateli za základě klíčového slova (slov), které je přiřazené k tomuto uživateli.
- smsin_email
- Emailová adresa, na kterou bude zaslána příchozí SMS (společně s dalšími doprovodnými informacemi).
Ukázky požadavků a odpovědí
$login = 'user'; $call = microtime(true); $password = md5(md5("heslo").$call); $url = "https://api.profisms.cz/index.php?" . http_build_query(array( "CTRL" => "user_info", "_login" => $login, "_password" => $password, "_service" => "general", "_call" => $call, )); $json = join("", file($url));
{ "error": { "code":0, "message":"OK" }, "data": { "id":9, "id_user":8, "login":"user", "password":"12345678901234567890123456789012", "type":"customer", "created":"2010-10-20 13:17:31", "account": [ { "number":"1200000275", "credit":423.9768, "currency":"CZK" }, { "number":"1200000286", "credit":-6.39, "currency":"EUR" }, { "number":"1200000297", "credit":0, "currency":"KRD" } ], "contact": [ { "id_contact":1, "primary":1, "type":"email", "value":"john.doe@abcdef.cz" }, { "id_contact":2, "primary":1, "type":"cell", "value":"+420123456789" } ], "address": [ { "id_address":3, "primary":1, "type":"postal", "name":"John", "surname":"Doe", "title":"", "company":"", "street":"U obchody", "building_number":"123", "city":"Praha 1", "zip":"12345", "country":"cz" } ], "values": { "delivery_address":"john.doe@abcdef.cz", "deny_number_fix": 0, "deny_number_foreign": 0, "forbidden_numbers": [], "invoice_mail": 1, "smsin_email": "john.doe.in@abcdef.cz", "smsin_url": "http://www.abcdef.cz/index.php?ms=$msisdn&rec=$recipient=smstext=$smstext&so=$smsout&in=$smsin&reaon=$reason&created=$created" } }, "_key":"dabaf9ab22e681c6edc0a6b60e8d6aac", "_time":0.64968109130859 }
Odpověď na neúspěšný požadavek na API
Základní formát odpovědi naleznete v obecném popisu API.