Dokumentacja Thulium REST API
Transkrypt
Dokumentacja Thulium REST API
Thulium REST API REST API Wprowadzenie Autentykacja Kody odpowiedzi Obsługa błędów Notyfikacje o połączeniach (adresy callback) Kampanie Zasoby Opis GET outbounds Zwraca listę wszystkich kampanii. GET outbounds/:id/statuses Zwraca listę wszystkich statusów w danej kampanii. GET outbounds/:id/records Zwraca listę rekordów w kampanii. Kampania zwykła Zasoby Opis GET outbounds/:id/records/:phone_number Zwraca informacje o rekordzie w kampanii. POST outbounds/:id/records Dodanie rekordu do kampanii. DELETE outbounds/:id/records/:phone_number Usuwanie rekordu z kampanii. PUT outbounds/:id/records/:phone_number Edycja rekordu z kampanii. Kampania zasilana z CRM Zasoby Opis GET crm_outbounds/:id/records/:customer_id Zwraca informacje o rekordzie w kampanii zasilanej z CRM. POST crm_outbounds/:id/records Dodanie rekordu do kampanii zasilanej z CRM. DELETE crm_outbounds/:id/records/:customer_id Usuwanie rekordu z kampanii zasilanej z CRM. PUT crm_outbounds/:id/records/:customer_id Edycja rekordu z kampanii zasilanej z CRM. CC CRM Zasoby Opis GET companies Zwraca listę firm zawężoną o podane kryteria wyszukiwania. POST companies Dodanie firmy do CC CRM. PUT companies Edycja firmy w CC CRM. GET customers Zwraca listę klientów zawężonych o podane kryteria wyszukiwania. POST customers Dodanie klienta do CC CRM. PUT customers Edycja klienta w CC CRM. Kolejki Zasoby GET Opis queues Zwraca listę kolejek. Zasoby Opis GET queues/:id/waiting_stats Zwraca liczbę osób oczekujących w kolejce, IVR oraz przewidywany czas oczekiwania na połączenie. GET queues/:id/waiting_list Zwraca listę numerów telefonów oczekujących w kolejce. GET queues/:id/topics Zwraca listę aktywnych grup tematów (wraz z tematami) dla danej kolejki. Połączenia Zasoby POST Opis connections/topic Dodaje temat rozmowy dla połaczenia. Agenci Zasoby Opis GET agents Zwraca listę agentów. POST agents Dodanie agenta. GET agents/:login Zwraca informacje o agencie. POST agents/:login/call Zestawia połączenie dla agenta na podany numer. GET agents/:login/last_queue_connection Zwraca informacje na temat ostatniej rozmowy agenta w kolejce. GET agents/:login/status Zwraca status agenta. POST agents/:login/pause Pauzowanie agenta. POST agents/:login/free Odpauzowanie agenta. POST agents/:login/logout Wylogowanie agenta. POST agents/:login/hangup Zakończenie połączeń agenta. POST agents/:login/screenshot Wykonuje zrzut ekranu agenta. Zgłoszenia Zasoby Opis GET tickets Zwraca listę zgłoszeń. POST tickets Dodanie zgłoszenia. GET tickets/:id Zwraca informacje o zgłoszeniu. GET tickets/today_stats Zwraca statystyki zgłoszeń dla obecnego dnia. Pliki Zasoby POST Opis uploads Wgranie pliku na serwer. Nagrania Zasoby Opis GET recordings Pobranie listy nagrań. GET recordings/download Pobranie pliku nagrania. GET recordings/stream Strumieniowanie pliku nagrania. System Zasoby Opis GET system/pauses Pobranie listy pauz. GET system/transfer_shortcuts Zwraca skrótów do przekierowań. Wprowadzenie Dokumentacja / Wprowadzenie / Autentykacja Autentykacja Dla metod, które wymagają autentykacji należy dodać odpowiednie nagłówki do requestu HTTP. Autentykacja odbywa się przez nagłowek Authorize (więcej informacji). Przykład Dla użytkownika "user" i hasła "password" należy wysłać w nagłówku typ autoryzacji Basic oraz Base64 w formacie "użytkownik:hasło". Authorization: Basic dXNlcjpwYXNzd29yZAo= Pomoc Jeśli nie posiadasz nazwy użytkownika i hasła do API skontaktuj się z serwisem Thulium. Dokumentacja / Wprowadzenie / Kody odpowiedzi Kody odpowiedzi W ramach wysyłanych requestów zwracane są odpowiednie kody HTTP, które określają status wykonanej operacji. Metoda Kod HTTP Opis GET 200 Request poprawny, zwrócono dane. POST 201 Utworzono obiekt. PUT 204 Zaktualizowano obiekt. DELETE 204 Request poprawny, brak danych do zwrócenia. GET/POST/PUT/DELETE 400 Błędny request: wystąpił błąd podczas walidacji danych. GET/POST/PUT/DELETE 401 Błędny request: autoryzacja nie powiodła się, podano błędnego użytkownika lub hasło. GET/POST/PUT/DELETE 404 Błędny request: nie znaleziono szukanego zasobu (URI lub obiektu o podanym identyfikatorze). GET/POST/PUT/DELETE 500 Wewnętrzny błąd serwera podczas przetwarzania requestu. Dokumentacja / Wprowadzenie / Obsługa błędów Obsługa błędów Dla requestów, które kończą się błędami zwracana jest dokładna informacja o błędzie. Informacja ta zawiera opis i kod błędu oraz identyfikator requestu. Może zostać zwrócony więcej niż jeden błąd. Identyfikator requestu potrzebny jest przy zgłaszaniu błędów do serwisu Thulium. Przykład { "request_id": "53678450401cf", "errors": [ { "message": "Wrong format of phone number.", "code": 111111 }, { "message": "Duplicated customer name.", "code": 222222 } ] } Język Język odpowiedzi jest domyślnie ustawiony na angielski. Oznacza to, że wszelkie komunikaty o błędach będą zwrócone po angielsku. Żeby wymusić inny język należy w ramach requestu wysłać nagłówek Accept-Language. Przykład Dla języka polskiego należy wysłać nagłówek: Accept-Language: pl Dokumentacja / Wprowadzenie / Notyfikacje o połączeniach (adresy callback) Notyfikacje o połączeniach (adresy callback) System Thulium posiada możliwość wysyłania informacji o połączeniu w kolejce na podany adres callback. Aby skonfigurować taki adres należy w Panelu Thulium w zakładce Administracja -> Adresy callback, ustawić adres skryptu który będzie odpowiedzialny za odbieranie danych. Dane przesyłane do skryptu są przesyłane metodą POST. System Thulium wywołuje skrypt klienta, na podane akcje: wejście do kolejki, odebrania połączenia przez agenta, zakończenie połączenia Parametry wysyłane na poszczególne akcje: Wejście do kolejki - parametry action Akcja rozróżniająca typ żądania Przykładowa wartość: ENTER_QUEUE connection_id Unikalny identyfikator połączenia Przykładowa wartość: 1416225570.341 queue_id Identyfikator kolejki Przykładowa wartość: 155 source_number Numer dzwoniącego Przykładowa wartość: 523993855 date Data wykonania akcji Przykładowa wartość: 2014-11-17 12:59:34 Telefon dzwoni u agenta - parametry action Akcja rozróżniająca typ żądania Przykładowa wartość: AGENT_RINGING connection_id Unikalny identyfikator połączenia Przykładowa wartość: 1416225570.341 queue_id Identyfikator kolejki Przykładowa wartość: 155 agent_login Login agent, który odebrał połączenia Przykładowa wartość: jkowalski source_number Numer dzwoniącego Przykładowa wartość: 523993855 destination_number Numer agenta Przykładowa wartość: 162 date Data wykonania akcji Przykładowa wartość: 2014-11-17 12:59:36 Odebranie połączenia - parametry action Akcja rozróżniająca typ żądania Przykładowa wartość: AGENT_CONNECTED connection_id Unikalny identyfikator połączenia Przykładowa wartość: 1416225570.341 queue_id Identyfikator kolejki Przykładowa wartość: 155 agent_login Login agent, który odebrał połączenia Przykładowa wartość: jkowalski source_number Numer dzwoniącego Przykładowa wartość: 523993855 destination_number Numer agenta Przykładowa wartość: 162 date Data wykonania akcji Przykładowa wartość: 2014-11-17 12:59:36 Zakończenie połączenia - parametry action Akcja rozróżniająca typ żądania Przykładowa wartość: AGENT_COMPLETED connection_id Unikalny identyfikator połączenia Przykładowa wartość: 1416225570.341 queue_id Identyfikator kolejki Przykładowa wartość: 155 agent_login Login agent, który odebrał połączenia Przykładowa wartość: jkowalski source_number Numer dzwoniącego Przykładowa wartość: 523993855 destination_number Numer agenta Przykładowa wartość: 162 date Data wykonania akcji Przykładowa wartość: 2014-11-17 13:00:43 duration Czas trwania połączenia od wejścia w kolejkę (w sekundach) Przykładowa wartość: 69 billsec Czas trwania rozmowy (w sekundach) Przykładowa wartość: 67 filename Plik z nagraniem rozmowy Przykładowa wartość: SOME-QUEUE/2014-11-17/2014-11-17_125932_1416225570.341.wav Kampanie Dokumentacja / Kampanie GET outbounds Ostatnia aktualizacja: 2014-08-27 09:17:40 Zwraca listę wszystkich kampanii. Informacje Resource URL Autentykacja Wymagana http://localhost/api/outbounds Format odpowiedzi json Przykładowy request Metoda HTTP GET GET http://localhost/api/outbounds Przykładowy response [ { "id": "00002", "name": "API test", "crm": true } ] Przykładowe wywołanie: PHP <?php $request = curl_init('http://localhost/api/outbounds'); curl_setopt($request, CURLOPT_HTTPHEADER, array('Content-Type: application/json')); curl_setopt($request, CURLOPT_USERPWD, "api_user:api_pass"); curl_setopt($request, CURLOPT_TIMEOUT, 30); curl_setopt($request, CURLOPT_RETURNTRANSFER, true); $response = curl_exec($request); print_r(json_decode($response)); curl_close($request); JAVA ThuliumRestClient.java (Wymaga biblioteki httpclient w wersji 4.3.5, httpcore w wersji 4.3.2, commons-codec w wersji 1.9, commons-logging w wersji 1.2) public class Example { public static void main(String[] args) throws Exception { ThuliumRestClient restClient = new ThuliumRestClient("api_user", "api_pass", true); ThuliumRestClient.ThuliumRestResponse response = restClient.get("http://localhost/api/outbounds"); System.out.println(response); } } CURL curl -u api_user:api_pass -k -X GET "http://localhost/api/outbounds" Dokumentacja / Kampanie GET outbounds/:id/statuses Ostatnia aktualizacja: 2014-08-13 15:29:38 Zwraca listę wszystkich statusów w danej kampanii. Informacje Resource URL Autentykacja Wymagana http://localhost/api/outbounds/:id/statuses Format odpowiedzi json Parametry Metoda HTTP GET id Pięcioznakowy identyfikator kampanii. Przykładowa wartość: 00001 Przykładowy request GET http://localhost/api/outbounds/00001/statuses Przykładowy response [ { "status_id": "3", "name": "Dzwonić nieobecność" }, { "status_id": "4", "name": "Nie dzwonić nie zainteresowany" } } Przykładowe wywołanie: PHP <?php $request = curl_init('http://localhost/api/outbounds/00001/statuses'); curl_setopt($request, CURLOPT_HTTPHEADER, array('Content-Type: application/json')); curl_setopt($request, CURLOPT_USERPWD, "api_user:api_pass"); curl_setopt($request, CURLOPT_TIMEOUT, 30); curl_setopt($request, CURLOPT_RETURNTRANSFER, true); $response = curl_exec($request); print_r(json_decode($response)); curl_close($request); JAVA ThuliumRestClient.java (Wymaga biblioteki httpclient w wersji 4.3.5, httpcore w wersji 4.3.2, commons-codec w wersji 1.9, commons-logging w wersji 1.2) public class Example { public static void main(String[] args) throws Exception { ThuliumRestClient restClient = new ThuliumRestClient("api_user", "api_pass", true); ThuliumRestClient.ThuliumRestResponse response = restClient.get("http://localhost/api/outbounds/00001/statu ses"); System.out.println(response); } } CURL curl -u api_user:api_pass -k -X GET "http://localhost/api/outbounds/00001/statuses" Dokumentacja / Kampanie GET outbounds/:id/records Ostatnia aktualizacja: 2014-08-13 15:29:38 Zwraca listę rekordów w kampanii wraz z podstawowymi parametrami w kolejności dodawania do kampanii. Informacje Parametr count zwraca całkowitą ilość rekordów w kampanii. Autentykacja Wymagana Resource URL Format odpowiedzi json Metoda HTTP GET http://localhost/api/outbounds/:id/records Parametry id Pięcioznakowy identyfikator kampanii. Przykładowa wartość: 00001 limit opcjonalny Liczba rekordów, które mają być zwrócone. Domyślnie: 100. Maksymalna wartość: 100. Przykładowa wartość: 100 offset opcjonalny Od którego rekordu należy zwrócić rezultat (używane, gdy rekordów jest więcej, niż limit). Domyślna wartość: 0. Przykładowa wartość: 10 Przykładowy request GET http://localhost/api/outbounds/00001/records?limit=5&offset=0 Przykładowy response { "count": 1, "result": [ { "record_id": 228, "phone_number": "5555", "status": "Nie dzwonić", "status_id": 5, "next_call_date": "", "agent_name": "", "agent_login": "", "customer_id": 311 } ] } Przykładowe wywołanie: Przykładowe wywołanie: PHP <?php $request = curl_init('http://localhost/api/outbounds/00001/records?limit=5&offset=0'); curl_setopt($request, CURLOPT_HTTPHEADER, array('Content-Type: application/json')); curl_setopt($request, CURLOPT_USERPWD, "api_user:api_pass"); curl_setopt($request, CURLOPT_TIMEOUT, 30); curl_setopt($request, CURLOPT_RETURNTRANSFER, true); $response = curl_exec($request); print_r(json_decode($response)); curl_close($request); JAVA ThuliumRestClient.java (Wymaga biblioteki httpclient w wersji 4.3.5, httpcore w wersji 4.3.2, commons-codec w wersji 1.9, commons-logging w wersji 1.2) public class Example { public static void main(String[] args) throws Exception { ThuliumRestClient restClient = new ThuliumRestClient("api_user", "api_pass", true); ThuliumRestClient.ThuliumRestResponse response = restClient.get("http://localhost/api/outbounds/00001/recor ds?limit=5&offset=0"); System.out.println(response); } } CURL curl -u api_user:api_pass -k -X GET "http://localhost/api/outbounds/00001/records?limit=5&offset=0" Kampania zwykła Dokumentacja / Kampania zwykła GET outbounds/:id/records/:phone_number Ostatnia aktualizacja: 2014-08-13 15:29:38 Zwraca informacje o rekordzie w kampanii. Informacje Resource URL Autentykacja Wymagana http://localhost/api/outbounds/:id/records/:phone_number Format odpowiedzi json Parametry Metoda HTTP GET id Pięcioznakowy identyfikator kampanii. Przykładowa wartość: 00001 phone_number Numer telefonu dodany do kampanii. Przykładowa wartość: 333444555 Przykładowy request GET http://localhost/api/outbounds/00001/records/333444555 Przykładowy response { "record_id": 228, "phone_number": "333444555", "status": "Nie dzwonić", "status_id": 5, "next_call_date": "", "agent_name": "", "agent_login": "", "customer_id": "" } Przykładowe wywołanie: Przykładowe wywołanie: PHP <?php $request = curl_init('http://localhost/api/outbounds/00001/records/333444555'); curl_setopt($request, CURLOPT_HTTPHEADER, array('Content-Type: application/json')); curl_setopt($request, CURLOPT_USERPWD, "api_user:api_pass"); curl_setopt($request, CURLOPT_TIMEOUT, 30); curl_setopt($request, CURLOPT_RETURNTRANSFER, true); $response = curl_exec($request); print_r(json_decode($response)); curl_close($request); JAVA ThuliumRestClient.java (Wymaga biblioteki httpclient w wersji 4.3.5, httpcore w wersji 4.3.2, commons-codec w wersji 1.9, commons-logging w wersji 1.2) public class Example { public static void main(String[] args) throws Exception { ThuliumRestClient restClient = new ThuliumRestClient("api_user", "api_pass", true); ThuliumRestClient.ThuliumRestResponse response = restClient.get("http://localhost/api/outbounds/00001/recor ds/333444555"); System.out.println(response); } } CURL curl -u api_user:api_pass -k -X GET "http://localhost/api/outbounds/00001/records/333444555" Dokumentacja / Kampania zwykła POST outbounds/:id/records Ostatnia aktualizacja: 2014-08-14 11:40:38 Informacje Dodanie rekordu do kampanii. Za pomocą API nie można dodawać zduplikowanych numerów. Autentykacja Wymagana Resource URL Format odpowiedzi json Metoda HTTP POST http://localhost/api/outbounds/:id/records Parametry id Pięcioznakowy identyfikator kampanii. Przykładowa wartość: 00001 phone_number Numer telefonu na który będą wykonywane połączenia. Przykładowa wartość: 333444555 status_id Identyfikator statusu rekordu w kampanii. Tylko dla statusu systemowego Mój rekord należy uzupełnić pola agent_id i next_call_date. Przykładowa wartość: 8 agent_id opcjonalny Identyfikator agenta do którego zostanie przypisany rekord. Przykładowa wartość: 1020 next_call_date opcjonalny Data następnego kontaktu w formacie YYYY-MM-DD hh:mm. Przykładowa wartość: 2018-05-24 12:24 Przykładowy request POST http://localhost/api/outbounds/00001/records Dane {"phone_number":"111222333","status_id":"3"} Przykładowy response { "record_id": "231" } Przykładowe wywołanie: Przykładowe wywołanie: PHP <?php $data = '{"phone_number":"111222333","status_id":"3"}'; $request = curl_init('http://localhost/api/outbounds/00001/records'); curl_setopt($request, CURLOPT_HTTPHEADER, array( 'Content-Type: application/json', 'Content-Length: ' . mb_strlen($data) )); curl_setopt($request, CURLOPT_USERPWD, 'api_user:api_pass'); curl_setopt($request, CURLOPT_TIMEOUT, 30); curl_setopt($request, CURLOPT_RETURNTRANSFER, true); curl_setopt($request, CURLOPT_CUSTOMREQUEST, 'POST'); curl_setopt($request, CURLOPT_POSTFIELDS, $data); $response = curl_exec($request); print_r(json_decode($response)); curl_close($request); JAVA ThuliumRestClient.java (Wymaga biblioteki httpclient w wersji 4.3.5, httpcore w wersji 4.3.2, commons-codec w wersji 1.9, commons-logging w wersji 1.2) public class Example { public static void main(String[] args) throws Exception { ThuliumRestClient restClient = new ThuliumRestClient("api_user", "api_pass", true); ThuliumRestClient.ThuliumRestResponse response = restClient.post("http://localhost/api/outbounds/00001/reco rds", "{\"phone_number\":\"111222333\",\"status_id\":\"3\"}"); System.out.println(response); } } CURL curl -u api_user:api_pass -k -X POST -H "Content-type: application/json" -d '{"phone_number":"111222333","status_id ":"3"}' "http://localhost/api/outbounds/00001/records" Dokumentacja / Kampania zwykła DELETE outbounds/:id/records/:phone_number Ostatnia aktualizacja: 2014-08-14 11:40:38 Informacje Usuwanie rekordu z kampanii. Za pomocą API nie można usuwać zduplikowanych numerów. Autentykacja Wymagana Resource URL Format odpowiedzi json Metoda HTTP DELETE http://localhost/api/outbounds/:id/records/:phone_number Parametry id Pięcioznakowy identyfikator kampanii. Przykładowa wartość: 00001 phone_number Numer telefonu który zostanie usunięty z kampanii. Przykładowa wartość: 333444555 Przykładowy request DELETE http://localhost/api/outbounds/00001/records/333444555 Przykładowy response <!-- pusty --> Przykładowe wywołanie: PHP <?php $data = ''; $request = curl_init('http://localhost/api/outbounds/00001/records/333444555'); curl_setopt($request, CURLOPT_HTTPHEADER, array( 'Content-Type: application/json', 'Content-Length: ' . mb_strlen($data) )); curl_setopt($request, CURLOPT_USERPWD, 'api_user:api_pass'); curl_setopt($request, CURLOPT_TIMEOUT, 30); curl_setopt($request, CURLOPT_RETURNTRANSFER, true); curl_setopt($request, CURLOPT_CUSTOMREQUEST, 'DELETE'); curl_setopt($request, CURLOPT_POSTFIELDS, $data); $response = curl_exec($request); print_r(json_decode($response)); curl_close($request); JAVA ThuliumRestClient.java (Wymaga biblioteki httpclient w wersji 4.3.5, httpcore w wersji 4.3.2, commons-codec w wersji 1.9, commons-logging w wersji 1.2) public class Example { public static void main(String[] args) throws Exception { ThuliumRestClient restClient = new ThuliumRestClient("api_user", "api_pass", true); ThuliumRestClient.ThuliumRestResponse response = restClient.delete("http://localhost/api/outbounds/00001/re cords/333444555"); System.out.println(response); } } CURL curl -u api_user:api_pass -k -X DELETE "http://localhost/api/outbounds/00001/records/333444555" Dokumentacja / Kampania zwykła PUT outbounds/:id/records/:phone_number Ostatnia aktualizacja: 2014-08-14 11:40:38 Informacje Edytowanie rekordu w kampanii. Za pomocą API nie można edytować zduplikowanych numerów. Autentykacja Wymagana Resource URL Format odpowiedzi json Metoda HTTP PUT http://localhost/api/outbounds/:id/records/:phone_number Parametry id Pięcioznakowy identyfikator kampanii. Przykładowa wartość: 00001 status_id Identyfikator statusu rekordu w kampanii. Tylko dla statusu systemowego Mój rekord należy uzupełnić pola agent_id i next_call_date. Przykładowa wartość: 8 agent_id opcjonalny Identyfikator agenta do którego zostanie przypisany rekord. Przykładowa wartość: 1020 next_call_date opcjonalny Data następnego kontaktu w formacie YYYY-MM-DD hh:mm. Przykładowa wartość: 2018-05-24 12:24 Przykładowy request PUT http://localhost/api/outbounds/00001/records/333444555 Dane {"status_id":"3"} Przykładowy response <!-- pusty --> Przykładowe wywołanie: Przykładowe wywołanie: PHP <?php $data = '{"status_id":"3"}'; $request = curl_init('http://localhost/api/outbounds/00001/records/333444555'); curl_setopt($request, CURLOPT_HTTPHEADER, array( 'Content-Type: application/json', 'Content-Length: ' . mb_strlen($data) )); curl_setopt($request, CURLOPT_USERPWD, 'api_user:api_pass'); curl_setopt($request, CURLOPT_TIMEOUT, 30); curl_setopt($request, CURLOPT_RETURNTRANSFER, true); curl_setopt($request, CURLOPT_CUSTOMREQUEST, 'PUT'); curl_setopt($request, CURLOPT_POSTFIELDS, $data); $response = curl_exec($request); print_r(json_decode($response)); curl_close($request); JAVA ThuliumRestClient.java (Wymaga biblioteki httpclient w wersji 4.3.5, httpcore w wersji 4.3.2, commons-codec w wersji 1.9, commons-logging w wersji 1.2) public class Example { public static void main(String[] args) throws Exception { ThuliumRestClient restClient = new ThuliumRestClient("api_user", "api_pass", true); ThuliumRestClient.ThuliumRestResponse response = restClient.put("http://localhost/api/outbounds/00001/recor ds/333444555", "{\"status_id\":\"3\"}"); System.out.println(response); } } CURL curl -u api_user:api_pass -k -X PUT -H "Content-type: application/json" -d '{"status_id":"3"}' "http://localhost/api/outbo unds/00001/records/333444555" Kampania zasilana z CRM Dokumentacja / Kampania zasilana z CRM GET crm_outbounds/:id/records/:customer_id Ostatnia aktualizacja: 2014-08-13 15:29:38 Zwraca informacje o rekordzie w kampanii zasilanej z CRM. Informacje Resource URL Autentykacja Wymagana http://localhost/api/crm_outbounds/:id/records/:customer_id Format odpowiedzi json Parametry Metoda HTTP GET id Pięcioznakowy identyfikator kampanii. Przykładowa wartość: 00001 customer_id Identyfikator klienta zapisanego w CC CRM. Przykładowa wartość: 441 Przykładowy request GET http://localhost/api/crm_outbounds/00001/records/441 Przykładowy response { "record_id": 47, "phone_number": "158433367", "status": "Nie dzwonić", "status_id": 6, "next_call_date": "", "agent_name": "", "agent_login": "", "customer_id": 441 } Przykładowe wywołanie: Przykładowe wywołanie: PHP <?php $request = curl_init('http://localhost/api/crm_outbounds/00001/records/441'); curl_setopt($request, CURLOPT_HTTPHEADER, array('Content-Type: application/json')); curl_setopt($request, CURLOPT_USERPWD, "api_user:api_pass"); curl_setopt($request, CURLOPT_TIMEOUT, 30); curl_setopt($request, CURLOPT_RETURNTRANSFER, true); $response = curl_exec($request); print_r(json_decode($response)); curl_close($request); JAVA ThuliumRestClient.java (Wymaga biblioteki httpclient w wersji 4.3.5, httpcore w wersji 4.3.2, commons-codec w wersji 1.9, commons-logging w wersji 1.2) public class Example { public static void main(String[] args) throws Exception { ThuliumRestClient restClient = new ThuliumRestClient("api_user", "api_pass", true); ThuliumRestClient.ThuliumRestResponse response = restClient.get("http://localhost/api/crm_outbounds/00001/r ecords/441"); System.out.println(response); } } CURL curl -u api_user:api_pass -k -X GET "http://localhost/api/crm_outbounds/00001/records/441" Dokumentacja / Kampania zasilana z CRM POST crm_outbounds/:id/records Ostatnia aktualizacja: 2014-08-13 15:29:38 Informacje Dodanie rekordu do kampanii CRM. Resource URL Autentykacja Wymagana http://localhost/api/crm_outbounds/:id/records Format odpowiedzi json Parametry Metoda HTTP POST id Pięcioznakowy identyfikator kampanii. Przykładowa wartość: 00001 customer_id Identyfikator klienta zapisanego w CC CRM. Przykładowa wartość: 441 status_id Identyfikator statusu rekordu w kampanii. Tylko dla statusu systemowego Mój rekord należy uzupełnić pola agent_id i next_call_date. Przykładowa wartość: 8 agent_id opcjonalny Identyfikator agenta do którego zostanie przypisany rekord. Przykładowa wartość: 1020 next_call_date opcjonalny Data następnego kontaktu w formacie YYYY-MM-DD hh:mm. Przykładowa wartość: 2018-05-24 12:24 Przykładowy request POST http://localhost/api/crm_outbounds/00001/records Dane {"customer_id":441,"status_id":3} Przykładowy response { "record_id": "231" } Przykładowe wywołanie: Przykładowe wywołanie: PHP <?php $data = '{"customer_id":441,"status_id":3}'; $request = curl_init('http://localhost/api/crm_outbounds/00001/records'); curl_setopt($request, CURLOPT_HTTPHEADER, array( 'Content-Type: application/json', 'Content-Length: ' . mb_strlen($data) )); curl_setopt($request, CURLOPT_USERPWD, 'api_user:api_pass'); curl_setopt($request, CURLOPT_TIMEOUT, 30); curl_setopt($request, CURLOPT_RETURNTRANSFER, true); curl_setopt($request, CURLOPT_CUSTOMREQUEST, 'POST'); curl_setopt($request, CURLOPT_POSTFIELDS, $data); $response = curl_exec($request); print_r(json_decode($response)); curl_close($request); JAVA ThuliumRestClient.java (Wymaga biblioteki httpclient w wersji 4.3.5, httpcore w wersji 4.3.2, commons-codec w wersji 1.9, commons-logging w wersji 1.2) public class Example { public static void main(String[] args) throws Exception { ThuliumRestClient restClient = new ThuliumRestClient("api_user", "api_pass", true); ThuliumRestClient.ThuliumRestResponse response = restClient.post("http://localhost/api/crm_outbounds/00001 /records", "{\"customer_id\":441,\"status_id\":3}"); System.out.println(response); } } CURL curl -u api_user:api_pass -k -X POST -H "Content-type: application/json" -d '{"customer_id":441,"status_id":3}' "http:// localhost/api/crm_outbounds/00001/records" Dokumentacja / Kampania zasilana z CRM DELETE crm_outbounds/:id/records/:customer_id Ostatnia aktualizacja: 2014-08-13 15:29:38 Informacje Dodanie rekordu do kampanii CRM. Resource URL Autentykacja Wymagana http://localhost/api/crm_outbounds/:id/records/:customer_id Format odpowiedzi json Parametry Metoda HTTP DELETE id Pięcioznakowy identyfikator kampanii. Przykładowa wartość: 00001 customer_id Identyfikator klienta zapisanego w CC CRM. Przykładowa wartość: 441 Przykładowy request DELETE http://localhost/api/crm_outbounds/00001/records/441 Przykładowy response <!-- pusty --> Przykładowe wywołanie: PHP <?php $data = ''; $request = curl_init('http://localhost/api/crm_outbounds/00001/records/441'); curl_setopt($request, CURLOPT_HTTPHEADER, array( 'Content-Type: application/json', 'Content-Length: ' . mb_strlen($data) )); curl_setopt($request, CURLOPT_USERPWD, 'api_user:api_pass'); curl_setopt($request, CURLOPT_TIMEOUT, 30); curl_setopt($request, CURLOPT_RETURNTRANSFER, true); curl_setopt($request, CURLOPT_CUSTOMREQUEST, 'DELETE'); curl_setopt($request, CURLOPT_POSTFIELDS, $data); $response = curl_exec($request); print_r(json_decode($response)); curl_close($request); JAVA ThuliumRestClient.java (Wymaga biblioteki httpclient w wersji 4.3.5, httpcore w wersji 4.3.2, commons-codec w wersji 1.9, commons-logging w wersji 1.2) public class Example { public static void main(String[] args) throws Exception { ThuliumRestClient restClient = new ThuliumRestClient("api_user", "api_pass", true); ThuliumRestClient.ThuliumRestResponse response = restClient.delete("http://localhost/api/crm_outbounds/000 01/records/441"); System.out.println(response); } } CURL curl -u api_user:api_pass -k -X DELETE "http://localhost/api/crm_outbounds/00001/records/441" Dokumentacja / Kampania zasilana z CRM PUT crm_outbounds/:id/records/:customer_id Ostatnia aktualizacja: 2014-08-13 15:29:38 Edycja rekordu z kampanii zasilanej z CRM. Informacje Resource URL Autentykacja Wymagana http://localhost/api/crm_outbounds/:id/records/:customer_id Format odpowiedzi json Parametry Metoda HTTP PUT id Pięcioznakowy identyfikator kampanii. Przykładowa wartość: 00001 customer_id Identyfikator klienta zapisanego w CC CRM. Przykładowa wartość: 441 status_id Identyfikator statusu rekordu w kampanii. Tylko dla statusu systemowego Mój rekord należy uzupełnić pola agent_id i next_call_date. Przykładowa wartość: 8 agent_id opcjonalny Identyfikator agenta do którego zostanie przypisany rekord. Przykładowa wartość: 1020 next_call_date opcjonalny Data następnego kontaktu w formacie YYYY-MM-DD hh:mm. Przykładowa wartość: 2018-05-24 12:24 Przykładowy request PUT http://localhost/api/crm_outbounds/00001/records/441 Dane {"status_id":"3"} Przykładowy response <!-- pusty --> Przykładowe wywołanie: Przykładowe wywołanie: PHP <?php $data = '{"status_id":"3"}'; $request = curl_init('http://localhost/api/crm_outbounds/00001/records/441'); curl_setopt($request, CURLOPT_HTTPHEADER, array( 'Content-Type: application/json', 'Content-Length: ' . mb_strlen($data) )); curl_setopt($request, CURLOPT_USERPWD, 'api_user:api_pass'); curl_setopt($request, CURLOPT_TIMEOUT, 30); curl_setopt($request, CURLOPT_RETURNTRANSFER, true); curl_setopt($request, CURLOPT_CUSTOMREQUEST, 'PUT'); curl_setopt($request, CURLOPT_POSTFIELDS, $data); $response = curl_exec($request); print_r(json_decode($response)); curl_close($request); JAVA ThuliumRestClient.java (Wymaga biblioteki httpclient w wersji 4.3.5, httpcore w wersji 4.3.2, commons-codec w wersji 1.9, commons-logging w wersji 1.2) public class Example { public static void main(String[] args) throws Exception { ThuliumRestClient restClient = new ThuliumRestClient("api_user", "api_pass", true); ThuliumRestClient.ThuliumRestResponse response = restClient.put("http://localhost/api/crm_outbounds/00001/r ecords/441", "{\"status_id\":\"3\"}"); System.out.println(response); } } CURL curl -u api_user:api_pass -k -X PUT -H "Content-type: application/json" -d '{"status_id":"3"}' "http://localhost/api/crm_ outbounds/00001/records/441" CC CRM Dokumentacja / CC CRM GET companies Ostatnia aktualizacja: 2014-08-12 17:31:39 Zwraca listę firm zawężoną o podane kryteria wyszukiwania. Informacje Może zwrócić maksymalnie 20 firm. Autentykacja Wymagana Resource URL Format odpowiedzi json Metoda HTTP GET http://localhost/api/companies Parametry nip opcjonalny Numer NIP firmy. Przykładowa wartość: 6783144527 Przykładowy request GET http://localhost/api/companies?nip=6783144527 Przykładowy response [ { "name": "Thulium", "company_id": 28, "type": "wewnętrzny", "group": "partner", "nip": "6783144527", "address": { "street": "os. Złotej Jesieni", "building": "7", "flat": null, "postcode": "31-827", "city": "Kraków", "post_office": "Kraków", "borough": null,, "county": null, "voivodship": null, "country": "Polska" }, "custom_fields": { "ID": null, "Dodatkowe informacje": "brak" } } ] Przykładowe wywołanie: Przykładowe wywołanie: PHP <?php $request = curl_init('http://localhost/api/companies?nip=6783144527'); curl_setopt($request, CURLOPT_HTTPHEADER, array('Content-Type: application/json')); curl_setopt($request, CURLOPT_USERPWD, "api_user:api_pass"); curl_setopt($request, CURLOPT_TIMEOUT, 30); curl_setopt($request, CURLOPT_RETURNTRANSFER, true); $response = curl_exec($request); print_r(json_decode($response)); curl_close($request); JAVA ThuliumRestClient.java (Wymaga biblioteki httpclient w wersji 4.3.5, httpcore w wersji 4.3.2, commons-codec w wersji 1.9, commons-logging w wersji 1.2) public class Example { public static void main(String[] args) throws Exception { ThuliumRestClient restClient = new ThuliumRestClient("api_user", "api_pass", true); ThuliumRestClient.ThuliumRestResponse response = restClient.get("http://localhost/api/companies?nip=678314 4527"); System.out.println(response); } } CURL curl -u api_user:api_pass -k -X GET "http://localhost/api/companies?nip=6783144527" Dokumentacja / CC CRM POST companies Ostatnia aktualizacja: 2014-09-16 14:15:23 Informacje Dodanie firmy do CC CRM. Resource URL Autentykacja Wymagana http://localhost/api/companies Format odpowiedzi json Parametry Metoda HTTP POST name Nazwa firmy. Nazwa jest unikatowa. nip opcjonalny Numer NIP firmy. Jeśli jest podany, ma być unikatowy. type opcjonalny Tekstowa nazwa typu klienta zdefiniowana w systemie. group opcjonalny Tekstowa nazwa grupy klienta zdefiniowana w systemie. custom_fields opcjonalny Obiekt z wartościami pól specjalnych. address opcjonalny Adres firmy. street opcjonalny Nazwa ulicy. building opcjonalny Numer budynku. flat opcjonalny Numer mieszkania. postcode opcjonalny Kod pocztowy. city opcjonalny Miasto. country opcjonalny Kraj. Uwagi Pole custom_fields musi zwawierać mapę pól specjalnych gdzie kluczem jest tekstowa nazwa pola specjalnego a wartością treść którą chcemy ustawić. W obiekcie możemy przekazać tylko te pola, których wartości chcemy ustawić. Jeśli przekazana wartość pola specjalnego będzie pusta zawartość pola zostanie usunięta. W przypadku gdy pole specjalne nie istnieje zostanie utworzone. Przykładowy request POST http://localhost/api/companies Dane {"name":"company","nip":"6783144527","address":{"city":"Krakow","street":"Zlotej Jesieni"}} Przykładowy response { "company_id": "21" } Przykładowe wywołanie: Przykładowe wywołanie: PHP <?php $data = '{"name":"company","nip":"6783144527","address":{"city":"Krakow","street":"Zlotej Jesieni"}}'; $request = curl_init('http://localhost/api/companies'); curl_setopt($request, CURLOPT_HTTPHEADER, array( 'Content-Type: application/json', 'Content-Length: ' . mb_strlen($data) )); curl_setopt($request, CURLOPT_USERPWD, 'api_user:api_pass'); curl_setopt($request, CURLOPT_TIMEOUT, 30); curl_setopt($request, CURLOPT_RETURNTRANSFER, true); curl_setopt($request, CURLOPT_CUSTOMREQUEST, 'POST'); curl_setopt($request, CURLOPT_POSTFIELDS, $data); $response = curl_exec($request); print_r(json_decode($response)); curl_close($request); JAVA ThuliumRestClient.java (Wymaga biblioteki httpclient w wersji 4.3.5, httpcore w wersji 4.3.2, commons-codec w wersji 1.9, commons-logging w wersji 1.2) public class Example { public static void main(String[] args) throws Exception { ThuliumRestClient restClient = new ThuliumRestClient("api_user", "api_pass", true); ThuliumRestClient.ThuliumRestResponse response = restClient.post("http://localhost/api/companies", "{\"name\ ":\"company\",\"nip\":\"6783144527\",\"address\":{\"city\":\"Krakow\",\"street\":\"Zlotej Jesieni\"}}"); System.out.println(response); } } CURL curl -u api_user:api_pass -k -X POST -H "Content-type: application/json" -d '{"name":"company","nip":"6783144527"," address":{"city":"Krakow","street":"Zlotej Jesieni"}}' "http://localhost/api/companies" Dokumentacja / CC CRM PUT companies/:id Ostatnia aktualizacja: 2014-09-16 14:15:23 Informacje Edycja firmy. Resource URL Autentykacja Wymagana http://localhost/api/companies/:id Format odpowiedzi json Parametry Metoda HTTP PUT name opcjonalny Nazwa firmy. Nazwa jest unikatowa. nip opcjonalny Numer NIP firmy. Jeśli jest podany, ma być unikatowy. type opcjonalny Tekstowa nazwa typu klienta zdefiniowana w systemie. group opcjonalny Tekstowa nazwa grupy klienta zdefiniowana w systemie. custom_fields opcjonalny Obiekt z wartościami pól specjalnych. address opcjonalny Adres firmy. street opcjonalny Nazwa ulicy. building opcjonalny Numer budynku. flat opcjonalny Numer mieszkania. postcode opcjonalny Kod pocztowy. city opcjonalny Miasto. country opcjonalny Kraj. Uwagi Pole custom_fields musi zwawierać mapę pól specjalnych gdzie kluczem jest tekstowa nazwa pola specjalnego a wartością treść którą chcemy ustawić. W obiekcie możemy przekazać tylko te pola, których wartości chcemy ustawić. Jeśli przekazana wartość pola specjalnego będzie pusta zawartość pola zostanie usunięta. W przypadku gdy pole specjalne nie istnieje zostanie utworzone. Przykładowy request PUT http://localhost/api/companies/23 Dane {"name":"company","nip":"6783144527","address":{"city":"Krakow","street":"Zlotej Jesieni"}} Przykładowy response <!-- pusty --> Przykładowe wywołanie: Przykładowe wywołanie: PHP <?php $data = '{"name":"company","nip":"6783144527","address":{"city":"Krakow","street":"Zlotej Jesieni"}}'; $request = curl_init('http://localhost/api/companies/23'); curl_setopt($request, CURLOPT_HTTPHEADER, array( 'Content-Type: application/json', 'Content-Length: ' . mb_strlen($data) )); curl_setopt($request, CURLOPT_USERPWD, 'api_user:api_pass'); curl_setopt($request, CURLOPT_TIMEOUT, 30); curl_setopt($request, CURLOPT_RETURNTRANSFER, true); curl_setopt($request, CURLOPT_CUSTOMREQUEST, 'PUT'); curl_setopt($request, CURLOPT_POSTFIELDS, $data); $response = curl_exec($request); print_r(json_decode($response)); curl_close($request); JAVA ThuliumRestClient.java (Wymaga biblioteki httpclient w wersji 4.3.5, httpcore w wersji 4.3.2, commons-codec w wersji 1.9, commons-logging w wersji 1.2) public class Example { public static void main(String[] args) throws Exception { ThuliumRestClient restClient = new ThuliumRestClient("api_user", "api_pass", true); ThuliumRestClient.ThuliumRestResponse response = restClient.put("http://localhost/api/companies/23", "{\"nam e\":\"company\",\"nip\":\"6783144527\",\"address\":{\"city\":\"Krakow\",\"street\":\"Zlotej Jesieni\"}}"); System.out.println(response); } } CURL curl -u api_user:api_pass -k -X PUT -H "Content-type: application/json" -d '{"name":"company","nip":"6783144527","a ddress":{"city":"Krakow","street":"Zlotej Jesieni"}}' "http://localhost/api/companies/23" Dokumentacja / CC CRM GET customers Ostatnia aktualizacja: 2014-08-12 17:31:39 Zwraca listę klientów zawężonych o podane kryteria wyszukiwania. Informacje Może zwrócić maksymalnie 20 klientów. Autentykacja Wymagana Resource URL Format odpowiedzi json Metoda HTTP GET http://localhost/api/customers Parametry email opcjonalny Adres e-mail klienta. Przykładowa wartość: [email protected] Przykładowy request GET http://localhost/api/[email protected] Przykładowy response [ { "customer_id": 273, "name": "Jan", "surname": "Kowalski", "phone_number": "222333444", "email": "[email protected]", "company_id": "", "identifier": "", "type": "", "group": "", "company_flag": "", "custom_fields": { "ID": null, "Dodatkowe informacje": "Numer dowodu - AXX 121212" } } ] Przykładowe wywołanie: Przykładowe wywołanie: PHP <?php $request = curl_init('http://localhost/api/[email protected]'); curl_setopt($request, CURLOPT_HTTPHEADER, array('Content-Type: application/json')); curl_setopt($request, CURLOPT_USERPWD, "api_user:api_pass"); curl_setopt($request, CURLOPT_TIMEOUT, 30); curl_setopt($request, CURLOPT_RETURNTRANSFER, true); $response = curl_exec($request); print_r(json_decode($response)); curl_close($request); JAVA ThuliumRestClient.java (Wymaga biblioteki httpclient w wersji 4.3.5, httpcore w wersji 4.3.2, commons-codec w wersji 1.9, commons-logging w wersji 1.2) public class Example { public static void main(String[] args) throws Exception { ThuliumRestClient restClient = new ThuliumRestClient("api_user", "api_pass", true); ThuliumRestClient.ThuliumRestResponse response = restClient.get("http://localhost/api/customers?email=jan.k [email protected]"); System.out.println(response); } } CURL curl -u api_user:api_pass -k -X GET "http://localhost/api/[email protected]" Dokumentacja / CC CRM POST customers Ostatnia aktualizacja: 2014-09-16 14:15:23 Informacje Dodanie klienta do CC CRM. Resource URL Autentykacja Wymagana http://localhost/api/customers Format odpowiedzi json Parametry Metoda HTTP POST name opcjonalny Imię klienta. surname Nazwisko klienta. email opcjonalny Adres e-mail klienta. phone_number Numer telefonu klienta. company_id opcjonalny Identyfikator firmy, do której ma być dodany klient. type opcjonalny Tekstowa nazwa typu klienta zdefiniowana w systemie. group opcjonalny Tekstowa nazwa grupy klienta zdefiniowana w systemie. identifier opcjonalny Identyfikator klienta. custom_fields opcjonalny Obiekt z wartościami pól specjalnych. Uwagi Pole custom_fields musi zwawierać mapę pól specjalnych gdzie kluczem jest tekstowa nazwa pola specjalnego a wartością treść którą chcemy ustawić. W obiekcie możemy przekazać tylko te pola, których wartości chcemy ustawić. Jeśli przekazana wartość pola specjalnego będzie pusta zawartość pola zostanie usunięta. W przypadku gdy pole specjalne nie istnieje zostanie utworzone. Przykładowy request POST http://localhost/api/customers Dane {"surname":"Kowalski","phone_number":"333444555"} Przykładowy response { "customer_id": "324" } Przykładowe wywołanie: Przykładowe wywołanie: PHP <?php $data = '{"surname":"Kowalski","phone_number":"333444555"}'; $request = curl_init('http://localhost/api/customers'); curl_setopt($request, CURLOPT_HTTPHEADER, array( 'Content-Type: application/json', 'Content-Length: ' . mb_strlen($data) )); curl_setopt($request, CURLOPT_USERPWD, 'api_user:api_pass'); curl_setopt($request, CURLOPT_TIMEOUT, 30); curl_setopt($request, CURLOPT_RETURNTRANSFER, true); curl_setopt($request, CURLOPT_CUSTOMREQUEST, 'POST'); curl_setopt($request, CURLOPT_POSTFIELDS, $data); $response = curl_exec($request); print_r(json_decode($response)); curl_close($request); JAVA ThuliumRestClient.java (Wymaga biblioteki httpclient w wersji 4.3.5, httpcore w wersji 4.3.2, commons-codec w wersji 1.9, commons-logging w wersji 1.2) public class Example { public static void main(String[] args) throws Exception { ThuliumRestClient restClient = new ThuliumRestClient("api_user", "api_pass", true); ThuliumRestClient.ThuliumRestResponse response = restClient.post("http://localhost/api/customers", "{\"surna me\":\"Kowalski\",\"phone_number\":\"333444555\"}"); System.out.println(response); } } CURL curl -u api_user:api_pass -k -X POST -H "Content-type: application/json" -d '{"surname":"Kowalski","phone_number":" 333444555"}' "http://localhost/api/customers" Dokumentacja / CC CRM PUT customers/:id Ostatnia aktualizacja: 2014-09-16 14:15:23 Informacje Edycja klienta. Resource URL Autentykacja Wymagana http://localhost/api/customers/:id Format odpowiedzi json Parametry Metoda HTTP PUT name opcjonalny Imię klienta. surname opcjonalny Nazwisko klienta. email opcjonalny Adres e-mail klienta. phone_number opcjonalny Numer telefonu klienta. company_id opcjonalny Identyfikator firmy, do której ma być dodany klient. type opcjonalny Tekstowa nazwa typu klienta zdefiniowana w systemie. group opcjonalny Tekstowa nazwa grupy klienta zdefiniowana w systemie. identifier opcjonalny Identyfikator klienta. custom_fields opcjonalny Obiekt z wartościami pól specjalnych. Uwagi Pole custom_fields musi zwawierać mapę pól specjalnych gdzie kluczem jest tekstowa nazwa pola specjalnego a wartością treść którą chcemy ustawić. W obiekcie możemy przekazać tylko te pola, których wartości chcemy ustawić. Jeśli przekazana wartość pola specjalnego będzie pusta zawartość pola zostanie usunięta. W przypadku gdy pole specjalne nie istnieje zostanie utworzone. Przykładowy request PUT http://localhost/api/customers/12 Dane {"surname":"Kowalski","phone_number":"333444555"} Przykładowy response <!-- pusty --> Przykładowe wywołanie: Przykładowe wywołanie: PHP <?php $data = '{"surname":"Kowalski","phone_number":"333444555"}'; $request = curl_init('http://localhost/api/customers/12'); curl_setopt($request, CURLOPT_HTTPHEADER, array( 'Content-Type: application/json', 'Content-Length: ' . mb_strlen($data) )); curl_setopt($request, CURLOPT_USERPWD, 'api_user:api_pass'); curl_setopt($request, CURLOPT_TIMEOUT, 30); curl_setopt($request, CURLOPT_RETURNTRANSFER, true); curl_setopt($request, CURLOPT_CUSTOMREQUEST, 'PUT'); curl_setopt($request, CURLOPT_POSTFIELDS, $data); $response = curl_exec($request); print_r(json_decode($response)); curl_close($request); JAVA ThuliumRestClient.java (Wymaga biblioteki httpclient w wersji 4.3.5, httpcore w wersji 4.3.2, commons-codec w wersji 1.9, commons-logging w wersji 1.2) public class Example { public static void main(String[] args) throws Exception { ThuliumRestClient restClient = new ThuliumRestClient("api_user", "api_pass", true); ThuliumRestClient.ThuliumRestResponse response = restClient.put("http://localhost/api/customers/12", "{\"surn ame\":\"Kowalski\",\"phone_number\":\"333444555\"}"); System.out.println(response); } } CURL curl -u api_user:api_pass -k -X PUT -H "Content-type: application/json" -d '{"surname":"Kowalski","phone_number":"3 33444555"}' "http://localhost/api/customers/12" Kolejki Dokumentacja / Kolejki GET queues Ostatnia aktualizacja: 2014-05-12 08:16:41 Zwraca listę kolejek. Informacje Resource URL Autentykacja Wymagana http://localhost/api/queues Format odpowiedzi json Przykładowy request Metoda HTTP GET GET http://localhost/api/queues Przykładowy response [ { "queue_id": 1, "name": "BOK" }, { "queue_id": 2, "name": "Serwis" } ] Przykładowe wywołanie: PHP <?php $request = curl_init('http://localhost/api/queues'); curl_setopt($request, CURLOPT_HTTPHEADER, array('Content-Type: application/json')); curl_setopt($request, CURLOPT_USERPWD, "api_user:api_pass"); curl_setopt($request, CURLOPT_TIMEOUT, 30); curl_setopt($request, CURLOPT_RETURNTRANSFER, true); $response = curl_exec($request); print_r(json_decode($response)); curl_close($request); JAVA ThuliumRestClient.java (Wymaga biblioteki httpclient w wersji 4.3.5, httpcore w wersji 4.3.2, commons-codec w wersji 1.9, commons-logging w wersji 1.2) public class Example { public static void main(String[] args) throws Exception { ThuliumRestClient restClient = new ThuliumRestClient("api_user", "api_pass", true); ThuliumRestClient.ThuliumRestResponse response = restClient.get("http://localhost/api/queues"); System.out.println(response); } } CURL curl -u api_user:api_pass -k -X GET "http://localhost/api/queues" Dokumentacja / Kolejki GET queues/:id/waiting_stats Ostatnia aktualizacja: 2014-08-06 14:47:09 Zwraca liczbę osób oczekujących w kolejce, IVR oraz przewidywany czas oczekiwania na połączenie. Informacje Dane zwrócone z zasobu prezentują dane z ostatniej godziny. Autentykacja Wymagana Resource URL Format odpowiedzi json Metoda HTTP GET http://localhost/api/queues/:id/waiting_stats Parametry id Identyfikator kolejki. Przykładowa wartość: 2 Przykładowy request GET http://localhost/api/queues/2/waiting_stats Przykładowy response { "in_queue": 2, "approx_wait_time": "00:00:30" } Przykładowe wywołanie: PHP <?php $request = curl_init('http://localhost/api/queues/2/waiting_stats'); curl_setopt($request, CURLOPT_HTTPHEADER, array('Content-Type: application/json')); curl_setopt($request, CURLOPT_USERPWD, "api_user:api_pass"); curl_setopt($request, CURLOPT_TIMEOUT, 30); curl_setopt($request, CURLOPT_RETURNTRANSFER, true); $response = curl_exec($request); print_r(json_decode($response)); curl_close($request); JAVA ThuliumRestClient.java (Wymaga biblioteki httpclient w wersji 4.3.5, httpcore w wersji 4.3.2, commons-codec w wersji 1.9, commons-logging w wersji 1.2) public class Example { public static void main(String[] args) throws Exception { ThuliumRestClient restClient = new ThuliumRestClient("api_user", "api_pass", true); ThuliumRestClient.ThuliumRestResponse response = restClient.get("http://localhost/api/queues/2/waiting_stats "); System.out.println(response); } } CURL curl -u api_user:api_pass -k -X GET "http://localhost/api/queues/2/waiting_stats" Dokumentacja / Kolejki GET queues/:id/waiting_list Ostatnia aktualizacja: 2014-08-06 14:47:09 Zwraca numery telefonów osób oczekujących w kolejce. Jeśli numer telefonu zostanie jednoznacznie odnaleziony w CRM, to zwracany jest identyfikator i imię/nazwisko osoby lub nazwa firmy. Resource URL http://localhost/api/queues/:id/waiting_list Parametry id Identyfikator kolejki. Przykładowa wartość: 2 Przykładowy request GET http://localhost/api/queues/2/waiting_list Przykładowy response [ { phone_number: "613459851", started_at: "2014-08-06 14:30:37", customer_id: null, customer_label: null }, { phone_number: "840526437", started_at: "2014-08-06 14:30:36", customer_id: null, customer_label: null }, { phone_number: "746842523", started_at: "2014-08-06 14:30:35", customer_id: 123, customer_label: "Jan Kowalski" } ] Przykładowe wywołanie: Informacje Autentykacja Wymagana Format odpowiedzi json Metoda HTTP GET Przykładowe wywołanie: PHP <?php $request = curl_init('http://localhost/api/queues/2/waiting_list'); curl_setopt($request, CURLOPT_HTTPHEADER, array('Content-Type: application/json')); curl_setopt($request, CURLOPT_USERPWD, "api_user:api_pass"); curl_setopt($request, CURLOPT_TIMEOUT, 30); curl_setopt($request, CURLOPT_RETURNTRANSFER, true); $response = curl_exec($request); print_r(json_decode($response)); curl_close($request); JAVA ThuliumRestClient.java (Wymaga biblioteki httpclient w wersji 4.3.5, httpcore w wersji 4.3.2, commons-codec w wersji 1.9, commons-logging w wersji 1.2) public class Example { public static void main(String[] args) throws Exception { ThuliumRestClient restClient = new ThuliumRestClient("api_user", "api_pass", true); ThuliumRestClient.ThuliumRestResponse response = restClient.get("http://localhost/api/queues/2/waiting_list"); System.out.println(response); } } CURL curl -u api_user:api_pass -k -X GET "http://localhost/api/queues/2/waiting_list" Dokumentacja / Kolejki GET queues/:id/topics Ostatnia aktualizacja: 2014-10-27 10:12:18 Zwraca tematy rozmów dostępnych dla danej kolejki. Tematy rozmów są pogrupowane (tak jak przy wyborze grup tematów dla danej kolejki). W ramach grupy tematy są wyświetlane jako lista par id+nazwa. Zwracane są jedynie aktywne grupy tematów a w ich ramach jedynie aktywne tematy. Jeżeli grupa tematów jest pusta także się wyświetla. Resource URL http://localhost/api/queues/:id/topics Parametry id Identyfikator kolejki. Przykładowa wartość: 2 Przykładowy request GET http://localhost/api/queues/2/topics Przykładowy response { { groupName: "Grupa jeden", topics: [ { "id": 1, "name": "jedyny" } ] }, { groupName: "Grupa pusta", topics: [] }, { groupName: "Grupa wiele", topics: [ { "id": 2, "name": "pierwszy" }, { "id": 3, "name": "drugi" }, { "id": 4, "name": "trzeci" } ] } } Przykładowe wywołanie: Informacje Autentykacja Wymagana Format odpowiedzi json Metoda HTTP GET Przykładowe wywołanie: PHP <?php $request = curl_init('http://localhost/api/queues/2/topics'); curl_setopt($request, CURLOPT_HTTPHEADER, array('Content-Type: application/json')); curl_setopt($request, CURLOPT_USERPWD, "api_user:api_pass"); curl_setopt($request, CURLOPT_TIMEOUT, 30); curl_setopt($request, CURLOPT_RETURNTRANSFER, true); $response = curl_exec($request); print_r(json_decode($response)); curl_close($request); JAVA ThuliumRestClient.java (Wymaga biblioteki httpclient w wersji 4.3.5, httpcore w wersji 4.3.2, commons-codec w wersji 1.9, commons-logging w wersji 1.2) public class Example { public static void main(String[] args) throws Exception { ThuliumRestClient restClient = new ThuliumRestClient("api_user", "api_pass", true); ThuliumRestClient.ThuliumRestResponse response = restClient.get("http://localhost/api/queues/2/topics"); System.out.println(response); } } CURL curl -u api_user:api_pass -k -X GET "http://localhost/api/queues/2/topics" Połączenia Dokumentacja / Połączenia POST connections/topic Ostatnia aktualizacja: 2014-10-30 16:20:53 Informacje Dodaje temat połączenia. Resource URL Autentykacja Wymagana http://localhost/api/connections/topic Format odpowiedzi json Parametry Metoda HTTP POST uniqueid Unikalne ID połączenia. Przykładowa wartość: xxxxx topic_id ID wybranego tematu tematu rozmowy. Zarówno temat jak i grupa do której należy muszą być aktywne. Można je zdobyć odpytując queue/:id/topics. Przykładowa wartość: 11 comment opcjonalny Komentarz do połączenia. Przykładowa wartość: nic ciekawego custom_fields opcjonalny Lista parametrów używanych do zapisania wartości pól dodatkowych. Lista obiektów o atrybutach 'field_id', 'value'. Oba atrybuty są wymagane jeżeli taki obiekt wystąpi. Przykładowa wartość: [ { "field_id": 1, "value": "pewna wartość" }, { "field_id": 2, "value": "wartość druga" } ] Przykładowy request POST http://localhost/api/connections/topics Dane {"uniqueid":"xxxxx","topic_id":1,"comment":"nic ciekawego","custom_fields": [{"field_id":1,"value":"pewna wartosc"},{"field_id":2,"value":"wartosc druga"}]} Przykładowy response <!-- pusty --> Przykładowe wywołanie: Przykładowe wywołanie: PHP <?php $data = '{"uniqueid":"xxxxx","topic_id":1,"comment":"nic ciekawego","custom_fields":[{"field_id":1,"value":"pewna war tosc"},{"field_id":2,"value":"wartosc druga"}]}'; $request = curl_init('http://localhost/api/connections/topics'); curl_setopt($request, CURLOPT_HTTPHEADER, array( 'Content-Type: application/json', 'Content-Length: ' . mb_strlen($data) )); curl_setopt($request, CURLOPT_USERPWD, 'api_user:api_pass'); curl_setopt($request, CURLOPT_TIMEOUT, 30); curl_setopt($request, CURLOPT_RETURNTRANSFER, true); curl_setopt($request, CURLOPT_CUSTOMREQUEST, 'POST'); curl_setopt($request, CURLOPT_POSTFIELDS, $data); $response = curl_exec($request); print_r(json_decode($response)); curl_close($request); JAVA ThuliumRestClient.java (Wymaga biblioteki httpclient w wersji 4.3.5, httpcore w wersji 4.3.2, commons-codec w wersji 1.9, commons-logging w wersji 1.2) public class Example { public static void main(String[] args) throws Exception { ThuliumRestClient restClient = new ThuliumRestClient("api_user", "api_pass", true); ThuliumRestClient.ThuliumRestResponse response = restClient.post("http://localhost/api/connections/topics", " {\"uniqueid\":\"xxxxx\",\"topic_id\":1,\"comment\":\"nic ciekawego\",\"custom_fields\":[{\"field_id\":1,\"value\":\"pewna wartosc\"},{\"field_id\":2,\"value\":\"wartosc druga\"}]}"); System.out.println(response); } } CURL curl -u api_user:api_pass -k -X POST -H "Content-type: application/json" -d '{"uniqueid":"xxxxx","topic_id":1,"comme nt":"nic ciekawego","custom_fields":[{"field_id":1,"value":"pewna wartosc"},{"field_id":2,"value":"wartosc druga"}]}' "htt p://localhost/api/connections/topics" Agenci Dokumentacja / Agenci GET agents Ostatnia aktualizacja: 2014-05-12 08:16:41 Zwraca listę agentów. Informacje Resource URL Autentykacja Wymagana http://localhost/api/agents Format odpowiedzi json Przykładowy request Metoda HTTP GET GET http://localhost/api/agents Przykładowy response [ { "agent_id": 1, "login": "", "name": "Automat", "surname": "Automat", "supervisor": "", "active": "", "number": "", "outbound_mode": "manual" }, { "agent_id": 2, "login": "janko", "name": "Jan", "surname": "Kowalski", "supervisor": true, "active": true, "number": 559933, "outbound_mode": "automatic" } ] Przykładowe wywołanie: PHP <?php $request = curl_init('http://localhost/api/agents'); curl_setopt($request, CURLOPT_HTTPHEADER, array('Content-Type: application/json')); curl_setopt($request, CURLOPT_USERPWD, "api_user:api_pass"); curl_setopt($request, CURLOPT_TIMEOUT, 30); curl_setopt($request, CURLOPT_RETURNTRANSFER, true); $response = curl_exec($request); print_r(json_decode($response)); curl_close($request); JAVA ThuliumRestClient.java (Wymaga biblioteki httpclient w wersji 4.3.5, httpcore w wersji 4.3.2, commons-codec w wersji 1.9, commons-logging w wersji 1.2) public class Example { public static void main(String[] args) throws Exception { ThuliumRestClient restClient = new ThuliumRestClient("api_user", "api_pass", true); ThuliumRestClient.ThuliumRestResponse response = restClient.get("http://localhost/api/agents"); System.out.println(response); } } CURL curl -u api_user:api_pass -k -X GET "http://localhost/api/agents" Dokumentacja / Agenci POST agents Ostatnia aktualizacja: 2014-12-01 15:54:51 Informacje Dodanie agenta. Resource URL Autentykacja Wymagana http://localhost/api/agents Format odpowiedzi json Parametry Metoda HTTP POST name Imię agenta. Przykładowa wartość: Jan surname Nazwisko agenta. Przykładowa wartość: Kowalski login Login agenta w systemie. Przykładowa wartość: jkowalski password Hasło do autoryzacji podczas logowania. Przykładowa wartość: somepass123!QAZ number Numer agenta. Przykładowa wartość: 5634 email opcjonalny Adres e-mail agenta. Przykładowa wartość: [email protected] change_password opcjonalny Wymuszenie zmiany hasła podczas pierwszego logowania. Domyślna wartość: false Przykładowa wartość: true|false callerid opcjonalny Identyfikator dzwoniącego. Domyślna wartość: piersza litera imienia i nazwisko (J.Kowalski). Przykładowa wartość: [email protected] language opcjonalny Język panelu. Domyślna wartość: pl Przykładowa wartość: pl|en supervisor opcjonalny Tworzony agent jest supervisor'em. Domyślna wartość: false. Przykładowa wartość: true|false active opcjonalny Ustawienie czy konto jest aktywne. Domyślna wartość: true Przykładowa wartość: true|false outbound_mode opcjonalny Tryb rozmów wychodzących. Domyślna wartość: manual Przykładowa wartość: manual|blending|auto Przykładowy request POST http://localhost/api/agents Dane {"name":"Jan","surname":"Kowalski","login":"jkowalski","email":"[email protected]","password":"pass","number":"345"} Przykładowy response Przykładowy response { "agent_id": "11" } Przykładowe wywołanie: PHP <?php $data = '{"name":"Jan","surname":"Kowalski","login":"jkowalski","email":"[email protected]","password":"pass","number":"3 45"}'; $request = curl_init('http://localhost/api/agents'); curl_setopt($request, CURLOPT_HTTPHEADER, array( 'Content-Type: application/json', 'Content-Length: ' . mb_strlen($data) )); curl_setopt($request, CURLOPT_USERPWD, 'api_user:api_pass'); curl_setopt($request, CURLOPT_TIMEOUT, 30); curl_setopt($request, CURLOPT_RETURNTRANSFER, true); curl_setopt($request, CURLOPT_CUSTOMREQUEST, 'POST'); curl_setopt($request, CURLOPT_POSTFIELDS, $data); $response = curl_exec($request); print_r(json_decode($response)); curl_close($request); JAVA ThuliumRestClient.java (Wymaga biblioteki httpclient w wersji 4.3.5, httpcore w wersji 4.3.2, commons-codec w wersji 1.9, commons-logging w wersji 1.2) public class Example { public static void main(String[] args) throws Exception { ThuliumRestClient restClient = new ThuliumRestClient("api_user", "api_pass", true); ThuliumRestClient.ThuliumRestResponse response = restClient.post("http://localhost/api/agents", "{\"name\":\" Jan\",\"surname\":\"Kowalski\",\"login\":\"jkowalski\",\"email\":\"[email protected]\",\"password\":\"pass\",\"number\":\"345\"} "); System.out.println(response); } } CURL curl -u api_user:api_pass -k -X POST -H "Content-type: application/json" -d '{"name":"Jan","surname":"Kowalski","log in":"jkowalski","email":"[email protected]","password":"pass","number":"345"}' "http://localhost/api/agents" Dokumentacja / Agenci GET agents/:login Ostatnia aktualizacja: 2014-05-12 08:16:41 Informacje Zwraca informacje o agencie. Resource URL Autentykacja Wymagana http://localhost/api/agents/:login Format odpowiedzi json Parametry Metoda HTTP GET login Login agenta w systemie. Przykładowa wartość: jkowalski Przykładowy request GET http://localhost/api/agents/jkowalski Przykładowy response { "agent_id": 1, "login": "jkowalski", "name": "Jan", "surname": "Kowalski", "supervisor": false, "active": true, "number": 559933, "outbound_mode": "manual" } Przykładowe wywołanie: PHP <?php $request = curl_init('http://localhost/api/agents/jkowalski'); curl_setopt($request, CURLOPT_HTTPHEADER, array('Content-Type: application/json')); curl_setopt($request, CURLOPT_USERPWD, "api_user:api_pass"); curl_setopt($request, CURLOPT_TIMEOUT, 30); curl_setopt($request, CURLOPT_RETURNTRANSFER, true); $response = curl_exec($request); print_r(json_decode($response)); curl_close($request); JAVA ThuliumRestClient.java (Wymaga biblioteki httpclient w wersji 4.3.5, httpcore w wersji 4.3.2, commons-codec w wersji 1.9, commons-logging w wersji 1.2) public class Example { public static void main(String[] args) throws Exception { ThuliumRestClient restClient = new ThuliumRestClient("api_user", "api_pass", true); ThuliumRestClient.ThuliumRestResponse response = restClient.get("http://localhost/api/agents/jkowalski"); System.out.println(response); } } CURL curl -u api_user:api_pass -k -X GET "http://localhost/api/agents/jkowalski" Dokumentacja / Agenci POST agents/:login/call Ostatnia aktualizacja: 2014-05-09 13:19:41 Zestawia połączenie dla agenta na podany numer. Aby wykonywać połączenia należy stworzyć kampanie o ID 99999. Do stworzonej kampanii należy przypisać agenta, który ma wykonywać połączenia. Resource URL http://localhost/api/agents/:login/call Parametry login Login agenta w systemie. Przykładowa wartość: jkowalski phone_number Numer telefonu na który zostanie zestawione połączenie. Przykładowa wartość: 111222333 Przykładowy request POST http://localhost/api/agents/jkowalski/call Dane {"phone_number":"111222333"} Przykładowy response { "connection_id": "31241234" } Przykładowe wywołanie: Informacje Autentykacja Wymagana Format odpowiedzi json Metoda HTTP POST Przykładowe wywołanie: PHP <?php $data = '{"phone_number":"111222333"}'; $request = curl_init('http://localhost/api/agents/jkowalski/call'); curl_setopt($request, CURLOPT_HTTPHEADER, array( 'Content-Type: application/json', 'Content-Length: ' . mb_strlen($data) )); curl_setopt($request, CURLOPT_USERPWD, 'api_user:api_pass'); curl_setopt($request, CURLOPT_TIMEOUT, 30); curl_setopt($request, CURLOPT_RETURNTRANSFER, true); curl_setopt($request, CURLOPT_CUSTOMREQUEST, 'POST'); curl_setopt($request, CURLOPT_POSTFIELDS, $data); $response = curl_exec($request); print_r(json_decode($response)); curl_close($request); JAVA ThuliumRestClient.java (Wymaga biblioteki httpclient w wersji 4.3.5, httpcore w wersji 4.3.2, commons-codec w wersji 1.9, commons-logging w wersji 1.2) public class Example { public static void main(String[] args) throws Exception { ThuliumRestClient restClient = new ThuliumRestClient("api_user", "api_pass", true); ThuliumRestClient.ThuliumRestResponse response = restClient.post("http://localhost/api/agents/jkowalski/call", "{\"phone_number\":\"111222333\"}"); System.out.println(response); } } CURL curl -u api_user:api_pass -k -X POST -H "Content-type: application/json" -d '{"phone_number":"111222333"}' "http://lo calhost/api/agents/jkowalski/call" Dokumentacja / Agenci GET agents/:login/last_queue_connection Ostatnia aktualizacja: 2014-08-11 09:57:29 Zwraca informacje na temat ostatniej rozmowy agenta w kolejce. Informacje Resource URL Autentykacja Wymagana http://localhost/api/agents/:login/last_queue_connection Format odpowiedzi json Parametry Metoda HTTP GET login Login agenta w systemie. Przykładowa wartość: jkowalski Przykładowy request GET http://localhost/api/agents/jkowalski/last_queue_connection Przykładowy response { "queue": "BOK", "started_at": "2014-08-11 08:14", "ended_at": "2014-08-11 08:16", "phone_number": "444333222", "customer_id": 34114, "customer_label": "smith" } Przykładowe wywołanie: PHP <?php $request = curl_init('http://localhost/api/agents/jkowalski/last_queue_connection'); curl_setopt($request, CURLOPT_HTTPHEADER, array('Content-Type: application/json')); curl_setopt($request, CURLOPT_USERPWD, "api_user:api_pass"); curl_setopt($request, CURLOPT_TIMEOUT, 30); curl_setopt($request, CURLOPT_RETURNTRANSFER, true); $response = curl_exec($request); print_r(json_decode($response)); curl_close($request); JAVA ThuliumRestClient.java (Wymaga biblioteki httpclient w wersji 4.3.5, httpcore w wersji 4.3.2, commons-codec w wersji 1.9, commons-logging w wersji 1.2) public class Example { public static void main(String[] args) throws Exception { ThuliumRestClient restClient = new ThuliumRestClient("api_user", "api_pass", true); ThuliumRestClient.ThuliumRestResponse response = restClient.get("http://localhost/api/agents/jkowalski/last_q ueue_connection"); System.out.println(response); } } CURL curl -u api_user:api_pass -k -X GET "http://localhost/api/agents/jkowalski/last_queue_connection" Dokumentacja / Agenci GET agents/:login/status Ostatnia aktualizacja: 2014-10-24 10:32:28 Informacje Zwraca status agenta. Możliwe statusy: OFF FREE PAUSED INBOUND_CALL OUTBOUND_CALL CALL Resource URL http://localhost/api/agents/:login/status Parametry login Login agenta w systemie. Przykładowa wartość: jkowalski Przykładowy request GET http://localhost/api/agents/jkowalski/status Przykładowy response { "status":"PAUSED", "pause_id":1, "last_change": "2014-10-24 10:30:44" } Przykładowe wywołanie: PHP <?php $request = curl_init('http://localhost/api/agents/jkowalski/status'); curl_setopt($request, CURLOPT_HTTPHEADER, array('Content-Type: application/json')); curl_setopt($request, CURLOPT_USERPWD, "api_user:api_pass"); curl_setopt($request, CURLOPT_TIMEOUT, 30); curl_setopt($request, CURLOPT_RETURNTRANSFER, true); $response = curl_exec($request); print_r(json_decode($response)); curl_close($request); JAVA ThuliumRestClient.java (Wymaga biblioteki httpclient w wersji 4.3.5, httpcore w wersji 4.3.2, commons-codec w wersji 1.9, commons-logging w wersji 1.2) public class Example { public static void main(String[] args) throws Exception { ThuliumRestClient restClient = new ThuliumRestClient("api_user", "api_pass", true); ThuliumRestClient.ThuliumRestResponse response = restClient.get("http://localhost/api/agents/jkowalski/status "); System.out.println(response); } } CURL curl -u api_user:api_pass -k -X GET "http://localhost/api/agents/jkowalski/status" Autentykacja Wymagana Format odpowiedzi json Metoda HTTP GET Dokumentacja / Agenci POST agents/:login/pause Ostatnia aktualizacja: 2014-10-24 11:38:58 Informacje Pauzuje agenta. Resource URL Autentykacja Wymagana http://localhost/api/agents/:login/pause Format odpowiedzi json Parametry Metoda HTTP POST login Login agenta w systemie. Przykładowa wartość: jkowalski pause_id Identyfikator pauzy. Przykładowa wartość: 1 Przykładowy request POST http://localhost/api/agents/jkowalski/pause Dane {"pause_id":"1"} Przykładowy response <!-- pusty --> Przykładowe wywołanie: PHP <?php $data = '{"pause_id":"1"}'; $request = curl_init('http://localhost/api/agents/jkowalski/pause'); curl_setopt($request, CURLOPT_HTTPHEADER, array( 'Content-Type: application/json', 'Content-Length: ' . mb_strlen($data) )); curl_setopt($request, CURLOPT_USERPWD, 'api_user:api_pass'); curl_setopt($request, CURLOPT_TIMEOUT, 30); curl_setopt($request, CURLOPT_RETURNTRANSFER, true); curl_setopt($request, CURLOPT_CUSTOMREQUEST, 'POST'); curl_setopt($request, CURLOPT_POSTFIELDS, $data); $response = curl_exec($request); print_r(json_decode($response)); curl_close($request); JAVA ThuliumRestClient.java (Wymaga biblioteki httpclient w wersji 4.3.5, httpcore w wersji 4.3.2, commons-codec w wersji 1.9, commons-logging w wersji 1.2) public class Example { public static void main(String[] args) throws Exception { ThuliumRestClient restClient = new ThuliumRestClient("api_user", "api_pass", true); ThuliumRestClient.ThuliumRestResponse response = restClient.post("http://localhost/api/agents/jkowalski/paus e", "{\"pause_id\":\"1\"}"); System.out.println(response); } } CURL curl -u api_user:api_pass -k -X POST -H "Content-type: application/json" -d '{"pause_id":"1"}' "http://localhost/api/age nts/jkowalski/pause" Dokumentacja / Agenci POST agents/:login/free Ostatnia aktualizacja: 2014-10-15 10:34:21 Informacje Odpauzowuje agenta. Resource URL Autentykacja Wymagana http://localhost/api/agents/:login/free Format odpowiedzi json Parametry Metoda HTTP POST login Login agenta w systemie. Przykładowa wartość: jkowalski Przykładowy request POST http://localhost/api/agents/jkowalski/free Przykładowy response <!-- pusty --> Przykładowe wywołanie: PHP <?php $data = ''; $request = curl_init('http://localhost/api/agents/jkowalski/free'); curl_setopt($request, CURLOPT_HTTPHEADER, array( 'Content-Type: application/json', 'Content-Length: ' . mb_strlen($data) )); curl_setopt($request, CURLOPT_USERPWD, 'api_user:api_pass'); curl_setopt($request, CURLOPT_TIMEOUT, 30); curl_setopt($request, CURLOPT_RETURNTRANSFER, true); curl_setopt($request, CURLOPT_CUSTOMREQUEST, 'POST'); curl_setopt($request, CURLOPT_POSTFIELDS, $data); $response = curl_exec($request); print_r(json_decode($response)); curl_close($request); JAVA ThuliumRestClient.java (Wymaga biblioteki httpclient w wersji 4.3.5, httpcore w wersji 4.3.2, commons-codec w wersji 1.9, commons-logging w wersji 1.2) public class Example { public static void main(String[] args) throws Exception { ThuliumRestClient restClient = new ThuliumRestClient("api_user", "api_pass", true); ThuliumRestClient.ThuliumRestResponse response = restClient.post("http://localhost/api/agents/jkowalski/free" , ""); System.out.println(response); } } CURL curl -u api_user:api_pass -k -X POST -H "Content-type: application/json" -d '' "http://localhost/api/agents/jkowalski/fre e" Dokumentacja / Agenci POST agents/:login/logout Ostatnia aktualizacja: 2014-10-15 10:34:21 Informacje Wylogowuje agenta. Resource URL Autentykacja Wymagana http://localhost/api/agents/:login/logout Format odpowiedzi json Parametry Metoda HTTP POST login Login agenta w systemie. Przykładowa wartość: jkowalski Przykładowy request POST http://localhost/api/agents/jkowalski/logout Przykładowy response <!-- pusty --> Przykładowe wywołanie: PHP <?php $data = ''; $request = curl_init('http://localhost/api/agents/jkowalski/logout'); curl_setopt($request, CURLOPT_HTTPHEADER, array( 'Content-Type: application/json', 'Content-Length: ' . mb_strlen($data) )); curl_setopt($request, CURLOPT_USERPWD, 'api_user:api_pass'); curl_setopt($request, CURLOPT_TIMEOUT, 30); curl_setopt($request, CURLOPT_RETURNTRANSFER, true); curl_setopt($request, CURLOPT_CUSTOMREQUEST, 'POST'); curl_setopt($request, CURLOPT_POSTFIELDS, $data); $response = curl_exec($request); print_r(json_decode($response)); curl_close($request); JAVA ThuliumRestClient.java (Wymaga biblioteki httpclient w wersji 4.3.5, httpcore w wersji 4.3.2, commons-codec w wersji 1.9, commons-logging w wersji 1.2) public class Example { public static void main(String[] args) throws Exception { ThuliumRestClient restClient = new ThuliumRestClient("api_user", "api_pass", true); ThuliumRestClient.ThuliumRestResponse response = restClient.post("http://localhost/api/agents/jkowalski/logo ut", ""); System.out.println(response); } } CURL curl -u api_user:api_pass -k -X POST -H "Content-type: application/json" -d '' "http://localhost/api/agents/jkowalski/log out" Dokumentacja / Agenci POST agents/:login/hangup Ostatnia aktualizacja: 2014-10-28 09:03:35 Informacje Rozłącza połączenia agenta. Resource URL Autentykacja Wymagana http://localhost/api/agents/:login/hangup Format odpowiedzi json Parametry Metoda HTTP POST login Login agenta w systemie. Przykładowa wartość: jkowalski Przykładowy request POST http://localhost/api/agents/jkowalski/hangup Przykładowy response <!-- pusty --> Przykładowe wywołanie: PHP <?php $data = ''; $request = curl_init('http://localhost/api/agents/jkowalski/hangup'); curl_setopt($request, CURLOPT_HTTPHEADER, array( 'Content-Type: application/json', 'Content-Length: ' . mb_strlen($data) )); curl_setopt($request, CURLOPT_USERPWD, 'api_user:api_pass'); curl_setopt($request, CURLOPT_TIMEOUT, 30); curl_setopt($request, CURLOPT_RETURNTRANSFER, true); curl_setopt($request, CURLOPT_CUSTOMREQUEST, 'POST'); curl_setopt($request, CURLOPT_POSTFIELDS, $data); $response = curl_exec($request); print_r(json_decode($response)); curl_close($request); JAVA ThuliumRestClient.java (Wymaga biblioteki httpclient w wersji 4.3.5, httpcore w wersji 4.3.2, commons-codec w wersji 1.9, commons-logging w wersji 1.2) public class Example { public static void main(String[] args) throws Exception { ThuliumRestClient restClient = new ThuliumRestClient("api_user", "api_pass", true); ThuliumRestClient.ThuliumRestResponse response = restClient.post("http://localhost/api/agents/jkowalski/hang up", ""); System.out.println(response); } } CURL curl -u api_user:api_pass -k -X POST -H "Content-type: application/json" -d '' "http://localhost/api/agents/jkowalski/ha ngup" Dokumentacja / Agenci POST agents/:login/screenshot Ostatnia aktualizacja: 2014-11-05 15:56:30 Informacje Wykonuje zrzut ekranu agenta. Resource URL Autentykacja Wymagana http://localhost/api/agents/:login/screenshot Format odpowiedzi json Parametry Metoda HTTP POST login Login agenta w systemie. Przykładowa wartość: jkowalski Przykładowy request POST http://localhost/api/agents/jkowalski/screenshot Przykładowy response <!-- pusty --> Przykładowe wywołanie: PHP <?php $data = ''; $request = curl_init('http://localhost/api/agents/jkowalski/screenshot'); curl_setopt($request, CURLOPT_HTTPHEADER, array( 'Content-Type: application/json', 'Content-Length: ' . mb_strlen($data) )); curl_setopt($request, CURLOPT_USERPWD, 'api_user:api_pass'); curl_setopt($request, CURLOPT_TIMEOUT, 30); curl_setopt($request, CURLOPT_RETURNTRANSFER, true); curl_setopt($request, CURLOPT_CUSTOMREQUEST, 'POST'); curl_setopt($request, CURLOPT_POSTFIELDS, $data); $response = curl_exec($request); print_r(json_decode($response)); curl_close($request); JAVA ThuliumRestClient.java (Wymaga biblioteki httpclient w wersji 4.3.5, httpcore w wersji 4.3.2, commons-codec w wersji 1.9, commons-logging w wersji 1.2) public class Example { public static void main(String[] args) throws Exception { ThuliumRestClient restClient = new ThuliumRestClient("api_user", "api_pass", true); ThuliumRestClient.ThuliumRestResponse response = restClient.post("http://localhost/api/agents/jkowalski/scre enshot", ""); System.out.println(response); } } CURL curl -u api_user:api_pass -k -X POST -H "Content-type: application/json" -d '' "http://localhost/api/agents/jkowalski/sc reenshot" Zgłoszenia Dokumentacja / Zgłoszenia GET tickets Ostatnia aktualizacja: 2014-10-23 08:56:26 Informacje Zwraca listę zgłoszeń Parametr count zwraca całkowitą ilość znalezionych zgłoszeń (bez uwzględnienia limitu). Autentykacja Wymagana Resource URL Format odpowiedzi json Metoda HTTP GET http://localhost/api/tickets Parametry limit opcjonalny Liczba rekordów, które mają być zwrócone. Domyślnie: 100. Maksymalna wartość: 100. Przykładowa wartość: 100 offset opcjonalny Od którego rekordu należy zwrócić rezultat (używane, gdy rekordów jest więcej, niż limit). Domyślna wartość: 0. Przykładowa wartość: 10 date_from opcjonalny Minimalna data modyfikacji zgłoszenia. Przykładowa wartość: 2014-07-04 date_to opcjonalny Maksymalna data modyfikacji zgłoszenia. Przykładowa wartość: 2014-07-14 12:34 company_id opcjonalny Identyfikator firmy, do której przypisane są zgłoszenia. Jeśli firma nie istnieje zgłoszenie nie zostanie znalezione. Przykładowa wartość: 21 Przykładowy request GET http://localhost/api/tickets?limit=1&offset=0&date_from=2014-07-04&date_to=2014-0705&company_id=21 Przykładowy response { "count": 3, "result": [ { "ticket_id": "23962", "from": "[email protected]", "to": "[email protected]", "subject": "subject", "full_status_name": "some status - some sub status", "created_at": "2013-08-02 09:47", "updated_at": "2014-07-04 16:15", "messages": [ { "type": "MAIL", "body": "hello", "comment": "", "created_at": "2013-08-02 09:47" }, { "type": "MAIL", "body": "hello2", "comment": "", "created_at": "2014-07-04 16:15" } ] }] } Przykładowe wywołanie: Przykładowe wywołanie: PHP <?php $request = curl_init('http://localhost/api/tickets?limit=1&offset=0&date_from=2014-07-04&date_to=2014-07-05&comp any_id=21'); curl_setopt($request, CURLOPT_HTTPHEADER, array('Content-Type: application/json')); curl_setopt($request, CURLOPT_USERPWD, "api_user:api_pass"); curl_setopt($request, CURLOPT_TIMEOUT, 30); curl_setopt($request, CURLOPT_RETURNTRANSFER, true); $response = curl_exec($request); print_r(json_decode($response)); curl_close($request); JAVA ThuliumRestClient.java (Wymaga biblioteki httpclient w wersji 4.3.5, httpcore w wersji 4.3.2, commons-codec w wersji 1.9, commons-logging w wersji 1.2) public class Example { public static void main(String[] args) throws Exception { ThuliumRestClient restClient = new ThuliumRestClient("api_user", "api_pass", true); ThuliumRestClient.ThuliumRestResponse response = restClient.get("http://localhost/api/tickets?limit=1&offset= 0&date_from=2014-07-04&date_to=2014-07-05&company_id=21"); System.out.println(response); } } CURL curl -u api_user:api_pass -k -X GET "http://localhost/api/tickets?limit=1&offset=0&date_from=2014-07-04&date_to=2 014-07-05&company_id=21" Dokumentacja / Zgłoszenia POST tickets Ostatnia aktualizacja: 2014-07-10 10:59:17 Informacje Dodanie zgłoszenia. Jeżeli istnieje zgłoszenie o podanym temacie, to zamiast stworzenia nowego, do istniejącego zostanie dodana odpowiedź. Resource URL http://localhost/api/tickets Parametry to Adres e-mail skrzynki mailowej skonfigurowanej w systemie. from Adres e-mail autora zgłoszenia. subject Temat zgłoszenia. body Treść zgłoszenia. cc opcjonalny Tablica adresów kopii. attachments opcjonalny Tablica tokenów zwróconych przez zasób pliki. Przykładowy request POST http://localhost/api/tickets Dane {"to":"[email protected]","subject":"ticket subject","from":"[email protected]","body":"email content","attachments":["61527075253ba62a76ca5c"],"cc": ["[email protected]","[email protected]"]} Przykładowy response { ticket_id: 1232 } Przykładowe wywołanie: Autentykacja Wymagana Format odpowiedzi json Metoda HTTP POST Przykładowe wywołanie: PHP <?php $data = '{"to":"[email protected]","subject":"ticket subject","from":"[email protected]","body":"email content","attach ments":["61527075253ba62a76ca5c"],"cc":["[email protected]","[email protected]"]}'; $request = curl_init('http://localhost/api/tickets'); curl_setopt($request, CURLOPT_HTTPHEADER, array( 'Content-Type: application/json', 'Content-Length: ' . mb_strlen($data) )); curl_setopt($request, CURLOPT_USERPWD, 'api_user:api_pass'); curl_setopt($request, CURLOPT_TIMEOUT, 30); curl_setopt($request, CURLOPT_RETURNTRANSFER, true); curl_setopt($request, CURLOPT_CUSTOMREQUEST, 'POST'); curl_setopt($request, CURLOPT_POSTFIELDS, $data); $response = curl_exec($request); print_r(json_decode($response)); curl_close($request); JAVA ThuliumRestClient.java (Wymaga biblioteki httpclient w wersji 4.3.5, httpcore w wersji 4.3.2, commons-codec w wersji 1.9, commons-logging w wersji 1.2) public class Example { public static void main(String[] args) throws Exception { ThuliumRestClient restClient = new ThuliumRestClient("api_user", "api_pass", true); ThuliumRestClient.ThuliumRestResponse response = restClient.post("http://localhost/api/tickets", "{\"to\":\"mail [email protected]\",\"subject\":\"ticket subject\",\"from\":\"[email protected]\",\"body\":\"email content\",\"attachments\":[\" 61527075253ba62a76ca5c\"],\"cc\":[\"[email protected]\",\"[email protected]\"]}"); System.out.println(response); } } CURL curl -u api_user:api_pass -k -X POST -H "Content-type: application/json" -d '{"to":"[email protected]","subject":"ticket subject","from":"[email protected]","body":"email content","attachments":["61527075253ba62a76ca5c"],"cc":["cc_ma [email protected]","[email protected]"]}' "http://localhost/api/tickets" Dokumentacja / Zgłoszenia GET tickets/:id Ostatnia aktualizacja: 2014-10-23 08:56:26 Informacje Zwraca informacje o zgłoszeniu. Resource URL Autentykacja Wymagana http://localhost/api/tickets/:id Format odpowiedzi json Parametry Metoda HTTP GET id Identyfikator zgłoszenia. Przykładowa wartość: 1234 company_id opcjonalny Identyfikator firmy, do której przypisane są zgłoszenia. Jeśli firma nie istnieje zgłoszenie nie zostanie znalezione. Przykładowa wartość: 21 Przykładowy request GET http://localhost/api/tickets/1234?company_id=21 Przykładowy response { "ticket_id": 1234, "from": "[email protected]", "to": "[email protected]", "subject": "Example ticket subject", "full_status_name": "some status - some sub status", "created_at": "2014-07-08 08:05", "updated_at": "2014-07-11 08:05", "messages": [ { "type": "COMMENT", "body": "", "comment": "Example comment", "created_at": "2014-07-08 08:05" }, { "type": "COMMENT", "body": "", "comment": "Changed status from [Oczekuje na klienta] to [Nowe]", "created_at": "2014-07-02 13:56" }, { "type": "COMMENT", "body": "", "comment": "Example comment", "created_at": "2014-07-02 13:54" }, { "type": "REPLY", "body": "Reply message send to client", "comment": "Changed status from [Nowe] to [Oczekuje na klienta]", "created_at": "2014-07-02 13:44" }, { "type": "MAIL", "body": "Email content", "comment": "", "created_at": "2014-07-02 12:28" } ] } Przykładowe wywołanie: Przykładowe wywołanie: PHP <?php $request = curl_init('http://localhost/api/tickets/1234?company_id=21'); curl_setopt($request, CURLOPT_HTTPHEADER, array('Content-Type: application/json')); curl_setopt($request, CURLOPT_USERPWD, "api_user:api_pass"); curl_setopt($request, CURLOPT_TIMEOUT, 30); curl_setopt($request, CURLOPT_RETURNTRANSFER, true); $response = curl_exec($request); print_r(json_decode($response)); curl_close($request); JAVA ThuliumRestClient.java (Wymaga biblioteki httpclient w wersji 4.3.5, httpcore w wersji 4.3.2, commons-codec w wersji 1.9, commons-logging w wersji 1.2) public class Example { public static void main(String[] args) throws Exception { ThuliumRestClient restClient = new ThuliumRestClient("api_user", "api_pass", true); ThuliumRestClient.ThuliumRestResponse response = restClient.get("http://localhost/api/tickets/1234?company _id=21"); System.out.println(response); } } CURL curl -u api_user:api_pass -k -X GET "http://localhost/api/tickets/1234?company_id=21" Dokumentacja / Zgłoszenia GET tickets/today_stats Ostatnia aktualizacja: 2014-07-08 11:49:28 Zwraca statystyki zgłoszeń dla obecnego dnia. Informacje Resource URL Autentykacja Wymagana http://localhost/api/tickets/today_stats Format odpowiedzi json Przykładowy request Metoda HTTP GET GET http://localhost/api/tickets/today_stats Przykładowy response { "new_tickets": 23, "new_mails": 12, "new_replies": 11, "new_comments": 32 } Przykładowe wywołanie: PHP <?php $request = curl_init('http://localhost/api/tickets/today_stats'); curl_setopt($request, CURLOPT_HTTPHEADER, array('Content-Type: application/json')); curl_setopt($request, CURLOPT_USERPWD, "api_user:api_pass"); curl_setopt($request, CURLOPT_TIMEOUT, 30); curl_setopt($request, CURLOPT_RETURNTRANSFER, true); $response = curl_exec($request); print_r(json_decode($response)); curl_close($request); JAVA ThuliumRestClient.java (Wymaga biblioteki httpclient w wersji 4.3.5, httpcore w wersji 4.3.2, commons-codec w wersji 1.9, commons-logging w wersji 1.2) public class Example { public static void main(String[] args) throws Exception { ThuliumRestClient restClient = new ThuliumRestClient("api_user", "api_pass", true); ThuliumRestClient.ThuliumRestResponse response = restClient.get("http://localhost/api/tickets/today_stats"); System.out.println(response); } } CURL curl -u api_user:api_pass -k -X GET "http://localhost/api/tickets/today_stats" Pliki Dokumentacja / Pliki POST uploads Ostatnia aktualizacja: 2014-08-27 13:08:39 Tworzy na serwerze tymczasowy plik dostępny przez 15 minut. Zwrócony token jest używany np. przy dodawaniu załączników do zgłoszenia. Resource URL http://localhost/api/uploads Parametry filename Nazwa pliku. Przykładowa wartość: file.txt Przykładowy request POST http://localhost/api/uploads?filename=file.txt Dane file content Przykładowy response {"filename":"file.txt","token":"180174033853be57b76ed6a","size":12} Przykładowe wywołanie: PHP <?php $data = 'file content'; $request = curl_init('http://localhost/api/uploads?filename=file.txt'); curl_setopt($request, CURLOPT_HTTPHEADER, array( 'Content-Type: application/json', 'Content-Length: ' . mb_strlen($data) )); curl_setopt($request, CURLOPT_USERPWD, 'api_user:api_pass'); curl_setopt($request, CURLOPT_TIMEOUT, 30); curl_setopt($request, CURLOPT_RETURNTRANSFER, true); curl_setopt($request, CURLOPT_CUSTOMREQUEST, 'POST'); curl_setopt($request, CURLOPT_POSTFIELDS, $data); $response = curl_exec($request); print_r(json_decode($response)); curl_close($request); JAVA ThuliumRestClient.java (Wymaga biblioteki httpclient w wersji 4.3.5, httpcore w wersji 4.3.2, commons-codec w wersji 1.9, commons-logging w wersji 1.2) public class Example { public static void main(String[] args) throws Exception { ThuliumRestClient restClient = new ThuliumRestClient("api_user", "api_pass", true); ThuliumRestClient.ThuliumRestResponse response = restClient.postRawData("http://localhost/api/uploads?filen ame=file.txt", new ByteArrayInputStream("content".getBytes(StandardCharsets.UTF_8))); System.out.println(response); } } CURL curl -u api_user:api_pass -k -X POST -H "Content-type: application/octet-stream" --data-binary @file.png "http://local host/api/uploads?filename=file.txt" Informacje Autentykacja Wymagana Format odpowiedzi json Metoda HTTP POST Nagrania Dokumentacja / Nagrania GET recordings Ostatnia aktualizacja: 2014-09-24 12:00:29 Informacje Zwraca listę nagrań Opis pól: count - zwraca całkowitą ilość znalezionych zgłoszeń (bez uwzględnienia limitu), disposition - zawiera rezultat rozmowy. Możliwe wartości to: BUSY, FAILED, ANSWERED, NO ANSWER, duration - zawiera czas rozmowy, billsec - zawiera czas bilingowy, src - numer źródłowy, dst - numer docelowy, operator - operator użyty przy połączeniu, filename - nazwa pliku z nagraniem (do wykorzystania w recordings/stream i recordings/download), user - imię i nazwisko użytkownika wykonującego połączenie. Resource URL http://localhost/api/recordings Parametry limit opcjonalny Liczba rekordów, które mają być zwrócone. Domyślnie: 100. Maksymalna wartość: 100. Przykładowa wartość: 100 offset opcjonalny Od którego rekordu należy zwrócić rezultat (używane, gdy rekordów jest więcej, niż limit). Domyślna wartość: 0. Przykładowa wartość: 10 date_from opcjonalny Minimalna data rozmowy. Przykładowa wartość: 2014-07-04 date_to opcjonalny Maksymalna data rozmowy. Przykładowa wartość: 2014-07-14 12:34 src opcjonalny Numer źródłowy. Przykładowa wartość: 123321 dst opcjonalny Numer docelowy. Przykładowa wartość: 123321 Przykładowy request GET http://localhost/api/recordings?limit=1&offset=0&date_from=2014-07-04&date_to=2014-07-05 Przykładowy response { "count": 1, "result": [ { "date": "2014-07-07 11:08", "src": "123123", "dst": "1234", "disposition": "ANSWERED", "duration": 129, "billsec": 104, "operator": "siptrunk", "filename": "sprzedaz/2014-07-07/2014-07-07_093545_921063395.234.wav", "user": "Bob Smith" }] } Przykładowe wywołanie: Autentykacja Wymagana Format odpowiedzi json Metoda HTTP GET Przykładowe wywołanie: PHP <?php $request = curl_init('http://localhost/api/recordings?limit=1&offset=0&date_from=2014-07-04&date_to=2014-07-05'); curl_setopt($request, CURLOPT_HTTPHEADER, array('Content-Type: application/json')); curl_setopt($request, CURLOPT_USERPWD, "api_user:api_pass"); curl_setopt($request, CURLOPT_TIMEOUT, 30); curl_setopt($request, CURLOPT_RETURNTRANSFER, true); $response = curl_exec($request); print_r(json_decode($response)); curl_close($request); JAVA ThuliumRestClient.java (Wymaga biblioteki httpclient w wersji 4.3.5, httpcore w wersji 4.3.2, commons-codec w wersji 1.9, commons-logging w wersji 1.2) public class Example { public static void main(String[] args) throws Exception { ThuliumRestClient restClient = new ThuliumRestClient("api_user", "api_pass", true); ThuliumRestClient.ThuliumRestResponse response = restClient.get("http://localhost/api/recordings?limit=1&offs et=0&date_from=2014-07-04&date_to=2014-07-05"); System.out.println(response); } } CURL curl -u api_user:api_pass -k -X GET "http://localhost/api/recordings?limit=1&offset=0&date_from=2014-07-04&date_t o=2014-07-05" Dokumentacja / Nagrania GET recordings/download Ostatnia aktualizacja: 2014-09-24 12:00:29 Informacje Zwraca plik z nagraniem Resource URL Autentykacja Wymagana http://localhost/api/recordings/download Format odpowiedzi json Parametry Metoda HTTP GET filename Nazwa pliku z nagraniem. Przykładowa wartość: sprzedaz/2014-07-07/2014-0707_093545_921063395.234.wav Przykładowy request GET http://localhost/api/recordings/download?filename=sprzedaz/2014-07-07/2014-0707_093545_921063395.234.wav Przykładowy response Dane binarne Przykładowe wywołanie: PHP <?php $request = curl_init('http://localhost/api/recordings/download?filename=sprzedaz/2014-07-07/2014-07-07_093545_921 063395.234.wav'); curl_setopt($request, CURLOPT_HTTPHEADER, array('Content-Type: application/json')); curl_setopt($request, CURLOPT_USERPWD, "api_user:api_pass"); curl_setopt($request, CURLOPT_TIMEOUT, 30); curl_setopt($request, CURLOPT_RETURNTRANSFER, true); $response = curl_exec($request); print_r(json_decode($response)); curl_close($request); JAVA ThuliumRestClient.java (Wymaga biblioteki httpclient w wersji 4.3.5, httpcore w wersji 4.3.2, commons-codec w wersji 1.9, commons-logging w wersji 1.2) public class Example { public static void main(String[] args) throws Exception { ThuliumRestClient restClient = new ThuliumRestClient("api_user", "api_pass", true); ThuliumRestClient.ThuliumRestResponse response = restClient.get("http://localhost/api/recordings/download?fil ename=sprzedaz/2014-07-07/2014-07-07_093545_921063395.234.wav"); System.out.println(response); } } CURL curl -u api_user:api_pass -k -X GET "http://localhost/api/recordings/download?filename=sprzedaz/2014-07-07/2014-0 7-07_093545_921063395.234.wav" Dokumentacja / Nagrania GET recordings/stream Ostatnia aktualizacja: 2014-09-24 12:00:29 Informacje Strumieniuje plik z nagraniem Resource URL Autentykacja Wymagana http://localhost/api/recordings/stream Format odpowiedzi json Parametry Metoda HTTP GET filename Nazwa pliku z nagraniem. Przykładowa wartość: sprzedaz/2014-07-07/2014-0707_093545_921063395.234.wav Przykładowy request GET http://localhost/api/recordings/stream?filename=sprzedaz/2014-07-07/2014-0707_093545_921063395.234.wav Przykładowy response Dane binarne Przykładowe wywołanie: PHP <?php $request = curl_init('http://localhost/api/recordings/stream?filename=sprzedaz/2014-07-07/2014-07-07_093545_92106 3395.234.wav'); curl_setopt($request, CURLOPT_HTTPHEADER, array('Content-Type: application/json')); curl_setopt($request, CURLOPT_USERPWD, "api_user:api_pass"); curl_setopt($request, CURLOPT_TIMEOUT, 30); curl_setopt($request, CURLOPT_RETURNTRANSFER, true); $response = curl_exec($request); print_r(json_decode($response)); curl_close($request); JAVA ThuliumRestClient.java (Wymaga biblioteki httpclient w wersji 4.3.5, httpcore w wersji 4.3.2, commons-codec w wersji 1.9, commons-logging w wersji 1.2) public class Example { public static void main(String[] args) throws Exception { ThuliumRestClient restClient = new ThuliumRestClient("api_user", "api_pass", true); ThuliumRestClient.ThuliumRestResponse response = restClient.get("http://localhost/api/recordings/stream?filen ame=sprzedaz/2014-07-07/2014-07-07_093545_921063395.234.wav"); System.out.println(response); } } CURL curl -u api_user:api_pass -k -X GET "http://localhost/api/recordings/stream?filename=sprzedaz/2014-07-07/2014-07-0 7_093545_921063395.234.wav" System Dokumentacja / System GET system/pauses Ostatnia aktualizacja: 2014-10-23 09:36:42 Informacje Zwraca listę pauz. Resource URL Autentykacja Wymagana http://localhost/api/system/pauses Format odpowiedzi json Przykładowy request Metoda HTTP GET GET http://localhost/api/system/pauses Przykładowy response [ { "id": 2, "name": "przerwa" }, { "id": 0, "name": "wrap-up" } ] Przykładowe wywołanie: PHP <?php $request = curl_init('http://localhost/api/system/pauses'); curl_setopt($request, CURLOPT_HTTPHEADER, array('Content-Type: application/json')); curl_setopt($request, CURLOPT_USERPWD, "api_user:api_pass"); curl_setopt($request, CURLOPT_TIMEOUT, 30); curl_setopt($request, CURLOPT_RETURNTRANSFER, true); $response = curl_exec($request); print_r(json_decode($response)); curl_close($request); JAVA ThuliumRestClient.java (Wymaga biblioteki httpclient w wersji 4.3.5, httpcore w wersji 4.3.2, commons-codec w wersji 1.9, commons-logging w wersji 1.2) public class Example { public static void main(String[] args) throws Exception { ThuliumRestClient restClient = new ThuliumRestClient("api_user", "api_pass", true); ThuliumRestClient.ThuliumRestResponse response = restClient.get("http://localhost/api/system/pauses"); System.out.println(response); } } CURL curl -u api_user:api_pass -k -X GET "http://localhost/api/system/pauses" Dokumentacja / System GET system/transfer_shortcuts Ostatnia aktualizacja: 2015-01-13 09:23:14 Zwraca skrótów do przekierowań. Informacje Resource URL Autentykacja Wymagana http://localhost/api/system/transfer_shortcuts Format odpowiedzi json Przykładowy request Metoda HTTP GET GET http://localhost/api/system/transfer_shortcuts Przykładowy response [ { "transfer_shortcut_id": 1, "queue": "BOK", "number": "", "icon": "de" }, { "transfer_shortcut_id": 3, "queue": "", "number": "123456789", "icon": "fax" } ] Przykładowe wywołanie: PHP <?php $request = curl_init('http://localhost/api/system/transfer_shortcuts'); curl_setopt($request, CURLOPT_HTTPHEADER, array('Content-Type: application/json')); curl_setopt($request, CURLOPT_USERPWD, "api_user:api_pass"); curl_setopt($request, CURLOPT_TIMEOUT, 30); curl_setopt($request, CURLOPT_RETURNTRANSFER, true); $response = curl_exec($request); print_r(json_decode($response)); curl_close($request); JAVA ThuliumRestClient.java (Wymaga biblioteki httpclient w wersji 4.3.5, httpcore w wersji 4.3.2, commons-codec w wersji 1.9, commons-logging w wersji 1.2) public class Example { public static void main(String[] args) throws Exception { ThuliumRestClient restClient = new ThuliumRestClient("api_user", "api_pass", true); ThuliumRestClient.ThuliumRestResponse response = restClient.get("http://localhost/api/system/transfer_shortc uts"); System.out.println(response); } } CURL curl -u api_user:api_pass -k -X GET "http://localhost/api/system/transfer_shortcuts"