Dokumentacja Thulium REST API

Komentarze

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"

Podobne dokumenty