Introduction
TVox WebAPI is a set of REST APIs for TVox configuration (e.g. Power Dialer).
Endpoint for requests is constructed as follows:
https://<TVOX_HOST>/tvox
Authentication
- API Key (SessionCookie)
- Parameter Name: JSESSIONID, in: cookie.
Authentication via session cookie.Session cookie key must be
JSESSIONID
and its path/tvox
.
The value of the cookie can be recovered from the result of a successful login by credentials or access token (response field:sessionId
).
By default a session has a duration of 24 hour (renewed at each request), after which the server will respond with an authentication error (status: 401
). In case of this error, the session can be renewed with a new login request.
Login response includes a set-cookie header with the session cookie, automatically managed by most HTTP clients (including browsers).
- Parameter Name: JSESSIONID, in: cookie.
Auth
Authentication, version and user session management
Retrieve TVox and API version
Code samples
GET /tvox/rest/auth/version HTTP/1.1
Accept: application/json
Host: tvox_host
<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://tvox_host/tvox/rest/auth/version",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Accept: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}
curl --request GET \
--url https://tvox_host/tvox/rest/auth/version \
--header 'Accept: application/json'
HttpResponse<String> response = Unirest.get("https://tvox_host/tvox/rest/auth/version")
.header("Accept", "application/json")
.asString();
package main
import (
"fmt"
"net/http"
"io/ioutil"
)
func main() {
url := "https://tvox_host/tvox/rest/auth/version"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Accept", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}
const data = null;
const xhr = new XMLHttpRequest();
xhr.withCredentials = true;
xhr.addEventListener("readystatechange", function () {
if (this.readyState === this.DONE) {
console.log(this.responseText);
}
});
xhr.open("GET", "https://tvox_host/tvox/rest/auth/version");
xhr.setRequestHeader("Accept", "application/json");
xhr.send(data);
const http = require("https");
const options = {
"method": "GET",
"hostname": "tvox_host",
"port": null,
"path": "/tvox/rest/auth/version",
"headers": {
"Accept": "application/json"
}
};
const req = http.request(options, function (res) {
const chunks = [];
res.on("data", function (chunk) {
chunks.push(chunk);
});
res.on("end", function () {
const body = Buffer.concat(chunks);
console.log(body.toString());
});
});
req.end();
import http.client
conn = http.client.HTTPSConnection("tvox_host")
headers = { 'Accept': "application/json" }
conn.request("GET", "/tvox/rest/auth/version", headers=headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
require 'uri'
require 'net/http'
require 'openssl'
url = URI("https://tvox_host/tvox/rest/auth/version")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
http.verify_mode = OpenSSL::SSL::VERIFY_NONE
request = Net::HTTP::Get.new(url)
request["Accept"] = 'application/json'
response = http.request(request)
puts response.read_body
GET /rest/auth/version
Responses
Example responses
default Response
{
"tvoxVersion": "string",
"webapiVersion": "string"
}
Status | Meaning | Description | Schema |
---|---|---|---|
default | Default | TVox and API version | APIVersion |
Check if current user session is still valid
Code samples
GET /tvox/rest/auth/isValidSession HTTP/1.1
Accept: application/json
Host: tvox_host
<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://tvox_host/tvox/rest/auth/isValidSession",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Accept: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}
curl --request GET \
--url https://tvox_host/tvox/rest/auth/isValidSession \
--header 'Accept: application/json'
HttpResponse<String> response = Unirest.get("https://tvox_host/tvox/rest/auth/isValidSession")
.header("Accept", "application/json")
.asString();
package main
import (
"fmt"
"net/http"
"io/ioutil"
)
func main() {
url := "https://tvox_host/tvox/rest/auth/isValidSession"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Accept", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}
const data = null;
const xhr = new XMLHttpRequest();
xhr.withCredentials = true;
xhr.addEventListener("readystatechange", function () {
if (this.readyState === this.DONE) {
console.log(this.responseText);
}
});
xhr.open("GET", "https://tvox_host/tvox/rest/auth/isValidSession");
xhr.setRequestHeader("Accept", "application/json");
xhr.send(data);
const http = require("https");
const options = {
"method": "GET",
"hostname": "tvox_host",
"port": null,
"path": "/tvox/rest/auth/isValidSession",
"headers": {
"Accept": "application/json"
}
};
const req = http.request(options, function (res) {
const chunks = [];
res.on("data", function (chunk) {
chunks.push(chunk);
});
res.on("end", function () {
const body = Buffer.concat(chunks);
console.log(body.toString());
});
});
req.end();
import http.client
conn = http.client.HTTPSConnection("tvox_host")
headers = { 'Accept': "application/json" }
conn.request("GET", "/tvox/rest/auth/isValidSession", headers=headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
require 'uri'
require 'net/http'
require 'openssl'
url = URI("https://tvox_host/tvox/rest/auth/isValidSession")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
http.verify_mode = OpenSSL::SSL::VERIFY_NONE
request = Net::HTTP::Get.new(url)
request["Accept"] = 'application/json'
response = http.request(request)
puts response.read_body
GET /rest/auth/isValidSession
Check if the session is still valid
Responses
Example responses
default Response
true
Status | Meaning | Description | Schema |
---|---|---|---|
401 | Unauthorized | Error:
|
None |
default | Default | Current user session valid | boolean |
Logout from current user session
Code samples
GET /tvox/rest/auth/logout HTTP/1.1
Accept: application/json
Host: tvox_host
<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://tvox_host/tvox/rest/auth/logout",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Accept: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}
curl --request GET \
--url https://tvox_host/tvox/rest/auth/logout \
--header 'Accept: application/json'
HttpResponse<String> response = Unirest.get("https://tvox_host/tvox/rest/auth/logout")
.header("Accept", "application/json")
.asString();
package main
import (
"fmt"
"net/http"
"io/ioutil"
)
func main() {
url := "https://tvox_host/tvox/rest/auth/logout"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Accept", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}
const data = null;
const xhr = new XMLHttpRequest();
xhr.withCredentials = true;
xhr.addEventListener("readystatechange", function () {
if (this.readyState === this.DONE) {
console.log(this.responseText);
}
});
xhr.open("GET", "https://tvox_host/tvox/rest/auth/logout");
xhr.setRequestHeader("Accept", "application/json");
xhr.send(data);
const http = require("https");
const options = {
"method": "GET",
"hostname": "tvox_host",
"port": null,
"path": "/tvox/rest/auth/logout",
"headers": {
"Accept": "application/json"
}
};
const req = http.request(options, function (res) {
const chunks = [];
res.on("data", function (chunk) {
chunks.push(chunk);
});
res.on("end", function () {
const body = Buffer.concat(chunks);
console.log(body.toString());
});
});
req.end();
import http.client
conn = http.client.HTTPSConnection("tvox_host")
headers = { 'Accept': "application/json" }
conn.request("GET", "/tvox/rest/auth/logout", headers=headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
require 'uri'
require 'net/http'
require 'openssl'
url = URI("https://tvox_host/tvox/rest/auth/logout")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
http.verify_mode = OpenSSL::SSL::VERIFY_NONE
request = Net::HTTP::Get.new(url)
request["Accept"] = 'application/json'
response = http.request(request)
puts response.read_body
GET /rest/auth/logout
Responses
Example responses
default Response
true
Status | Meaning | Description | Schema |
---|---|---|---|
default | Default | User logout | boolean |
Login by username and password
Code samples
POST /tvox/rest/auth/login HTTP/1.1
Content-Type: application/json
Accept: application/json
Host: tvox_host
Content-Length: 60
{"version":"string","username":"string","password":"string"}
<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://tvox_host/tvox/rest/auth/login",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => "{\"version\":\"string\",\"username\":\"string\",\"password\":\"string\"}",
CURLOPT_HTTPHEADER => [
"Accept: application/json",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}
curl --request POST \
--url https://tvox_host/tvox/rest/auth/login \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--data '{"version":"string","username":"string","password":"string"}'
HttpResponse<String> response = Unirest.post("https://tvox_host/tvox/rest/auth/login")
.header("Content-Type", "application/json")
.header("Accept", "application/json")
.body("{\"version\":\"string\",\"username\":\"string\",\"password\":\"string\"}")
.asString();
package main
import (
"fmt"
"strings"
"net/http"
"io/ioutil"
)
func main() {
url := "https://tvox_host/tvox/rest/auth/login"
payload := strings.NewReader("{\"version\":\"string\",\"username\":\"string\",\"password\":\"string\"}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Content-Type", "application/json")
req.Header.Add("Accept", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}
const data = JSON.stringify({
"version": "string",
"username": "string",
"password": "string"
});
const xhr = new XMLHttpRequest();
xhr.withCredentials = true;
xhr.addEventListener("readystatechange", function () {
if (this.readyState === this.DONE) {
console.log(this.responseText);
}
});
xhr.open("POST", "https://tvox_host/tvox/rest/auth/login");
xhr.setRequestHeader("Content-Type", "application/json");
xhr.setRequestHeader("Accept", "application/json");
xhr.send(data);
const http = require("https");
const options = {
"method": "POST",
"hostname": "tvox_host",
"port": null,
"path": "/tvox/rest/auth/login",
"headers": {
"Content-Type": "application/json",
"Accept": "application/json"
}
};
const req = http.request(options, function (res) {
const chunks = [];
res.on("data", function (chunk) {
chunks.push(chunk);
});
res.on("end", function () {
const body = Buffer.concat(chunks);
console.log(body.toString());
});
});
req.write(JSON.stringify({version: 'string', username: 'string', password: 'string'}));
req.end();
import http.client
conn = http.client.HTTPSConnection("tvox_host")
payload = "{\"version\":\"string\",\"username\":\"string\",\"password\":\"string\"}"
headers = {
'Content-Type': "application/json",
'Accept': "application/json"
}
conn.request("POST", "/tvox/rest/auth/login", payload, headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
require 'uri'
require 'net/http'
require 'openssl'
url = URI("https://tvox_host/tvox/rest/auth/login")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
http.verify_mode = OpenSSL::SSL::VERIFY_NONE
request = Net::HTTP::Post.new(url)
request["Content-Type"] = 'application/json'
request["Accept"] = 'application/json'
request.body = "{\"version\":\"string\",\"username\":\"string\",\"password\":\"string\"}"
response = http.request(request)
puts response.read_body
POST /rest/auth/login
Execute the login by username and password
Parameters
Body parameter
{
"version": "string",
"username": "string",
"password": "string"
}
Name | In | Type | Required | Description |
---|---|---|---|---|
body | body | LoginRequest | true | Login with credentials request |
Responses
Example responses
default Response
{
"username": "string",
"surname": "string",
"name": "string",
"publicUsername": "string",
"accessToken": "string",
"sessionId": "string",
"status": "UNKNOWN",
"language": "IT",
"anonymous": true,
"pwdChangeable": true,
"chatUserId": "string",
"chatAuthToken": "string",
"chatUri": "string",
"profileRoles": [
"string"
],
"userPermissions": [
"SUPERUSER"
],
"logged": true
}
Status | Meaning | Description | Schema |
---|---|---|---|
401 | Unauthorized | Error:
|
None |
403 | Forbidden | Error: Password expired. | None |
default | Default | Logged user profile | LoginProfile |
Login by access token
Code samples
POST /tvox/rest/auth/loginByAccessToken HTTP/1.1
Content-Type: application/json
Accept: application/json
Host: tvox_host
Content-Length: 43
{"version":"string","accessToken":"string"}
<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://tvox_host/tvox/rest/auth/loginByAccessToken",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => "{\"version\":\"string\",\"accessToken\":\"string\"}",
CURLOPT_HTTPHEADER => [
"Accept: application/json",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}
curl --request POST \
--url https://tvox_host/tvox/rest/auth/loginByAccessToken \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--data '{"version":"string","accessToken":"string"}'
HttpResponse<String> response = Unirest.post("https://tvox_host/tvox/rest/auth/loginByAccessToken")
.header("Content-Type", "application/json")
.header("Accept", "application/json")
.body("{\"version\":\"string\",\"accessToken\":\"string\"}")
.asString();
package main
import (
"fmt"
"strings"
"net/http"
"io/ioutil"
)
func main() {
url := "https://tvox_host/tvox/rest/auth/loginByAccessToken"
payload := strings.NewReader("{\"version\":\"string\",\"accessToken\":\"string\"}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Content-Type", "application/json")
req.Header.Add("Accept", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}
const data = JSON.stringify({
"version": "string",
"accessToken": "string"
});
const xhr = new XMLHttpRequest();
xhr.withCredentials = true;
xhr.addEventListener("readystatechange", function () {
if (this.readyState === this.DONE) {
console.log(this.responseText);
}
});
xhr.open("POST", "https://tvox_host/tvox/rest/auth/loginByAccessToken");
xhr.setRequestHeader("Content-Type", "application/json");
xhr.setRequestHeader("Accept", "application/json");
xhr.send(data);
const http = require("https");
const options = {
"method": "POST",
"hostname": "tvox_host",
"port": null,
"path": "/tvox/rest/auth/loginByAccessToken",
"headers": {
"Content-Type": "application/json",
"Accept": "application/json"
}
};
const req = http.request(options, function (res) {
const chunks = [];
res.on("data", function (chunk) {
chunks.push(chunk);
});
res.on("end", function () {
const body = Buffer.concat(chunks);
console.log(body.toString());
});
});
req.write(JSON.stringify({version: 'string', accessToken: 'string'}));
req.end();
import http.client
conn = http.client.HTTPSConnection("tvox_host")
payload = "{\"version\":\"string\",\"accessToken\":\"string\"}"
headers = {
'Content-Type': "application/json",
'Accept': "application/json"
}
conn.request("POST", "/tvox/rest/auth/loginByAccessToken", payload, headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
require 'uri'
require 'net/http'
require 'openssl'
url = URI("https://tvox_host/tvox/rest/auth/loginByAccessToken")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
http.verify_mode = OpenSSL::SSL::VERIFY_NONE
request = Net::HTTP::Post.new(url)
request["Content-Type"] = 'application/json'
request["Accept"] = 'application/json'
request.body = "{\"version\":\"string\",\"accessToken\":\"string\"}"
response = http.request(request)
puts response.read_body
POST /rest/auth/loginByAccessToken
Execute the login by access token
Parameters
Body parameter
{
"version": "string",
"accessToken": "string"
}
Name | In | Type | Required | Description |
---|---|---|---|---|
body | body | LoginByAccessTokenRequest | true | Login with access token request |
Responses
Example responses
default Response
{
"username": "string",
"surname": "string",
"name": "string",
"publicUsername": "string",
"accessToken": "string",
"sessionId": "string",
"status": "UNKNOWN",
"language": "IT",
"anonymous": true,
"pwdChangeable": true,
"chatUserId": "string",
"chatAuthToken": "string",
"chatUri": "string",
"profileRoles": [
"string"
],
"userPermissions": [
"SUPERUSER"
],
"logged": true
}
Status | Meaning | Description | Schema |
---|---|---|---|
401 | Unauthorized | Error:
|
None |
403 | Forbidden | Error: Password expired. | None |
default | Default | Logged user profile | LoginProfile |
Power Dialer
Power Dialer campaign management for phone channel
Reset campaign stats
Code samples
POST /tvox/rest/powerdialer/phone/campaign/stats/reset/0 HTTP/1.1
Accept: application/json
Cookie: JSESSIONID=SESSION_ID
Host: tvox_host
<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://tvox_host/tvox/rest/powerdialer/phone/campaign/stats/reset/0",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_HTTPHEADER => [
"Accept: application/json",
"Cookie: JSESSIONID=SESSION_ID"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}
curl --request POST \
--url https://tvox_host/tvox/rest/powerdialer/phone/campaign/stats/reset/0 \
--header 'Accept: application/json' \
--header 'Cookie: JSESSIONID=SESSION_ID'
HttpResponse<String> response = Unirest.post("https://tvox_host/tvox/rest/powerdialer/phone/campaign/stats/reset/0")
.header("Accept", "application/json")
.header("Cookie", "JSESSIONID=SESSION_ID")
.asString();
package main
import (
"fmt"
"net/http"
"io/ioutil"
)
func main() {
url := "https://tvox_host/tvox/rest/powerdialer/phone/campaign/stats/reset/0"
req, _ := http.NewRequest("POST", url, nil)
req.Header.Add("Accept", "application/json")
req.Header.Add("Cookie", "JSESSIONID=SESSION_ID")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}
const data = null;
const xhr = new XMLHttpRequest();
xhr.withCredentials = true;
xhr.addEventListener("readystatechange", function () {
if (this.readyState === this.DONE) {
console.log(this.responseText);
}
});
xhr.open("POST", "https://tvox_host/tvox/rest/powerdialer/phone/campaign/stats/reset/0");
xhr.setRequestHeader("Accept", "application/json");
xhr.setRequestHeader("Cookie", "JSESSIONID=SESSION_ID");
xhr.send(data);
const http = require("https");
const options = {
"method": "POST",
"hostname": "tvox_host",
"port": null,
"path": "/tvox/rest/powerdialer/phone/campaign/stats/reset/0",
"headers": {
"Accept": "application/json",
"Cookie": "JSESSIONID=SESSION_ID"
}
};
const req = http.request(options, function (res) {
const chunks = [];
res.on("data", function (chunk) {
chunks.push(chunk);
});
res.on("end", function () {
const body = Buffer.concat(chunks);
console.log(body.toString());
});
});
req.end();
import http.client
conn = http.client.HTTPSConnection("tvox_host")
headers = {
'Accept': "application/json",
'Cookie': "JSESSIONID=SESSION_ID"
}
conn.request("POST", "/tvox/rest/powerdialer/phone/campaign/stats/reset/0", headers=headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
require 'uri'
require 'net/http'
require 'openssl'
url = URI("https://tvox_host/tvox/rest/powerdialer/phone/campaign/stats/reset/0")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
http.verify_mode = OpenSSL::SSL::VERIFY_NONE
request = Net::HTTP::Post.new(url)
request["Accept"] = 'application/json'
request["Cookie"] = 'JSESSIONID=SESSION_ID'
response = http.request(request)
puts response.read_body
POST /rest/powerdialer/phone/campaign/stats/reset/{id}
Reset campaign stats and make available to it the new contacts in all the lists associated with the campaign.
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
id | path | integer(int32) | true | Campaign id |
Responses
Example responses
default Response
true
Status | Meaning | Description | Schema |
---|---|---|---|
401 | Unauthorized | Error: Authorization required. Request is not authenticated or current user session is expired | None |
404 | Not Found | Error: Object was not found. | None |
412 | Precondition Failed | Error: Object required. A required field is missing or empty | None |
default | Default | Campaign stats reset | boolean |
Reset campaign list stats
Code samples
POST /tvox/rest/powerdialer/phone/list/stats/reset/0/0 HTTP/1.1
Accept: application/json
Cookie: JSESSIONID=SESSION_ID
Host: tvox_host
<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://tvox_host/tvox/rest/powerdialer/phone/list/stats/reset/0/0",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_HTTPHEADER => [
"Accept: application/json",
"Cookie: JSESSIONID=SESSION_ID"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}
curl --request POST \
--url https://tvox_host/tvox/rest/powerdialer/phone/list/stats/reset/0/0 \
--header 'Accept: application/json' \
--header 'Cookie: JSESSIONID=SESSION_ID'
HttpResponse<String> response = Unirest.post("https://tvox_host/tvox/rest/powerdialer/phone/list/stats/reset/0/0")
.header("Accept", "application/json")
.header("Cookie", "JSESSIONID=SESSION_ID")
.asString();
package main
import (
"fmt"
"net/http"
"io/ioutil"
)
func main() {
url := "https://tvox_host/tvox/rest/powerdialer/phone/list/stats/reset/0/0"
req, _ := http.NewRequest("POST", url, nil)
req.Header.Add("Accept", "application/json")
req.Header.Add("Cookie", "JSESSIONID=SESSION_ID")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}
const data = null;
const xhr = new XMLHttpRequest();
xhr.withCredentials = true;
xhr.addEventListener("readystatechange", function () {
if (this.readyState === this.DONE) {
console.log(this.responseText);
}
});
xhr.open("POST", "https://tvox_host/tvox/rest/powerdialer/phone/list/stats/reset/0/0");
xhr.setRequestHeader("Accept", "application/json");
xhr.setRequestHeader("Cookie", "JSESSIONID=SESSION_ID");
xhr.send(data);
const http = require("https");
const options = {
"method": "POST",
"hostname": "tvox_host",
"port": null,
"path": "/tvox/rest/powerdialer/phone/list/stats/reset/0/0",
"headers": {
"Accept": "application/json",
"Cookie": "JSESSIONID=SESSION_ID"
}
};
const req = http.request(options, function (res) {
const chunks = [];
res.on("data", function (chunk) {
chunks.push(chunk);
});
res.on("end", function () {
const body = Buffer.concat(chunks);
console.log(body.toString());
});
});
req.end();
import http.client
conn = http.client.HTTPSConnection("tvox_host")
headers = {
'Accept': "application/json",
'Cookie': "JSESSIONID=SESSION_ID"
}
conn.request("POST", "/tvox/rest/powerdialer/phone/list/stats/reset/0/0", headers=headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
require 'uri'
require 'net/http'
require 'openssl'
url = URI("https://tvox_host/tvox/rest/powerdialer/phone/list/stats/reset/0/0")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
http.verify_mode = OpenSSL::SSL::VERIFY_NONE
request = Net::HTTP::Post.new(url)
request["Accept"] = 'application/json'
request["Cookie"] = 'JSESSIONID=SESSION_ID'
response = http.request(request)
puts response.read_body
POST /rest/powerdialer/phone/list/stats/reset/{campaignId}/{listId}
Reset campaign stats and make available to it the new contacts in the a specific list associated with the campaign.
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
campaignId | path | integer(int32) | true | Campaign id |
listId | path | integer(int32) | true | List id |
Responses
Example responses
default Response
true
Status | Meaning | Description | Schema |
---|---|---|---|
401 | Unauthorized | Error: Authorization required. Request is not authenticated or current user session is expired | None |
404 | Not Found | Error: Object was not found. | None |
412 | Precondition Failed | Error: Object required. A required field is missing or empty | None |
default | Default | Campaing list stats reset | boolean |
Add list items (contacts)
Code samples
POST /tvox/rest/powerdialer/phone/list/items HTTP/1.1
Content-Type: application/json
Accept: application/json
Cookie: JSESSIONID=SESSION_ID
Host: tvox_host
Content-Length: 92
[{"id":0,"itemNumber":0,"campaignId":0,"listId":0,"phoneNumber":"string","data":["string"]}]
<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://tvox_host/tvox/rest/powerdialer/phone/list/items",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => "[{\"id\":0,\"itemNumber\":0,\"campaignId\":0,\"listId\":0,\"phoneNumber\":\"string\",\"data\":[\"string\"]}]",
CURLOPT_HTTPHEADER => [
"Accept: application/json",
"Content-Type: application/json",
"Cookie: JSESSIONID=SESSION_ID"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}
curl --request POST \
--url https://tvox_host/tvox/rest/powerdialer/phone/list/items \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--header 'Cookie: JSESSIONID=SESSION_ID' \
--data '[{"id":0,"itemNumber":0,"campaignId":0,"listId":0,"phoneNumber":"string","data":["string"]}]'
HttpResponse<String> response = Unirest.post("https://tvox_host/tvox/rest/powerdialer/phone/list/items")
.header("Content-Type", "application/json")
.header("Accept", "application/json")
.header("Cookie", "JSESSIONID=SESSION_ID")
.body("[{\"id\":0,\"itemNumber\":0,\"campaignId\":0,\"listId\":0,\"phoneNumber\":\"string\",\"data\":[\"string\"]}]")
.asString();
package main
import (
"fmt"
"strings"
"net/http"
"io/ioutil"
)
func main() {
url := "https://tvox_host/tvox/rest/powerdialer/phone/list/items"
payload := strings.NewReader("[{\"id\":0,\"itemNumber\":0,\"campaignId\":0,\"listId\":0,\"phoneNumber\":\"string\",\"data\":[\"string\"]}]")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Content-Type", "application/json")
req.Header.Add("Accept", "application/json")
req.Header.Add("Cookie", "JSESSIONID=SESSION_ID")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}
const data = JSON.stringify([
{
"id": 0,
"itemNumber": 0,
"campaignId": 0,
"listId": 0,
"phoneNumber": "string",
"data": [
"string"
]
}
]);
const xhr = new XMLHttpRequest();
xhr.withCredentials = true;
xhr.addEventListener("readystatechange", function () {
if (this.readyState === this.DONE) {
console.log(this.responseText);
}
});
xhr.open("POST", "https://tvox_host/tvox/rest/powerdialer/phone/list/items");
xhr.setRequestHeader("Content-Type", "application/json");
xhr.setRequestHeader("Accept", "application/json");
xhr.setRequestHeader("Cookie", "JSESSIONID=SESSION_ID");
xhr.send(data);
const http = require("https");
const options = {
"method": "POST",
"hostname": "tvox_host",
"port": null,
"path": "/tvox/rest/powerdialer/phone/list/items",
"headers": {
"Content-Type": "application/json",
"Accept": "application/json",
"Cookie": "JSESSIONID=SESSION_ID"
}
};
const req = http.request(options, function (res) {
const chunks = [];
res.on("data", function (chunk) {
chunks.push(chunk);
});
res.on("end", function () {
const body = Buffer.concat(chunks);
console.log(body.toString());
});
});
req.write(JSON.stringify([
{
id: 0,
itemNumber: 0,
campaignId: 0,
listId: 0,
phoneNumber: 'string',
data: ['string']
}
]));
req.end();
import http.client
conn = http.client.HTTPSConnection("tvox_host")
payload = "[{\"id\":0,\"itemNumber\":0,\"campaignId\":0,\"listId\":0,\"phoneNumber\":\"string\",\"data\":[\"string\"]}]"
headers = {
'Content-Type': "application/json",
'Accept': "application/json",
'Cookie': "JSESSIONID=SESSION_ID"
}
conn.request("POST", "/tvox/rest/powerdialer/phone/list/items", payload, headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
require 'uri'
require 'net/http'
require 'openssl'
url = URI("https://tvox_host/tvox/rest/powerdialer/phone/list/items")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
http.verify_mode = OpenSSL::SSL::VERIFY_NONE
request = Net::HTTP::Post.new(url)
request["Content-Type"] = 'application/json'
request["Accept"] = 'application/json'
request["Cookie"] = 'JSESSIONID=SESSION_ID'
request.body = "[{\"id\":0,\"itemNumber\":0,\"campaignId\":0,\"listId\":0,\"phoneNumber\":\"string\",\"data\":[\"string\"]}]"
response = http.request(request)
puts response.read_body
POST /rest/powerdialer/phone/list/items
Add items (contacts) to a list associated with a campaign; in addition to the contact's phone number, useful information can be entered to generate a screen popup on operator's position, which can be managed via Popup Manager or Notification Service.
Once contacts have been added, it is necessary to perform a reset of campaign/list stats to consolidate them and make them available to Power Dialer campaign.
Parameters
Body parameter
[
{
"id": 0,
"itemNumber": 0,
"campaignId": 0,
"listId": 0,
"phoneNumber": "string",
"data": [
"string"
]
}
]
Name | In | Type | Required | Description |
---|---|---|---|---|
body | body | [PDInterfaceItem] | true | List items (contacts) to add |
Responses
Example responses
default Response
{
"id": 0,
"itemNumber": 0,
"campaignId": 0,
"listId": 0,
"phoneNumber": "string",
"data": [
"string"
]
}
Status | Meaning | Description | Schema |
---|---|---|---|
401 | Unauthorized | Error: Authorization required. Request is not authenticated or current user session is expired | None |
404 | Not Found | Error: Object was not found. | None |
412 | Precondition Failed | Error: Object required. A required field is missing or empty | None |
default | Default | Added list items | [PDInterfaceItem] |
Reset all list items (contacts)
Code samples
POST /tvox/rest/powerdialer/phone/list/items/reset HTTP/1.1
Accept: application/json
Cookie: JSESSIONID=SESSION_ID
Host: tvox_host
<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://tvox_host/tvox/rest/powerdialer/phone/list/items/reset",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_HTTPHEADER => [
"Accept: application/json",
"Cookie: JSESSIONID=SESSION_ID"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}
curl --request POST \
--url https://tvox_host/tvox/rest/powerdialer/phone/list/items/reset \
--header 'Accept: application/json' \
--header 'Cookie: JSESSIONID=SESSION_ID'
HttpResponse<String> response = Unirest.post("https://tvox_host/tvox/rest/powerdialer/phone/list/items/reset")
.header("Accept", "application/json")
.header("Cookie", "JSESSIONID=SESSION_ID")
.asString();
package main
import (
"fmt"
"net/http"
"io/ioutil"
)
func main() {
url := "https://tvox_host/tvox/rest/powerdialer/phone/list/items/reset"
req, _ := http.NewRequest("POST", url, nil)
req.Header.Add("Accept", "application/json")
req.Header.Add("Cookie", "JSESSIONID=SESSION_ID")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}
const data = null;
const xhr = new XMLHttpRequest();
xhr.withCredentials = true;
xhr.addEventListener("readystatechange", function () {
if (this.readyState === this.DONE) {
console.log(this.responseText);
}
});
xhr.open("POST", "https://tvox_host/tvox/rest/powerdialer/phone/list/items/reset");
xhr.setRequestHeader("Accept", "application/json");
xhr.setRequestHeader("Cookie", "JSESSIONID=SESSION_ID");
xhr.send(data);
const http = require("https");
const options = {
"method": "POST",
"hostname": "tvox_host",
"port": null,
"path": "/tvox/rest/powerdialer/phone/list/items/reset",
"headers": {
"Accept": "application/json",
"Cookie": "JSESSIONID=SESSION_ID"
}
};
const req = http.request(options, function (res) {
const chunks = [];
res.on("data", function (chunk) {
chunks.push(chunk);
});
res.on("end", function () {
const body = Buffer.concat(chunks);
console.log(body.toString());
});
});
req.end();
import http.client
conn = http.client.HTTPSConnection("tvox_host")
headers = {
'Accept': "application/json",
'Cookie': "JSESSIONID=SESSION_ID"
}
conn.request("POST", "/tvox/rest/powerdialer/phone/list/items/reset", headers=headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
require 'uri'
require 'net/http'
require 'openssl'
url = URI("https://tvox_host/tvox/rest/powerdialer/phone/list/items/reset")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
http.verify_mode = OpenSSL::SSL::VERIFY_NONE
request = Net::HTTP::Post.new(url)
request["Accept"] = 'application/json'
request["Cookie"] = 'JSESSIONID=SESSION_ID'
response = http.request(request)
puts response.read_body
POST /rest/powerdialer/phone/list/items/reset
Responses
Example responses
default Response
true
Status | Meaning | Description | Schema |
---|---|---|---|
401 | Unauthorized | Error: Authorization required. Request is not authenticated or current user session is expired | None |
default | Default | List items (contacts) reset | boolean |
Update campaign
Code samples
PUT /tvox/rest/powerdialer/phone/campaign HTTP/1.1
Content-Type: application/json
Accept: application/json
Cookie: JSESSIONID=SESSION_ID
Host: tvox_host
Content-Length: 280
{"id":0,"name":"string","enabled":true,"startDate":"2019-08-24T14:15:22Z","endDate":"2019-08-24T14:15:22Z","priority":1,"abilitazioneId":0,"reservedChannels":0,"busyChannels":0,"busyChannelsType":"PRESENT","serviceCode":"string","lists":[{"enabled":true,"priority":0,"listId":0}]}
<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://tvox_host/tvox/rest/powerdialer/phone/campaign",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PUT",
CURLOPT_POSTFIELDS => "{\"id\":0,\"name\":\"string\",\"enabled\":true,\"startDate\":\"2019-08-24T14:15:22Z\",\"endDate\":\"2019-08-24T14:15:22Z\",\"priority\":1,\"abilitazioneId\":0,\"reservedChannels\":0,\"busyChannels\":0,\"busyChannelsType\":\"PRESENT\",\"serviceCode\":\"string\",\"lists\":[{\"enabled\":true,\"priority\":0,\"listId\":0}]}",
CURLOPT_HTTPHEADER => [
"Accept: application/json",
"Content-Type: application/json",
"Cookie: JSESSIONID=SESSION_ID"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}
curl --request PUT \
--url https://tvox_host/tvox/rest/powerdialer/phone/campaign \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--header 'Cookie: JSESSIONID=SESSION_ID' \
--data '{"id":0,"name":"string","enabled":true,"startDate":"2019-08-24T14:15:22Z","endDate":"2019-08-24T14:15:22Z","priority":1,"abilitazioneId":0,"reservedChannels":0,"busyChannels":0,"busyChannelsType":"PRESENT","serviceCode":"string","lists":[{"enabled":true,"priority":0,"listId":0}]}'
HttpResponse<String> response = Unirest.put("https://tvox_host/tvox/rest/powerdialer/phone/campaign")
.header("Content-Type", "application/json")
.header("Accept", "application/json")
.header("Cookie", "JSESSIONID=SESSION_ID")
.body("{\"id\":0,\"name\":\"string\",\"enabled\":true,\"startDate\":\"2019-08-24T14:15:22Z\",\"endDate\":\"2019-08-24T14:15:22Z\",\"priority\":1,\"abilitazioneId\":0,\"reservedChannels\":0,\"busyChannels\":0,\"busyChannelsType\":\"PRESENT\",\"serviceCode\":\"string\",\"lists\":[{\"enabled\":true,\"priority\":0,\"listId\":0}]}")
.asString();
package main
import (
"fmt"
"strings"
"net/http"
"io/ioutil"
)
func main() {
url := "https://tvox_host/tvox/rest/powerdialer/phone/campaign"
payload := strings.NewReader("{\"id\":0,\"name\":\"string\",\"enabled\":true,\"startDate\":\"2019-08-24T14:15:22Z\",\"endDate\":\"2019-08-24T14:15:22Z\",\"priority\":1,\"abilitazioneId\":0,\"reservedChannels\":0,\"busyChannels\":0,\"busyChannelsType\":\"PRESENT\",\"serviceCode\":\"string\",\"lists\":[{\"enabled\":true,\"priority\":0,\"listId\":0}]}")
req, _ := http.NewRequest("PUT", url, payload)
req.Header.Add("Content-Type", "application/json")
req.Header.Add("Accept", "application/json")
req.Header.Add("Cookie", "JSESSIONID=SESSION_ID")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}
const data = JSON.stringify({
"id": 0,
"name": "string",
"enabled": true,
"startDate": "2019-08-24T14:15:22Z",
"endDate": "2019-08-24T14:15:22Z",
"priority": 1,
"abilitazioneId": 0,
"reservedChannels": 0,
"busyChannels": 0,
"busyChannelsType": "PRESENT",
"serviceCode": "string",
"lists": [
{
"enabled": true,
"priority": 0,
"listId": 0
}
]
});
const xhr = new XMLHttpRequest();
xhr.withCredentials = true;
xhr.addEventListener("readystatechange", function () {
if (this.readyState === this.DONE) {
console.log(this.responseText);
}
});
xhr.open("PUT", "https://tvox_host/tvox/rest/powerdialer/phone/campaign");
xhr.setRequestHeader("Content-Type", "application/json");
xhr.setRequestHeader("Accept", "application/json");
xhr.setRequestHeader("Cookie", "JSESSIONID=SESSION_ID");
xhr.send(data);
const http = require("https");
const options = {
"method": "PUT",
"hostname": "tvox_host",
"port": null,
"path": "/tvox/rest/powerdialer/phone/campaign",
"headers": {
"Content-Type": "application/json",
"Accept": "application/json",
"Cookie": "JSESSIONID=SESSION_ID"
}
};
const req = http.request(options, function (res) {
const chunks = [];
res.on("data", function (chunk) {
chunks.push(chunk);
});
res.on("end", function () {
const body = Buffer.concat(chunks);
console.log(body.toString());
});
});
req.write(JSON.stringify({
id: 0,
name: 'string',
enabled: true,
startDate: '2019-08-24T14:15:22Z',
endDate: '2019-08-24T14:15:22Z',
priority: 1,
abilitazioneId: 0,
reservedChannels: 0,
busyChannels: 0,
busyChannelsType: 'PRESENT',
serviceCode: 'string',
lists: [{enabled: true, priority: 0, listId: 0}]
}));
req.end();
import http.client
conn = http.client.HTTPSConnection("tvox_host")
payload = "{\"id\":0,\"name\":\"string\",\"enabled\":true,\"startDate\":\"2019-08-24T14:15:22Z\",\"endDate\":\"2019-08-24T14:15:22Z\",\"priority\":1,\"abilitazioneId\":0,\"reservedChannels\":0,\"busyChannels\":0,\"busyChannelsType\":\"PRESENT\",\"serviceCode\":\"string\",\"lists\":[{\"enabled\":true,\"priority\":0,\"listId\":0}]}"
headers = {
'Content-Type': "application/json",
'Accept': "application/json",
'Cookie': "JSESSIONID=SESSION_ID"
}
conn.request("PUT", "/tvox/rest/powerdialer/phone/campaign", payload, headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
require 'uri'
require 'net/http'
require 'openssl'
url = URI("https://tvox_host/tvox/rest/powerdialer/phone/campaign")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
http.verify_mode = OpenSSL::SSL::VERIFY_NONE
request = Net::HTTP::Put.new(url)
request["Content-Type"] = 'application/json'
request["Accept"] = 'application/json'
request["Cookie"] = 'JSESSIONID=SESSION_ID'
request.body = "{\"id\":0,\"name\":\"string\",\"enabled\":true,\"startDate\":\"2019-08-24T14:15:22Z\",\"endDate\":\"2019-08-24T14:15:22Z\",\"priority\":1,\"abilitazioneId\":0,\"reservedChannels\":0,\"busyChannels\":0,\"busyChannelsType\":\"PRESENT\",\"serviceCode\":\"string\",\"lists\":[{\"enabled\":true,\"priority\":0,\"listId\":0}]}"
response = http.request(request)
puts response.read_body
PUT /rest/powerdialer/phone/campaign
Parameters
Body parameter
{
"id": 0,
"name": "string",
"enabled": true,
"startDate": "2019-08-24T14:15:22Z",
"endDate": "2019-08-24T14:15:22Z",
"priority": 1,
"abilitazioneId": 0,
"reservedChannels": 0,
"busyChannels": 0,
"busyChannelsType": "PRESENT",
"serviceCode": "string",
"lists": [
{
"enabled": true,
"priority": 0,
"listId": 0
}
]
}
Name | In | Type | Required | Description |
---|---|---|---|---|
resetStats | query | boolean | false | Reset campaign stats after its update (campaign must be restarted to reset its stats) |
body | body | PDCampaign | true | Campaign to update |
Responses
Example responses
default Response
{
"id": 0,
"name": "string",
"enabled": true,
"startDate": "2019-08-24T14:15:22Z",
"endDate": "2019-08-24T14:15:22Z",
"priority": 1,
"abilitazioneId": 0,
"reservedChannels": 0,
"busyChannels": 0,
"busyChannelsType": "PRESENT",
"serviceCode": "string",
"lists": [
{
"enabled": true,
"priority": 0,
"listId": 0
}
]
}
Status | Meaning | Description | Schema |
---|---|---|---|
401 | Unauthorized | Error: Authorization required. Request is not authenticated or current user session is expired | None |
404 | Not Found | Error: Object was not found. | None |
406 | Not Acceptable | Error: Invalid argument. | None |
412 | Precondition Failed | Error: Object required. A required field is missing or empty | None |
default | Default | Updated campaign | PDCampaign |
Create campaign
Code samples
POST /tvox/rest/powerdialer/phone/campaign HTTP/1.1
Content-Type: application/json
Accept: application/json
Cookie: JSESSIONID=SESSION_ID
Host: tvox_host
Content-Length: 280
{"id":0,"name":"string","enabled":true,"startDate":"2019-08-24T14:15:22Z","endDate":"2019-08-24T14:15:22Z","priority":1,"abilitazioneId":0,"reservedChannels":0,"busyChannels":0,"busyChannelsType":"PRESENT","serviceCode":"string","lists":[{"enabled":true,"priority":0,"listId":0}]}
<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://tvox_host/tvox/rest/powerdialer/phone/campaign",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => "{\"id\":0,\"name\":\"string\",\"enabled\":true,\"startDate\":\"2019-08-24T14:15:22Z\",\"endDate\":\"2019-08-24T14:15:22Z\",\"priority\":1,\"abilitazioneId\":0,\"reservedChannels\":0,\"busyChannels\":0,\"busyChannelsType\":\"PRESENT\",\"serviceCode\":\"string\",\"lists\":[{\"enabled\":true,\"priority\":0,\"listId\":0}]}",
CURLOPT_HTTPHEADER => [
"Accept: application/json",
"Content-Type: application/json",
"Cookie: JSESSIONID=SESSION_ID"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}
curl --request POST \
--url https://tvox_host/tvox/rest/powerdialer/phone/campaign \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--header 'Cookie: JSESSIONID=SESSION_ID' \
--data '{"id":0,"name":"string","enabled":true,"startDate":"2019-08-24T14:15:22Z","endDate":"2019-08-24T14:15:22Z","priority":1,"abilitazioneId":0,"reservedChannels":0,"busyChannels":0,"busyChannelsType":"PRESENT","serviceCode":"string","lists":[{"enabled":true,"priority":0,"listId":0}]}'
HttpResponse<String> response = Unirest.post("https://tvox_host/tvox/rest/powerdialer/phone/campaign")
.header("Content-Type", "application/json")
.header("Accept", "application/json")
.header("Cookie", "JSESSIONID=SESSION_ID")
.body("{\"id\":0,\"name\":\"string\",\"enabled\":true,\"startDate\":\"2019-08-24T14:15:22Z\",\"endDate\":\"2019-08-24T14:15:22Z\",\"priority\":1,\"abilitazioneId\":0,\"reservedChannels\":0,\"busyChannels\":0,\"busyChannelsType\":\"PRESENT\",\"serviceCode\":\"string\",\"lists\":[{\"enabled\":true,\"priority\":0,\"listId\":0}]}")
.asString();
package main
import (
"fmt"
"strings"
"net/http"
"io/ioutil"
)
func main() {
url := "https://tvox_host/tvox/rest/powerdialer/phone/campaign"
payload := strings.NewReader("{\"id\":0,\"name\":\"string\",\"enabled\":true,\"startDate\":\"2019-08-24T14:15:22Z\",\"endDate\":\"2019-08-24T14:15:22Z\",\"priority\":1,\"abilitazioneId\":0,\"reservedChannels\":0,\"busyChannels\":0,\"busyChannelsType\":\"PRESENT\",\"serviceCode\":\"string\",\"lists\":[{\"enabled\":true,\"priority\":0,\"listId\":0}]}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Content-Type", "application/json")
req.Header.Add("Accept", "application/json")
req.Header.Add("Cookie", "JSESSIONID=SESSION_ID")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}
const data = JSON.stringify({
"id": 0,
"name": "string",
"enabled": true,
"startDate": "2019-08-24T14:15:22Z",
"endDate": "2019-08-24T14:15:22Z",
"priority": 1,
"abilitazioneId": 0,
"reservedChannels": 0,
"busyChannels": 0,
"busyChannelsType": "PRESENT",
"serviceCode": "string",
"lists": [
{
"enabled": true,
"priority": 0,
"listId": 0
}
]
});
const xhr = new XMLHttpRequest();
xhr.withCredentials = true;
xhr.addEventListener("readystatechange", function () {
if (this.readyState === this.DONE) {
console.log(this.responseText);
}
});
xhr.open("POST", "https://tvox_host/tvox/rest/powerdialer/phone/campaign");
xhr.setRequestHeader("Content-Type", "application/json");
xhr.setRequestHeader("Accept", "application/json");
xhr.setRequestHeader("Cookie", "JSESSIONID=SESSION_ID");
xhr.send(data);
const http = require("https");
const options = {
"method": "POST",
"hostname": "tvox_host",
"port": null,
"path": "/tvox/rest/powerdialer/phone/campaign",
"headers": {
"Content-Type": "application/json",
"Accept": "application/json",
"Cookie": "JSESSIONID=SESSION_ID"
}
};
const req = http.request(options, function (res) {
const chunks = [];
res.on("data", function (chunk) {
chunks.push(chunk);
});
res.on("end", function () {
const body = Buffer.concat(chunks);
console.log(body.toString());
});
});
req.write(JSON.stringify({
id: 0,
name: 'string',
enabled: true,
startDate: '2019-08-24T14:15:22Z',
endDate: '2019-08-24T14:15:22Z',
priority: 1,
abilitazioneId: 0,
reservedChannels: 0,
busyChannels: 0,
busyChannelsType: 'PRESENT',
serviceCode: 'string',
lists: [{enabled: true, priority: 0, listId: 0}]
}));
req.end();
import http.client
conn = http.client.HTTPSConnection("tvox_host")
payload = "{\"id\":0,\"name\":\"string\",\"enabled\":true,\"startDate\":\"2019-08-24T14:15:22Z\",\"endDate\":\"2019-08-24T14:15:22Z\",\"priority\":1,\"abilitazioneId\":0,\"reservedChannels\":0,\"busyChannels\":0,\"busyChannelsType\":\"PRESENT\",\"serviceCode\":\"string\",\"lists\":[{\"enabled\":true,\"priority\":0,\"listId\":0}]}"
headers = {
'Content-Type': "application/json",
'Accept': "application/json",
'Cookie': "JSESSIONID=SESSION_ID"
}
conn.request("POST", "/tvox/rest/powerdialer/phone/campaign", payload, headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
require 'uri'
require 'net/http'
require 'openssl'
url = URI("https://tvox_host/tvox/rest/powerdialer/phone/campaign")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
http.verify_mode = OpenSSL::SSL::VERIFY_NONE
request = Net::HTTP::Post.new(url)
request["Content-Type"] = 'application/json'
request["Accept"] = 'application/json'
request["Cookie"] = 'JSESSIONID=SESSION_ID'
request.body = "{\"id\":0,\"name\":\"string\",\"enabled\":true,\"startDate\":\"2019-08-24T14:15:22Z\",\"endDate\":\"2019-08-24T14:15:22Z\",\"priority\":1,\"abilitazioneId\":0,\"reservedChannels\":0,\"busyChannels\":0,\"busyChannelsType\":\"PRESENT\",\"serviceCode\":\"string\",\"lists\":[{\"enabled\":true,\"priority\":0,\"listId\":0}]}"
response = http.request(request)
puts response.read_body
POST /rest/powerdialer/phone/campaign
Parameters
Body parameter
{
"id": 0,
"name": "string",
"enabled": true,
"startDate": "2019-08-24T14:15:22Z",
"endDate": "2019-08-24T14:15:22Z",
"priority": 1,
"abilitazioneId": 0,
"reservedChannels": 0,
"busyChannels": 0,
"busyChannelsType": "PRESENT",
"serviceCode": "string",
"lists": [
{
"enabled": true,
"priority": 0,
"listId": 0
}
]
}
Name | In | Type | Required | Description |
---|---|---|---|---|
body | body | PDCampaign | true | Campaign to create |
Responses
Example responses
default Response
{
"id": 0,
"name": "string",
"enabled": true,
"startDate": "2019-08-24T14:15:22Z",
"endDate": "2019-08-24T14:15:22Z",
"priority": 1,
"abilitazioneId": 0,
"reservedChannels": 0,
"busyChannels": 0,
"busyChannelsType": "PRESENT",
"serviceCode": "string",
"lists": [
{
"enabled": true,
"priority": 0,
"listId": 0
}
]
}
Status | Meaning | Description | Schema |
---|---|---|---|
401 | Unauthorized | Error: Authorization required. Request is not authenticated or current user session is expired | None |
404 | Not Found | Error: Object was not found. | None |
406 | Not Acceptable | Error: Invalid argument. | None |
409 | Conflict | Error: Object already exists. | None |
412 | Precondition Failed | Error: Object required. A required field is missing or empty | None |
default | Default | Created campaign | PDCampaign |
Get general settings
Code samples
GET /tvox/rest/powerdialer/phone/conf HTTP/1.1
Accept: application/json
Cookie: JSESSIONID=SESSION_ID
Host: tvox_host
<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://tvox_host/tvox/rest/powerdialer/phone/conf",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Accept: application/json",
"Cookie: JSESSIONID=SESSION_ID"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}
curl --request GET \
--url https://tvox_host/tvox/rest/powerdialer/phone/conf \
--header 'Accept: application/json' \
--header 'Cookie: JSESSIONID=SESSION_ID'
HttpResponse<String> response = Unirest.get("https://tvox_host/tvox/rest/powerdialer/phone/conf")
.header("Accept", "application/json")
.header("Cookie", "JSESSIONID=SESSION_ID")
.asString();
package main
import (
"fmt"
"net/http"
"io/ioutil"
)
func main() {
url := "https://tvox_host/tvox/rest/powerdialer/phone/conf"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Accept", "application/json")
req.Header.Add("Cookie", "JSESSIONID=SESSION_ID")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}
const data = null;
const xhr = new XMLHttpRequest();
xhr.withCredentials = true;
xhr.addEventListener("readystatechange", function () {
if (this.readyState === this.DONE) {
console.log(this.responseText);
}
});
xhr.open("GET", "https://tvox_host/tvox/rest/powerdialer/phone/conf");
xhr.setRequestHeader("Accept", "application/json");
xhr.setRequestHeader("Cookie", "JSESSIONID=SESSION_ID");
xhr.send(data);
const http = require("https");
const options = {
"method": "GET",
"hostname": "tvox_host",
"port": null,
"path": "/tvox/rest/powerdialer/phone/conf",
"headers": {
"Accept": "application/json",
"Cookie": "JSESSIONID=SESSION_ID"
}
};
const req = http.request(options, function (res) {
const chunks = [];
res.on("data", function (chunk) {
chunks.push(chunk);
});
res.on("end", function () {
const body = Buffer.concat(chunks);
console.log(body.toString());
});
});
req.end();
import http.client
conn = http.client.HTTPSConnection("tvox_host")
headers = {
'Accept': "application/json",
'Cookie': "JSESSIONID=SESSION_ID"
}
conn.request("GET", "/tvox/rest/powerdialer/phone/conf", headers=headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
require 'uri'
require 'net/http'
require 'openssl'
url = URI("https://tvox_host/tvox/rest/powerdialer/phone/conf")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
http.verify_mode = OpenSSL::SSL::VERIFY_NONE
request = Net::HTTP::Get.new(url)
request["Accept"] = 'application/json'
request["Cookie"] = 'JSESSIONID=SESSION_ID'
response = http.request(request)
puts response.read_body
GET /rest/powerdialer/phone/conf
Responses
Example responses
default Response
{
"enabled": true,
"maxChannels": 0,
"abilitazione": {
"id": 0,
"descrizione": "string"
},
"ringTimeout": 0
}
Status | Meaning | Description | Schema |
---|---|---|---|
401 | Unauthorized | Error: Authorization required. Request is not authenticated or current user session is expired | None |
510 | Unknown | Error: License exceeded. | None |
default | Default | General settings | PDConf |
Update general settings
Code samples
PUT /tvox/rest/powerdialer/phone/conf HTTP/1.1
Content-Type: application/json
Accept: application/json
Cookie: JSESSIONID=SESSION_ID
Host: tvox_host
Content-Length: 95
{"enabled":true,"maxChannels":0,"abilitazione":{"id":0,"descrizione":"string"},"ringTimeout":0}
<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://tvox_host/tvox/rest/powerdialer/phone/conf",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PUT",
CURLOPT_POSTFIELDS => "{\"enabled\":true,\"maxChannels\":0,\"abilitazione\":{\"id\":0,\"descrizione\":\"string\"},\"ringTimeout\":0}",
CURLOPT_HTTPHEADER => [
"Accept: application/json",
"Content-Type: application/json",
"Cookie: JSESSIONID=SESSION_ID"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}
curl --request PUT \
--url https://tvox_host/tvox/rest/powerdialer/phone/conf \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--header 'Cookie: JSESSIONID=SESSION_ID' \
--data '{"enabled":true,"maxChannels":0,"abilitazione":{"id":0,"descrizione":"string"},"ringTimeout":0}'
HttpResponse<String> response = Unirest.put("https://tvox_host/tvox/rest/powerdialer/phone/conf")
.header("Content-Type", "application/json")
.header("Accept", "application/json")
.header("Cookie", "JSESSIONID=SESSION_ID")
.body("{\"enabled\":true,\"maxChannels\":0,\"abilitazione\":{\"id\":0,\"descrizione\":\"string\"},\"ringTimeout\":0}")
.asString();
package main
import (
"fmt"
"strings"
"net/http"
"io/ioutil"
)
func main() {
url := "https://tvox_host/tvox/rest/powerdialer/phone/conf"
payload := strings.NewReader("{\"enabled\":true,\"maxChannels\":0,\"abilitazione\":{\"id\":0,\"descrizione\":\"string\"},\"ringTimeout\":0}")
req, _ := http.NewRequest("PUT", url, payload)
req.Header.Add("Content-Type", "application/json")
req.Header.Add("Accept", "application/json")
req.Header.Add("Cookie", "JSESSIONID=SESSION_ID")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}
const data = JSON.stringify({
"enabled": true,
"maxChannels": 0,
"abilitazione": {
"id": 0,
"descrizione": "string"
},
"ringTimeout": 0
});
const xhr = new XMLHttpRequest();
xhr.withCredentials = true;
xhr.addEventListener("readystatechange", function () {
if (this.readyState === this.DONE) {
console.log(this.responseText);
}
});
xhr.open("PUT", "https://tvox_host/tvox/rest/powerdialer/phone/conf");
xhr.setRequestHeader("Content-Type", "application/json");
xhr.setRequestHeader("Accept", "application/json");
xhr.setRequestHeader("Cookie", "JSESSIONID=SESSION_ID");
xhr.send(data);
const http = require("https");
const options = {
"method": "PUT",
"hostname": "tvox_host",
"port": null,
"path": "/tvox/rest/powerdialer/phone/conf",
"headers": {
"Content-Type": "application/json",
"Accept": "application/json",
"Cookie": "JSESSIONID=SESSION_ID"
}
};
const req = http.request(options, function (res) {
const chunks = [];
res.on("data", function (chunk) {
chunks.push(chunk);
});
res.on("end", function () {
const body = Buffer.concat(chunks);
console.log(body.toString());
});
});
req.write(JSON.stringify({
enabled: true,
maxChannels: 0,
abilitazione: {id: 0, descrizione: 'string'},
ringTimeout: 0
}));
req.end();
import http.client
conn = http.client.HTTPSConnection("tvox_host")
payload = "{\"enabled\":true,\"maxChannels\":0,\"abilitazione\":{\"id\":0,\"descrizione\":\"string\"},\"ringTimeout\":0}"
headers = {
'Content-Type': "application/json",
'Accept': "application/json",
'Cookie': "JSESSIONID=SESSION_ID"
}
conn.request("PUT", "/tvox/rest/powerdialer/phone/conf", payload, headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
require 'uri'
require 'net/http'
require 'openssl'
url = URI("https://tvox_host/tvox/rest/powerdialer/phone/conf")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
http.verify_mode = OpenSSL::SSL::VERIFY_NONE
request = Net::HTTP::Put.new(url)
request["Content-Type"] = 'application/json'
request["Accept"] = 'application/json'
request["Cookie"] = 'JSESSIONID=SESSION_ID'
request.body = "{\"enabled\":true,\"maxChannels\":0,\"abilitazione\":{\"id\":0,\"descrizione\":\"string\"},\"ringTimeout\":0}"
response = http.request(request)
puts response.read_body
PUT /rest/powerdialer/phone/conf
Parameters
Body parameter
{
"enabled": true,
"maxChannels": 0,
"abilitazione": {
"id": 0,
"descrizione": "string"
},
"ringTimeout": 0
}
Name | In | Type | Required | Description |
---|---|---|---|---|
body | body | PDConf | true | General settings to update |
Responses
Example responses
default Response
{
"enabled": true,
"maxChannels": 0,
"abilitazione": {
"id": 0,
"descrizione": "string"
},
"ringTimeout": 0
}
Status | Meaning | Description | Schema |
---|---|---|---|
401 | Unauthorized | Error: Authorization required. Request is not authenticated or current user session is expired | None |
412 | Precondition Failed | Error: Object required. A required field is missing or empty | None |
510 | Unknown | Error: License exceeded. | None |
default | Default | Updated general settings | PDConf |
Get list
Code samples
GET /tvox/rest/powerdialer/phone/list/0 HTTP/1.1
Accept: application/json
Cookie: JSESSIONID=SESSION_ID
Host: tvox_host
<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://tvox_host/tvox/rest/powerdialer/phone/list/0",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Accept: application/json",
"Cookie: JSESSIONID=SESSION_ID"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}
curl --request GET \
--url https://tvox_host/tvox/rest/powerdialer/phone/list/0 \
--header 'Accept: application/json' \
--header 'Cookie: JSESSIONID=SESSION_ID'
HttpResponse<String> response = Unirest.get("https://tvox_host/tvox/rest/powerdialer/phone/list/0")
.header("Accept", "application/json")
.header("Cookie", "JSESSIONID=SESSION_ID")
.asString();
package main
import (
"fmt"
"net/http"
"io/ioutil"
)
func main() {
url := "https://tvox_host/tvox/rest/powerdialer/phone/list/0"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Accept", "application/json")
req.Header.Add("Cookie", "JSESSIONID=SESSION_ID")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}
const data = null;
const xhr = new XMLHttpRequest();
xhr.withCredentials = true;
xhr.addEventListener("readystatechange", function () {
if (this.readyState === this.DONE) {
console.log(this.responseText);
}
});
xhr.open("GET", "https://tvox_host/tvox/rest/powerdialer/phone/list/0");
xhr.setRequestHeader("Accept", "application/json");
xhr.setRequestHeader("Cookie", "JSESSIONID=SESSION_ID");
xhr.send(data);
const http = require("https");
const options = {
"method": "GET",
"hostname": "tvox_host",
"port": null,
"path": "/tvox/rest/powerdialer/phone/list/0",
"headers": {
"Accept": "application/json",
"Cookie": "JSESSIONID=SESSION_ID"
}
};
const req = http.request(options, function (res) {
const chunks = [];
res.on("data", function (chunk) {
chunks.push(chunk);
});
res.on("end", function () {
const body = Buffer.concat(chunks);
console.log(body.toString());
});
});
req.end();
import http.client
conn = http.client.HTTPSConnection("tvox_host")
headers = {
'Accept': "application/json",
'Cookie': "JSESSIONID=SESSION_ID"
}
conn.request("GET", "/tvox/rest/powerdialer/phone/list/0", headers=headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
require 'uri'
require 'net/http'
require 'openssl'
url = URI("https://tvox_host/tvox/rest/powerdialer/phone/list/0")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
http.verify_mode = OpenSSL::SSL::VERIFY_NONE
request = Net::HTTP::Get.new(url)
request["Accept"] = 'application/json'
request["Cookie"] = 'JSESSIONID=SESSION_ID'
response = http.request(request)
puts response.read_body
GET /rest/powerdialer/phone/list/{id}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
id | path | integer(int32) | true | List id |
Responses
Example responses
default Response
{
"id": 0,
"name": "string",
"voicemailEnabled": true,
"noAnswerAttempts": 0,
"noAnswerTimeout": 0,
"busyAttempts": 0,
"busyTimeout": 0,
"cancelAttempts": 0,
"cancelTimeout": 0,
"congestionAttempts": 0,
"congestionTimeout": 0,
"voicemailAttempts": 0,
"voicemailTimeout": 0,
"tvoxClosedAttempts": 0,
"tvoxClosedTimeout": 0
}
Status | Meaning | Description | Schema |
---|---|---|---|
401 | Unauthorized | Error: Authorization required. Request is not authenticated or current user session is expired | None |
404 | Not Found | Error: Object was not found. | None |
412 | Precondition Failed | Error: Object required. A required field is missing or empty | None |
default | Default | Requested list | PDList |
Delete list
Code samples
DELETE /tvox/rest/powerdialer/phone/list/0 HTTP/1.1
Accept: application/json
Cookie: JSESSIONID=SESSION_ID
Host: tvox_host
<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://tvox_host/tvox/rest/powerdialer/phone/list/0",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "DELETE",
CURLOPT_HTTPHEADER => [
"Accept: application/json",
"Cookie: JSESSIONID=SESSION_ID"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}
curl --request DELETE \
--url https://tvox_host/tvox/rest/powerdialer/phone/list/0 \
--header 'Accept: application/json' \
--header 'Cookie: JSESSIONID=SESSION_ID'
HttpResponse<String> response = Unirest.delete("https://tvox_host/tvox/rest/powerdialer/phone/list/0")
.header("Accept", "application/json")
.header("Cookie", "JSESSIONID=SESSION_ID")
.asString();
package main
import (
"fmt"
"net/http"
"io/ioutil"
)
func main() {
url := "https://tvox_host/tvox/rest/powerdialer/phone/list/0"
req, _ := http.NewRequest("DELETE", url, nil)
req.Header.Add("Accept", "application/json")
req.Header.Add("Cookie", "JSESSIONID=SESSION_ID")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}
const data = null;
const xhr = new XMLHttpRequest();
xhr.withCredentials = true;
xhr.addEventListener("readystatechange", function () {
if (this.readyState === this.DONE) {
console.log(this.responseText);
}
});
xhr.open("DELETE", "https://tvox_host/tvox/rest/powerdialer/phone/list/0");
xhr.setRequestHeader("Accept", "application/json");
xhr.setRequestHeader("Cookie", "JSESSIONID=SESSION_ID");
xhr.send(data);
const http = require("https");
const options = {
"method": "DELETE",
"hostname": "tvox_host",
"port": null,
"path": "/tvox/rest/powerdialer/phone/list/0",
"headers": {
"Accept": "application/json",
"Cookie": "JSESSIONID=SESSION_ID"
}
};
const req = http.request(options, function (res) {
const chunks = [];
res.on("data", function (chunk) {
chunks.push(chunk);
});
res.on("end", function () {
const body = Buffer.concat(chunks);
console.log(body.toString());
});
});
req.end();
import http.client
conn = http.client.HTTPSConnection("tvox_host")
headers = {
'Accept': "application/json",
'Cookie': "JSESSIONID=SESSION_ID"
}
conn.request("DELETE", "/tvox/rest/powerdialer/phone/list/0", headers=headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
require 'uri'
require 'net/http'
require 'openssl'
url = URI("https://tvox_host/tvox/rest/powerdialer/phone/list/0")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
http.verify_mode = OpenSSL::SSL::VERIFY_NONE
request = Net::HTTP::Delete.new(url)
request["Accept"] = 'application/json'
request["Cookie"] = 'JSESSIONID=SESSION_ID'
response = http.request(request)
puts response.read_body
DELETE /rest/powerdialer/phone/list/{id}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
id | path | integer(int32) | true | List id |
Responses
Example responses
default Response
true
Status | Meaning | Description | Schema |
---|---|---|---|
401 | Unauthorized | Error: Authorization required. Request is not authenticated or current user session is expired | None |
403 | Forbidden | Error: Object is in use by another object. | None |
404 | Not Found | Error: Object was not found. | None |
412 | Precondition Failed | Error: Object required. A required field is missing or empty | None |
default | Default | List deleted | boolean |
Update list
Code samples
PUT /tvox/rest/powerdialer/phone/list HTTP/1.1
Content-Type: application/json
Accept: application/json
Cookie: JSESSIONID=SESSION_ID
Host: tvox_host
Content-Length: 292
{"id":0,"name":"string","voicemailEnabled":true,"noAnswerAttempts":0,"noAnswerTimeout":0,"busyAttempts":0,"busyTimeout":0,"cancelAttempts":0,"cancelTimeout":0,"congestionAttempts":0,"congestionTimeout":0,"voicemailAttempts":0,"voicemailTimeout":0,"tvoxClosedAttempts":0,"tvoxClosedTimeout":0}
<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://tvox_host/tvox/rest/powerdialer/phone/list",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PUT",
CURLOPT_POSTFIELDS => "{\"id\":0,\"name\":\"string\",\"voicemailEnabled\":true,\"noAnswerAttempts\":0,\"noAnswerTimeout\":0,\"busyAttempts\":0,\"busyTimeout\":0,\"cancelAttempts\":0,\"cancelTimeout\":0,\"congestionAttempts\":0,\"congestionTimeout\":0,\"voicemailAttempts\":0,\"voicemailTimeout\":0,\"tvoxClosedAttempts\":0,\"tvoxClosedTimeout\":0}",
CURLOPT_HTTPHEADER => [
"Accept: application/json",
"Content-Type: application/json",
"Cookie: JSESSIONID=SESSION_ID"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}
curl --request PUT \
--url https://tvox_host/tvox/rest/powerdialer/phone/list \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--header 'Cookie: JSESSIONID=SESSION_ID' \
--data '{"id":0,"name":"string","voicemailEnabled":true,"noAnswerAttempts":0,"noAnswerTimeout":0,"busyAttempts":0,"busyTimeout":0,"cancelAttempts":0,"cancelTimeout":0,"congestionAttempts":0,"congestionTimeout":0,"voicemailAttempts":0,"voicemailTimeout":0,"tvoxClosedAttempts":0,"tvoxClosedTimeout":0}'
HttpResponse<String> response = Unirest.put("https://tvox_host/tvox/rest/powerdialer/phone/list")
.header("Content-Type", "application/json")
.header("Accept", "application/json")
.header("Cookie", "JSESSIONID=SESSION_ID")
.body("{\"id\":0,\"name\":\"string\",\"voicemailEnabled\":true,\"noAnswerAttempts\":0,\"noAnswerTimeout\":0,\"busyAttempts\":0,\"busyTimeout\":0,\"cancelAttempts\":0,\"cancelTimeout\":0,\"congestionAttempts\":0,\"congestionTimeout\":0,\"voicemailAttempts\":0,\"voicemailTimeout\":0,\"tvoxClosedAttempts\":0,\"tvoxClosedTimeout\":0}")
.asString();
package main
import (
"fmt"
"strings"
"net/http"
"io/ioutil"
)
func main() {
url := "https://tvox_host/tvox/rest/powerdialer/phone/list"
payload := strings.NewReader("{\"id\":0,\"name\":\"string\",\"voicemailEnabled\":true,\"noAnswerAttempts\":0,\"noAnswerTimeout\":0,\"busyAttempts\":0,\"busyTimeout\":0,\"cancelAttempts\":0,\"cancelTimeout\":0,\"congestionAttempts\":0,\"congestionTimeout\":0,\"voicemailAttempts\":0,\"voicemailTimeout\":0,\"tvoxClosedAttempts\":0,\"tvoxClosedTimeout\":0}")
req, _ := http.NewRequest("PUT", url, payload)
req.Header.Add("Content-Type", "application/json")
req.Header.Add("Accept", "application/json")
req.Header.Add("Cookie", "JSESSIONID=SESSION_ID")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}
const data = JSON.stringify({
"id": 0,
"name": "string",
"voicemailEnabled": true,
"noAnswerAttempts": 0,
"noAnswerTimeout": 0,
"busyAttempts": 0,
"busyTimeout": 0,
"cancelAttempts": 0,
"cancelTimeout": 0,
"congestionAttempts": 0,
"congestionTimeout": 0,
"voicemailAttempts": 0,
"voicemailTimeout": 0,
"tvoxClosedAttempts": 0,
"tvoxClosedTimeout": 0
});
const xhr = new XMLHttpRequest();
xhr.withCredentials = true;
xhr.addEventListener("readystatechange", function () {
if (this.readyState === this.DONE) {
console.log(this.responseText);
}
});
xhr.open("PUT", "https://tvox_host/tvox/rest/powerdialer/phone/list");
xhr.setRequestHeader("Content-Type", "application/json");
xhr.setRequestHeader("Accept", "application/json");
xhr.setRequestHeader("Cookie", "JSESSIONID=SESSION_ID");
xhr.send(data);
const http = require("https");
const options = {
"method": "PUT",
"hostname": "tvox_host",
"port": null,
"path": "/tvox/rest/powerdialer/phone/list",
"headers": {
"Content-Type": "application/json",
"Accept": "application/json",
"Cookie": "JSESSIONID=SESSION_ID"
}
};
const req = http.request(options, function (res) {
const chunks = [];
res.on("data", function (chunk) {
chunks.push(chunk);
});
res.on("end", function () {
const body = Buffer.concat(chunks);
console.log(body.toString());
});
});
req.write(JSON.stringify({
id: 0,
name: 'string',
voicemailEnabled: true,
noAnswerAttempts: 0,
noAnswerTimeout: 0,
busyAttempts: 0,
busyTimeout: 0,
cancelAttempts: 0,
cancelTimeout: 0,
congestionAttempts: 0,
congestionTimeout: 0,
voicemailAttempts: 0,
voicemailTimeout: 0,
tvoxClosedAttempts: 0,
tvoxClosedTimeout: 0
}));
req.end();
import http.client
conn = http.client.HTTPSConnection("tvox_host")
payload = "{\"id\":0,\"name\":\"string\",\"voicemailEnabled\":true,\"noAnswerAttempts\":0,\"noAnswerTimeout\":0,\"busyAttempts\":0,\"busyTimeout\":0,\"cancelAttempts\":0,\"cancelTimeout\":0,\"congestionAttempts\":0,\"congestionTimeout\":0,\"voicemailAttempts\":0,\"voicemailTimeout\":0,\"tvoxClosedAttempts\":0,\"tvoxClosedTimeout\":0}"
headers = {
'Content-Type': "application/json",
'Accept': "application/json",
'Cookie': "JSESSIONID=SESSION_ID"
}
conn.request("PUT", "/tvox/rest/powerdialer/phone/list", payload, headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
require 'uri'
require 'net/http'
require 'openssl'
url = URI("https://tvox_host/tvox/rest/powerdialer/phone/list")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
http.verify_mode = OpenSSL::SSL::VERIFY_NONE
request = Net::HTTP::Put.new(url)
request["Content-Type"] = 'application/json'
request["Accept"] = 'application/json'
request["Cookie"] = 'JSESSIONID=SESSION_ID'
request.body = "{\"id\":0,\"name\":\"string\",\"voicemailEnabled\":true,\"noAnswerAttempts\":0,\"noAnswerTimeout\":0,\"busyAttempts\":0,\"busyTimeout\":0,\"cancelAttempts\":0,\"cancelTimeout\":0,\"congestionAttempts\":0,\"congestionTimeout\":0,\"voicemailAttempts\":0,\"voicemailTimeout\":0,\"tvoxClosedAttempts\":0,\"tvoxClosedTimeout\":0}"
response = http.request(request)
puts response.read_body
PUT /rest/powerdialer/phone/list
Parameters
Body parameter
{
"id": 0,
"name": "string",
"voicemailEnabled": true,
"noAnswerAttempts": 0,
"noAnswerTimeout": 0,
"busyAttempts": 0,
"busyTimeout": 0,
"cancelAttempts": 0,
"cancelTimeout": 0,
"congestionAttempts": 0,
"congestionTimeout": 0,
"voicemailAttempts": 0,
"voicemailTimeout": 0,
"tvoxClosedAttempts": 0,
"tvoxClosedTimeout": 0
}
Name | In | Type | Required | Description |
---|---|---|---|---|
body | body | PDList | true | List to update |
Responses
Example responses
default Response
{
"id": 0,
"name": "string",
"voicemailEnabled": true,
"noAnswerAttempts": 0,
"noAnswerTimeout": 0,
"busyAttempts": 0,
"busyTimeout": 0,
"cancelAttempts": 0,
"cancelTimeout": 0,
"congestionAttempts": 0,
"congestionTimeout": 0,
"voicemailAttempts": 0,
"voicemailTimeout": 0,
"tvoxClosedAttempts": 0,
"tvoxClosedTimeout": 0
}
Status | Meaning | Description | Schema |
---|---|---|---|
401 | Unauthorized | Error: Authorization required. Request is not authenticated or current user session is expired | None |
404 | Not Found | Error: Object was not found. | None |
412 | Precondition Failed | Error: Object required. A required field is missing or empty | None |
default | Default | Updated list | PDList |
Create list
Code samples
POST /tvox/rest/powerdialer/phone/list HTTP/1.1
Content-Type: application/json
Accept: application/json
Cookie: JSESSIONID=SESSION_ID
Host: tvox_host
Content-Length: 292
{"id":0,"name":"string","voicemailEnabled":true,"noAnswerAttempts":0,"noAnswerTimeout":0,"busyAttempts":0,"busyTimeout":0,"cancelAttempts":0,"cancelTimeout":0,"congestionAttempts":0,"congestionTimeout":0,"voicemailAttempts":0,"voicemailTimeout":0,"tvoxClosedAttempts":0,"tvoxClosedTimeout":0}
<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://tvox_host/tvox/rest/powerdialer/phone/list",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => "{\"id\":0,\"name\":\"string\",\"voicemailEnabled\":true,\"noAnswerAttempts\":0,\"noAnswerTimeout\":0,\"busyAttempts\":0,\"busyTimeout\":0,\"cancelAttempts\":0,\"cancelTimeout\":0,\"congestionAttempts\":0,\"congestionTimeout\":0,\"voicemailAttempts\":0,\"voicemailTimeout\":0,\"tvoxClosedAttempts\":0,\"tvoxClosedTimeout\":0}",
CURLOPT_HTTPHEADER => [
"Accept: application/json",
"Content-Type: application/json",
"Cookie: JSESSIONID=SESSION_ID"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}
curl --request POST \
--url https://tvox_host/tvox/rest/powerdialer/phone/list \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--header 'Cookie: JSESSIONID=SESSION_ID' \
--data '{"id":0,"name":"string","voicemailEnabled":true,"noAnswerAttempts":0,"noAnswerTimeout":0,"busyAttempts":0,"busyTimeout":0,"cancelAttempts":0,"cancelTimeout":0,"congestionAttempts":0,"congestionTimeout":0,"voicemailAttempts":0,"voicemailTimeout":0,"tvoxClosedAttempts":0,"tvoxClosedTimeout":0}'
HttpResponse<String> response = Unirest.post("https://tvox_host/tvox/rest/powerdialer/phone/list")
.header("Content-Type", "application/json")
.header("Accept", "application/json")
.header("Cookie", "JSESSIONID=SESSION_ID")
.body("{\"id\":0,\"name\":\"string\",\"voicemailEnabled\":true,\"noAnswerAttempts\":0,\"noAnswerTimeout\":0,\"busyAttempts\":0,\"busyTimeout\":0,\"cancelAttempts\":0,\"cancelTimeout\":0,\"congestionAttempts\":0,\"congestionTimeout\":0,\"voicemailAttempts\":0,\"voicemailTimeout\":0,\"tvoxClosedAttempts\":0,\"tvoxClosedTimeout\":0}")
.asString();
package main
import (
"fmt"
"strings"
"net/http"
"io/ioutil"
)
func main() {
url := "https://tvox_host/tvox/rest/powerdialer/phone/list"
payload := strings.NewReader("{\"id\":0,\"name\":\"string\",\"voicemailEnabled\":true,\"noAnswerAttempts\":0,\"noAnswerTimeout\":0,\"busyAttempts\":0,\"busyTimeout\":0,\"cancelAttempts\":0,\"cancelTimeout\":0,\"congestionAttempts\":0,\"congestionTimeout\":0,\"voicemailAttempts\":0,\"voicemailTimeout\":0,\"tvoxClosedAttempts\":0,\"tvoxClosedTimeout\":0}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Content-Type", "application/json")
req.Header.Add("Accept", "application/json")
req.Header.Add("Cookie", "JSESSIONID=SESSION_ID")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}
const data = JSON.stringify({
"id": 0,
"name": "string",
"voicemailEnabled": true,
"noAnswerAttempts": 0,
"noAnswerTimeout": 0,
"busyAttempts": 0,
"busyTimeout": 0,
"cancelAttempts": 0,
"cancelTimeout": 0,
"congestionAttempts": 0,
"congestionTimeout": 0,
"voicemailAttempts": 0,
"voicemailTimeout": 0,
"tvoxClosedAttempts": 0,
"tvoxClosedTimeout": 0
});
const xhr = new XMLHttpRequest();
xhr.withCredentials = true;
xhr.addEventListener("readystatechange", function () {
if (this.readyState === this.DONE) {
console.log(this.responseText);
}
});
xhr.open("POST", "https://tvox_host/tvox/rest/powerdialer/phone/list");
xhr.setRequestHeader("Content-Type", "application/json");
xhr.setRequestHeader("Accept", "application/json");
xhr.setRequestHeader("Cookie", "JSESSIONID=SESSION_ID");
xhr.send(data);
const http = require("https");
const options = {
"method": "POST",
"hostname": "tvox_host",
"port": null,
"path": "/tvox/rest/powerdialer/phone/list",
"headers": {
"Content-Type": "application/json",
"Accept": "application/json",
"Cookie": "JSESSIONID=SESSION_ID"
}
};
const req = http.request(options, function (res) {
const chunks = [];
res.on("data", function (chunk) {
chunks.push(chunk);
});
res.on("end", function () {
const body = Buffer.concat(chunks);
console.log(body.toString());
});
});
req.write(JSON.stringify({
id: 0,
name: 'string',
voicemailEnabled: true,
noAnswerAttempts: 0,
noAnswerTimeout: 0,
busyAttempts: 0,
busyTimeout: 0,
cancelAttempts: 0,
cancelTimeout: 0,
congestionAttempts: 0,
congestionTimeout: 0,
voicemailAttempts: 0,
voicemailTimeout: 0,
tvoxClosedAttempts: 0,
tvoxClosedTimeout: 0
}));
req.end();
import http.client
conn = http.client.HTTPSConnection("tvox_host")
payload = "{\"id\":0,\"name\":\"string\",\"voicemailEnabled\":true,\"noAnswerAttempts\":0,\"noAnswerTimeout\":0,\"busyAttempts\":0,\"busyTimeout\":0,\"cancelAttempts\":0,\"cancelTimeout\":0,\"congestionAttempts\":0,\"congestionTimeout\":0,\"voicemailAttempts\":0,\"voicemailTimeout\":0,\"tvoxClosedAttempts\":0,\"tvoxClosedTimeout\":0}"
headers = {
'Content-Type': "application/json",
'Accept': "application/json",
'Cookie': "JSESSIONID=SESSION_ID"
}
conn.request("POST", "/tvox/rest/powerdialer/phone/list", payload, headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
require 'uri'
require 'net/http'
require 'openssl'
url = URI("https://tvox_host/tvox/rest/powerdialer/phone/list")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
http.verify_mode = OpenSSL::SSL::VERIFY_NONE
request = Net::HTTP::Post.new(url)
request["Content-Type"] = 'application/json'
request["Accept"] = 'application/json'
request["Cookie"] = 'JSESSIONID=SESSION_ID'
request.body = "{\"id\":0,\"name\":\"string\",\"voicemailEnabled\":true,\"noAnswerAttempts\":0,\"noAnswerTimeout\":0,\"busyAttempts\":0,\"busyTimeout\":0,\"cancelAttempts\":0,\"cancelTimeout\":0,\"congestionAttempts\":0,\"congestionTimeout\":0,\"voicemailAttempts\":0,\"voicemailTimeout\":0,\"tvoxClosedAttempts\":0,\"tvoxClosedTimeout\":0}"
response = http.request(request)
puts response.read_body
POST /rest/powerdialer/phone/list
Parameters
Body parameter
{
"id": 0,
"name": "string",
"voicemailEnabled": true,
"noAnswerAttempts": 0,
"noAnswerTimeout": 0,
"busyAttempts": 0,
"busyTimeout": 0,
"cancelAttempts": 0,
"cancelTimeout": 0,
"congestionAttempts": 0,
"congestionTimeout": 0,
"voicemailAttempts": 0,
"voicemailTimeout": 0,
"tvoxClosedAttempts": 0,
"tvoxClosedTimeout": 0
}
Name | In | Type | Required | Description |
---|---|---|---|---|
body | body | PDList | true | List to create |
Responses
Example responses
default Response
{
"id": 0,
"name": "string",
"voicemailEnabled": true,
"noAnswerAttempts": 0,
"noAnswerTimeout": 0,
"busyAttempts": 0,
"busyTimeout": 0,
"cancelAttempts": 0,
"cancelTimeout": 0,
"congestionAttempts": 0,
"congestionTimeout": 0,
"voicemailAttempts": 0,
"voicemailTimeout": 0,
"tvoxClosedAttempts": 0,
"tvoxClosedTimeout": 0
}
Status | Meaning | Description | Schema |
---|---|---|---|
401 | Unauthorized | Error: Authorization required. Request is not authenticated or current user session is expired | None |
409 | Conflict | Error: Object already exists. | None |
default | Default | Created list | PDList |
Get campaign
Code samples
GET /tvox/rest/powerdialer/phone/campaign/0 HTTP/1.1
Accept: application/json
Cookie: JSESSIONID=SESSION_ID
Host: tvox_host
<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://tvox_host/tvox/rest/powerdialer/phone/campaign/0",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Accept: application/json",
"Cookie: JSESSIONID=SESSION_ID"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}
curl --request GET \
--url https://tvox_host/tvox/rest/powerdialer/phone/campaign/0 \
--header 'Accept: application/json' \
--header 'Cookie: JSESSIONID=SESSION_ID'
HttpResponse<String> response = Unirest.get("https://tvox_host/tvox/rest/powerdialer/phone/campaign/0")
.header("Accept", "application/json")
.header("Cookie", "JSESSIONID=SESSION_ID")
.asString();
package main
import (
"fmt"
"net/http"
"io/ioutil"
)
func main() {
url := "https://tvox_host/tvox/rest/powerdialer/phone/campaign/0"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Accept", "application/json")
req.Header.Add("Cookie", "JSESSIONID=SESSION_ID")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}
const data = null;
const xhr = new XMLHttpRequest();
xhr.withCredentials = true;
xhr.addEventListener("readystatechange", function () {
if (this.readyState === this.DONE) {
console.log(this.responseText);
}
});
xhr.open("GET", "https://tvox_host/tvox/rest/powerdialer/phone/campaign/0");
xhr.setRequestHeader("Accept", "application/json");
xhr.setRequestHeader("Cookie", "JSESSIONID=SESSION_ID");
xhr.send(data);
const http = require("https");
const options = {
"method": "GET",
"hostname": "tvox_host",
"port": null,
"path": "/tvox/rest/powerdialer/phone/campaign/0",
"headers": {
"Accept": "application/json",
"Cookie": "JSESSIONID=SESSION_ID"
}
};
const req = http.request(options, function (res) {
const chunks = [];
res.on("data", function (chunk) {
chunks.push(chunk);
});
res.on("end", function () {
const body = Buffer.concat(chunks);
console.log(body.toString());
});
});
req.end();
import http.client
conn = http.client.HTTPSConnection("tvox_host")
headers = {
'Accept': "application/json",
'Cookie': "JSESSIONID=SESSION_ID"
}
conn.request("GET", "/tvox/rest/powerdialer/phone/campaign/0", headers=headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
require 'uri'
require 'net/http'
require 'openssl'
url = URI("https://tvox_host/tvox/rest/powerdialer/phone/campaign/0")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
http.verify_mode = OpenSSL::SSL::VERIFY_NONE
request = Net::HTTP::Get.new(url)
request["Accept"] = 'application/json'
request["Cookie"] = 'JSESSIONID=SESSION_ID'
response = http.request(request)
puts response.read_body
GET /rest/powerdialer/phone/campaign/{id}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
id | path | integer(int32) | true | Campaign id |
Responses
Example responses
default Response
{
"id": 0,
"name": "string",
"enabled": true,
"startDate": "2019-08-24T14:15:22Z",
"endDate": "2019-08-24T14:15:22Z",
"priority": 1,
"abilitazioneId": 0,
"reservedChannels": 0,
"busyChannels": 0,
"busyChannelsType": "PRESENT",
"serviceCode": "string",
"lists": [
{
"enabled": true,
"priority": 0,
"listId": 0
}
]
}
Status | Meaning | Description | Schema |
---|---|---|---|
401 | Unauthorized | Error: Authorization required. Request is not authenticated or current user session is expired | None |
404 | Not Found | Error: Object was not found. | None |
412 | Precondition Failed | Error: Object required. A required field is missing or empty | None |
default | Default | Requested campaign | PDCampaign |
Delete campaign
Code samples
DELETE /tvox/rest/powerdialer/phone/campaign/0 HTTP/1.1
Accept: application/json
Cookie: JSESSIONID=SESSION_ID
Host: tvox_host
<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://tvox_host/tvox/rest/powerdialer/phone/campaign/0",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "DELETE",
CURLOPT_HTTPHEADER => [
"Accept: application/json",
"Cookie: JSESSIONID=SESSION_ID"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}
curl --request DELETE \
--url https://tvox_host/tvox/rest/powerdialer/phone/campaign/0 \
--header 'Accept: application/json' \
--header 'Cookie: JSESSIONID=SESSION_ID'
HttpResponse<String> response = Unirest.delete("https://tvox_host/tvox/rest/powerdialer/phone/campaign/0")
.header("Accept", "application/json")
.header("Cookie", "JSESSIONID=SESSION_ID")
.asString();
package main
import (
"fmt"
"net/http"
"io/ioutil"
)
func main() {
url := "https://tvox_host/tvox/rest/powerdialer/phone/campaign/0"
req, _ := http.NewRequest("DELETE", url, nil)
req.Header.Add("Accept", "application/json")
req.Header.Add("Cookie", "JSESSIONID=SESSION_ID")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}
const data = null;
const xhr = new XMLHttpRequest();
xhr.withCredentials = true;
xhr.addEventListener("readystatechange", function () {
if (this.readyState === this.DONE) {
console.log(this.responseText);
}
});
xhr.open("DELETE", "https://tvox_host/tvox/rest/powerdialer/phone/campaign/0");
xhr.setRequestHeader("Accept", "application/json");
xhr.setRequestHeader("Cookie", "JSESSIONID=SESSION_ID");
xhr.send(data);
const http = require("https");
const options = {
"method": "DELETE",
"hostname": "tvox_host",
"port": null,
"path": "/tvox/rest/powerdialer/phone/campaign/0",
"headers": {
"Accept": "application/json",
"Cookie": "JSESSIONID=SESSION_ID"
}
};
const req = http.request(options, function (res) {
const chunks = [];
res.on("data", function (chunk) {
chunks.push(chunk);
});
res.on("end", function () {
const body = Buffer.concat(chunks);
console.log(body.toString());
});
});
req.end();
import http.client
conn = http.client.HTTPSConnection("tvox_host")
headers = {
'Accept': "application/json",
'Cookie': "JSESSIONID=SESSION_ID"
}
conn.request("DELETE", "/tvox/rest/powerdialer/phone/campaign/0", headers=headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
require 'uri'
require 'net/http'
require 'openssl'
url = URI("https://tvox_host/tvox/rest/powerdialer/phone/campaign/0")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
http.verify_mode = OpenSSL::SSL::VERIFY_NONE
request = Net::HTTP::Delete.new(url)
request["Accept"] = 'application/json'
request["Cookie"] = 'JSESSIONID=SESSION_ID'
response = http.request(request)
puts response.read_body
DELETE /rest/powerdialer/phone/campaign/{id}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
id | path | integer(int32) | true | Campaign id |
Responses
Example responses
default Response
true
Status | Meaning | Description | Schema |
---|---|---|---|
401 | Unauthorized | Error: Authorization required. Request is not authenticated or current user session is expired | None |
404 | Not Found | Error: Object was not found. | None |
412 | Precondition Failed | Error: Object required. A required field is missing or empty | None |
default | Default | Campaign deleted | boolean |
Stop campaign
Code samples
POST /tvox/rest/powerdialer/phone/campaign/stop/0 HTTP/1.1
Accept: application/json
Cookie: JSESSIONID=SESSION_ID
Host: tvox_host
<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://tvox_host/tvox/rest/powerdialer/phone/campaign/stop/0",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_HTTPHEADER => [
"Accept: application/json",
"Cookie: JSESSIONID=SESSION_ID"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}
curl --request POST \
--url https://tvox_host/tvox/rest/powerdialer/phone/campaign/stop/0 \
--header 'Accept: application/json' \
--header 'Cookie: JSESSIONID=SESSION_ID'
HttpResponse<String> response = Unirest.post("https://tvox_host/tvox/rest/powerdialer/phone/campaign/stop/0")
.header("Accept", "application/json")
.header("Cookie", "JSESSIONID=SESSION_ID")
.asString();
package main
import (
"fmt"
"net/http"
"io/ioutil"
)
func main() {
url := "https://tvox_host/tvox/rest/powerdialer/phone/campaign/stop/0"
req, _ := http.NewRequest("POST", url, nil)
req.Header.Add("Accept", "application/json")
req.Header.Add("Cookie", "JSESSIONID=SESSION_ID")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}
const data = null;
const xhr = new XMLHttpRequest();
xhr.withCredentials = true;
xhr.addEventListener("readystatechange", function () {
if (this.readyState === this.DONE) {
console.log(this.responseText);
}
});
xhr.open("POST", "https://tvox_host/tvox/rest/powerdialer/phone/campaign/stop/0");
xhr.setRequestHeader("Accept", "application/json");
xhr.setRequestHeader("Cookie", "JSESSIONID=SESSION_ID");
xhr.send(data);
const http = require("https");
const options = {
"method": "POST",
"hostname": "tvox_host",
"port": null,
"path": "/tvox/rest/powerdialer/phone/campaign/stop/0",
"headers": {
"Accept": "application/json",
"Cookie": "JSESSIONID=SESSION_ID"
}
};
const req = http.request(options, function (res) {
const chunks = [];
res.on("data", function (chunk) {
chunks.push(chunk);
});
res.on("end", function () {
const body = Buffer.concat(chunks);
console.log(body.toString());
});
});
req.end();
import http.client
conn = http.client.HTTPSConnection("tvox_host")
headers = {
'Accept': "application/json",
'Cookie': "JSESSIONID=SESSION_ID"
}
conn.request("POST", "/tvox/rest/powerdialer/phone/campaign/stop/0", headers=headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
require 'uri'
require 'net/http'
require 'openssl'
url = URI("https://tvox_host/tvox/rest/powerdialer/phone/campaign/stop/0")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
http.verify_mode = OpenSSL::SSL::VERIFY_NONE
request = Net::HTTP::Post.new(url)
request["Accept"] = 'application/json'
request["Cookie"] = 'JSESSIONID=SESSION_ID'
response = http.request(request)
puts response.read_body
POST /rest/powerdialer/phone/campaign/stop/{id}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
id | path | integer(int32) | true | Campaign id |
resetStats | query | boolean | false | Reset campaign stats after stop |
Responses
Example responses
default Response
true
Status | Meaning | Description | Schema |
---|---|---|---|
401 | Unauthorized | Error: Authorization required. Request is not authenticated or current user session is expired | None |
404 | Not Found | Error: Object was not found. | None |
412 | Precondition Failed | Error: Object required. A required field is missing or empty | None |
default | Default | Campaign stopped | boolean |
Start campaign
Code samples
POST /tvox/rest/powerdialer/phone/campaign/start/0 HTTP/1.1
Accept: application/json
Cookie: JSESSIONID=SESSION_ID
Host: tvox_host
<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://tvox_host/tvox/rest/powerdialer/phone/campaign/start/0",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_HTTPHEADER => [
"Accept: application/json",
"Cookie: JSESSIONID=SESSION_ID"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}
curl --request POST \
--url https://tvox_host/tvox/rest/powerdialer/phone/campaign/start/0 \
--header 'Accept: application/json' \
--header 'Cookie: JSESSIONID=SESSION_ID'
HttpResponse<String> response = Unirest.post("https://tvox_host/tvox/rest/powerdialer/phone/campaign/start/0")
.header("Accept", "application/json")
.header("Cookie", "JSESSIONID=SESSION_ID")
.asString();
package main
import (
"fmt"
"net/http"
"io/ioutil"
)
func main() {
url := "https://tvox_host/tvox/rest/powerdialer/phone/campaign/start/0"
req, _ := http.NewRequest("POST", url, nil)
req.Header.Add("Accept", "application/json")
req.Header.Add("Cookie", "JSESSIONID=SESSION_ID")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}
const data = null;
const xhr = new XMLHttpRequest();
xhr.withCredentials = true;
xhr.addEventListener("readystatechange", function () {
if (this.readyState === this.DONE) {
console.log(this.responseText);
}
});
xhr.open("POST", "https://tvox_host/tvox/rest/powerdialer/phone/campaign/start/0");
xhr.setRequestHeader("Accept", "application/json");
xhr.setRequestHeader("Cookie", "JSESSIONID=SESSION_ID");
xhr.send(data);
const http = require("https");
const options = {
"method": "POST",
"hostname": "tvox_host",
"port": null,
"path": "/tvox/rest/powerdialer/phone/campaign/start/0",
"headers": {
"Accept": "application/json",
"Cookie": "JSESSIONID=SESSION_ID"
}
};
const req = http.request(options, function (res) {
const chunks = [];
res.on("data", function (chunk) {
chunks.push(chunk);
});
res.on("end", function () {
const body = Buffer.concat(chunks);
console.log(body.toString());
});
});
req.end();
import http.client
conn = http.client.HTTPSConnection("tvox_host")
headers = {
'Accept': "application/json",
'Cookie': "JSESSIONID=SESSION_ID"
}
conn.request("POST", "/tvox/rest/powerdialer/phone/campaign/start/0", headers=headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
require 'uri'
require 'net/http'
require 'openssl'
url = URI("https://tvox_host/tvox/rest/powerdialer/phone/campaign/start/0")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
http.verify_mode = OpenSSL::SSL::VERIFY_NONE
request = Net::HTTP::Post.new(url)
request["Accept"] = 'application/json'
request["Cookie"] = 'JSESSIONID=SESSION_ID'
response = http.request(request)
puts response.read_body
POST /rest/powerdialer/phone/campaign/start/{id}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
id | path | integer(int32) | true | Campaign id |
resetStats | query | boolean | false | Reset campaign stats before start |
Responses
Example responses
default Response
true
Status | Meaning | Description | Schema |
---|---|---|---|
401 | Unauthorized | Error: Authorization required. Request is not authenticated or current user session is expired | None |
404 | Not Found | Error: Object was not found. | None |
412 | Precondition Failed | Error: Object required. A required field is missing or empty | None |
default | Default | Campaign started | boolean |
Search campaigns
Code samples
GET /tvox/rest/powerdialer/phone/campaign/search HTTP/1.1
Accept: application/json
Cookie: JSESSIONID=SESSION_ID
Host: tvox_host
<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://tvox_host/tvox/rest/powerdialer/phone/campaign/search",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Accept: application/json",
"Cookie: JSESSIONID=SESSION_ID"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}
curl --request GET \
--url https://tvox_host/tvox/rest/powerdialer/phone/campaign/search \
--header 'Accept: application/json' \
--header 'Cookie: JSESSIONID=SESSION_ID'
HttpResponse<String> response = Unirest.get("https://tvox_host/tvox/rest/powerdialer/phone/campaign/search")
.header("Accept", "application/json")
.header("Cookie", "JSESSIONID=SESSION_ID")
.asString();
package main
import (
"fmt"
"net/http"
"io/ioutil"
)
func main() {
url := "https://tvox_host/tvox/rest/powerdialer/phone/campaign/search"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Accept", "application/json")
req.Header.Add("Cookie", "JSESSIONID=SESSION_ID")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}
const data = null;
const xhr = new XMLHttpRequest();
xhr.withCredentials = true;
xhr.addEventListener("readystatechange", function () {
if (this.readyState === this.DONE) {
console.log(this.responseText);
}
});
xhr.open("GET", "https://tvox_host/tvox/rest/powerdialer/phone/campaign/search");
xhr.setRequestHeader("Accept", "application/json");
xhr.setRequestHeader("Cookie", "JSESSIONID=SESSION_ID");
xhr.send(data);
const http = require("https");
const options = {
"method": "GET",
"hostname": "tvox_host",
"port": null,
"path": "/tvox/rest/powerdialer/phone/campaign/search",
"headers": {
"Accept": "application/json",
"Cookie": "JSESSIONID=SESSION_ID"
}
};
const req = http.request(options, function (res) {
const chunks = [];
res.on("data", function (chunk) {
chunks.push(chunk);
});
res.on("end", function () {
const body = Buffer.concat(chunks);
console.log(body.toString());
});
});
req.end();
import http.client
conn = http.client.HTTPSConnection("tvox_host")
headers = {
'Accept': "application/json",
'Cookie': "JSESSIONID=SESSION_ID"
}
conn.request("GET", "/tvox/rest/powerdialer/phone/campaign/search", headers=headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
require 'uri'
require 'net/http'
require 'openssl'
url = URI("https://tvox_host/tvox/rest/powerdialer/phone/campaign/search")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
http.verify_mode = OpenSSL::SSL::VERIFY_NONE
request = Net::HTTP::Get.new(url)
request["Accept"] = 'application/json'
request["Cookie"] = 'JSESSIONID=SESSION_ID'
response = http.request(request)
puts response.read_body
GET /rest/powerdialer/phone/campaign/search
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
term | query | string | false | Term to search within the campaign id or name |
priority | query | integer(int32) | false | Campaign priority |
pageNumber | query | integer(int32) | false | Page number (must be greater than 0) |
pageSize | query | integer(int32) | false | Page size (must be greater than 0) |
Responses
Example responses
default Response
{
"tot": 0,
"result": [
{
"id": 0,
"name": "string",
"enabled": true,
"startDate": "2019-08-24T14:15:22Z",
"endDate": "2019-08-24T14:15:22Z",
"priority": 1,
"abilitazioneId": 0,
"reservedChannels": 0,
"busyChannels": 0,
"busyChannelsType": "PRESENT",
"serviceCode": "string",
"lists": [
{
"enabled": true,
"priority": 0,
"listId": 0
}
]
}
]
}
Status | Meaning | Description | Schema |
---|---|---|---|
401 | Unauthorized | Error: Authorization required. Request is not authenticated or current user session is expired | None |
default | Default | Searched campaigns | SearchResultPDCampaign |
Search lists
Code samples
GET /tvox/rest/powerdialer/phone/list/search HTTP/1.1
Accept: application/json
Cookie: JSESSIONID=SESSION_ID
Host: tvox_host
<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://tvox_host/tvox/rest/powerdialer/phone/list/search",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Accept: application/json",
"Cookie: JSESSIONID=SESSION_ID"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}
curl --request GET \
--url https://tvox_host/tvox/rest/powerdialer/phone/list/search \
--header 'Accept: application/json' \
--header 'Cookie: JSESSIONID=SESSION_ID'
HttpResponse<String> response = Unirest.get("https://tvox_host/tvox/rest/powerdialer/phone/list/search")
.header("Accept", "application/json")
.header("Cookie", "JSESSIONID=SESSION_ID")
.asString();
package main
import (
"fmt"
"net/http"
"io/ioutil"
)
func main() {
url := "https://tvox_host/tvox/rest/powerdialer/phone/list/search"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Accept", "application/json")
req.Header.Add("Cookie", "JSESSIONID=SESSION_ID")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}
const data = null;
const xhr = new XMLHttpRequest();
xhr.withCredentials = true;
xhr.addEventListener("readystatechange", function () {
if (this.readyState === this.DONE) {
console.log(this.responseText);
}
});
xhr.open("GET", "https://tvox_host/tvox/rest/powerdialer/phone/list/search");
xhr.setRequestHeader("Accept", "application/json");
xhr.setRequestHeader("Cookie", "JSESSIONID=SESSION_ID");
xhr.send(data);
const http = require("https");
const options = {
"method": "GET",
"hostname": "tvox_host",
"port": null,
"path": "/tvox/rest/powerdialer/phone/list/search",
"headers": {
"Accept": "application/json",
"Cookie": "JSESSIONID=SESSION_ID"
}
};
const req = http.request(options, function (res) {
const chunks = [];
res.on("data", function (chunk) {
chunks.push(chunk);
});
res.on("end", function () {
const body = Buffer.concat(chunks);
console.log(body.toString());
});
});
req.end();
import http.client
conn = http.client.HTTPSConnection("tvox_host")
headers = {
'Accept': "application/json",
'Cookie': "JSESSIONID=SESSION_ID"
}
conn.request("GET", "/tvox/rest/powerdialer/phone/list/search", headers=headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
require 'uri'
require 'net/http'
require 'openssl'
url = URI("https://tvox_host/tvox/rest/powerdialer/phone/list/search")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
http.verify_mode = OpenSSL::SSL::VERIFY_NONE
request = Net::HTTP::Get.new(url)
request["Accept"] = 'application/json'
request["Cookie"] = 'JSESSIONID=SESSION_ID'
response = http.request(request)
puts response.read_body
GET /rest/powerdialer/phone/list/search
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
term | query | string | false | Term to search within the list id or name |
pageNumber | query | integer(int32) | false | Page number (must be greater than 0) |
pageSize | query | integer(int32) | false | Page size (must be greater than 0) |
Responses
Example responses
default Response
{
"tot": 0,
"result": [
{
"id": 0,
"name": "string",
"voicemailEnabled": true,
"noAnswerAttempts": 0,
"noAnswerTimeout": 0,
"busyAttempts": 0,
"busyTimeout": 0,
"cancelAttempts": 0,
"cancelTimeout": 0,
"congestionAttempts": 0,
"congestionTimeout": 0,
"voicemailAttempts": 0,
"voicemailTimeout": 0,
"tvoxClosedAttempts": 0,
"tvoxClosedTimeout": 0
}
]
}
Status | Meaning | Description | Schema |
---|---|---|---|
401 | Unauthorized | Error: Authorization required. Request is not authenticated or current user session is expired | None |
default | Default | Searched lists | SearchResultPDList |
Schemas
APIVersion
TVox and API version
Properties
{
"tvoxVersion": "string",
"webapiVersion": "string"
}
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
tvoxVersion | string | false | none | TVox Version |
webapiVersion | string | false | none | API Version |
Language
Language
Properties
"IT"
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
anonymous | string | false | none | Language |
Enumerated Values
Property | Value |
---|---|
anonymous | IT |
anonymous | it_IT |
anonymous | EN |
anonymous | en_US |
LoginProfile
Logged user profile
Properties
{
"username": "string",
"surname": "string",
"name": "string",
"publicUsername": "string",
"accessToken": "string",
"sessionId": "string",
"status": "UNKNOWN",
"language": "IT",
"anonymous": true,
"pwdChangeable": true,
"chatUserId": "string",
"chatAuthToken": "string",
"chatUri": "string",
"profileRoles": [
"string"
],
"userPermissions": [
"SUPERUSER"
],
"logged": true
}
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
username | string | true | none | Username |
surname | string | false | none | none |
name | string | false | none | none |
publicUsername | string | true | none | Public username |
accessToken | string | true | none | Access Token |
sessionId | string | true | none | Session ID |
status | string | true | none | Login status |
language | Language | false | none | Language |
anonymous | boolean | true | none | Anonymous user |
pwdChangeable | boolean | true | none | Password changeable |
chatUserId | string | false | none | Chat user ID |
chatAuthToken | string | false | none | Chat auth token |
chatUri | string | false | none | Chat URI |
profileRoles | [string] | false | none | User roles |
userPermissions | [UserPermission] | false | none | User permissions |
logged | boolean | true | none | Logged |
Enumerated Values
Property | Value |
---|---|
status | UNKNOWN |
status | LOGGED |
status | NOTLOGGED |
status | RETRY |
status | REFRESH |
status | SOCKET_NOTLOGGED |
status | PASSWORD_EXPIRED |
status | SOCKET_CLOSED_REQUEST_FORCE |
status | SOCKET_CLOSED_BY_USER |
status | SOCKET_CLOSED_USER_NOT_ENABLED |
status | SOCKET_CLOSED_USER_NOT_ENABLED_MCS |
UserPermission
User permissions
Properties
"SUPERUSER"
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
anonymous | string | false | none | User permissions |
Enumerated Values
Property | Value |
---|---|
anonymous | SUPERUSER |
anonymous | SYSTEM_ADMIN |
anonymous | SUPERVISOR |
anonymous | UC_USERS |
anonymous | UC_SERVICES |
anonymous | UC_GROUP |
anonymous | CC_USERS |
anonymous | CC_SERVICES |
anonymous | CC_SKILLSET |
anonymous | ADDRESSBOOK |
anonymous | ACTIVITY_CODES |
anonymous | CALL_RESULTS |
anonymous | SURVEY |
anonymous | AUDIO |
anonymous | POPUP_MANAGER |
anonymous | MAIL_CHANNEL |
anonymous | FACEBOOK_CHANNEL |
anonymous | TWITTER_CHANNEL |
anonymous | TELEGRAM_CHANNEL |
anonymous | IVR |
anonymous | DEVICES |
anonymous | DIALPLAN_ROUTING |
anonymous | SHORT_NUMBERS |
anonymous | CONFERENCE |
anonymous | PICKUP_GROUPS |
anonymous | FAX |
anonymous | ADVANCED_SETTINGS |
anonymous | EMAIL_SETTINGS |
anonymous | WIDGET |
anonymous | CALENDAR |
anonymous | GRTD |
anonymous | CALL_NAVIGATOR |
anonymous | DOWNLOAD_FILE_AUDIO_RECORDED |
anonymous | CHAT_NAVIGATOR |
anonymous | TICKET_NAVIGATOR |
anonymous | VIDEO_NAVIGATOR |
anonymous | SEND_ADMIN_CHAT |
anonymous | RESET_PASSWORD |
anonymous | CHANSPY |
anonymous | KNOWLEDGEBASE_READ |
anonymous | KNOWLEDGEBASE_WRITE |
anonymous | SUPPORT_EMAIL_FILTER |
anonymous | REPORT_EXPORT |
anonymous | CUSTOM_CHANNEL_NAVIGATOR |
anonymous | INTRANET_CONFIG |
LoginRequest
Login with credentials request
Properties
{
"version": "string",
"username": "string",
"password": "string"
}
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
version | string | true | none | API version |
username | string | true | none | Username |
password | string | true | none | Password |
LoginByAccessTokenRequest
Login with access token request
Properties
{
"version": "string",
"accessToken": "string"
}
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
version | string | true | none | API version |
accessToken | string | true | none | Access Token |
PDInterfaceItem
Power Dialer List Item (contact)
Properties
{
"id": 0,
"itemNumber": 0,
"campaignId": 0,
"listId": 0,
"phoneNumber": "string",
"data": [
"string"
]
}
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
id | integer(int32) | true | none | Item (contact) id |
itemNumber | integer(int32) | true | none | Item (contact) phone number id. Uniquely identifies in case an item (contact) has more than one phone number. |
campaignId | integer(int32) | true | none | Campaign id |
listId | integer(int32) | true | none | List id |
phoneNumber | string | true | none | Item (contact) phone number |
data | [string] | false | none | Item (contact) attached data. It is essential for the screen popup generation in the operator position. Data array will be joined with a pipe separator and the joined string length can not exceed 50 characters. |
PDCampaign
Power Dialer Campaign
Properties
{
"id": 0,
"name": "string",
"enabled": true,
"startDate": "2019-08-24T14:15:22Z",
"endDate": "2019-08-24T14:15:22Z",
"priority": 1,
"abilitazioneId": 0,
"reservedChannels": 0,
"busyChannels": 0,
"busyChannelsType": "PRESENT",
"serviceCode": "string",
"lists": [
{
"enabled": true,
"priority": 0,
"listId": 0
}
]
}
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
id | integer(int32) | true | none | Campaing id |
name | string | false | none | Campaign name |
enabled | boolean | true | none | Campaign enabled |
startDate | string(date-time) | true | none | Campaign start date |
endDate | string(date-time) | true | none | Campaign end date |
priority | integer(int32) | false | none | Campaign priority (1: low, 10: high). The value assigned is meaningful in situations in which you are working with contemporary campaigns and goes to affect the level of employment of telephone channels by which the TVox Communication evades the contacts of the campaign. |
abilitazioneId | integer(int32) | false | none | Enable outgoing calls to which the campaign is assigned. If not specified, the global one is used. |
reservedChannels | integer(int32) | false | none | Maximum number of telephone channels output from TVox Communication used by the current campaign calculated as a percentage of total channels configured for TVox Communication Power Dialing (in %, from 0 to 100). |
busyChannels | integer(int32) | false | none | Number of channels involved in exit from TVox Communication for the current campaign calculated as a percentage of the resources on or available from those skillate for the associated service (in %, from 0 to 400). This number is, however, limited by the number of channels reserved to the campaign. |
busyChannelsType | string | false | none | Type of resources (AVAILABLE / PRESENT). Available Resources (AVAILABLE) are the agents logged in to the service whose status is different from Not Ready (NR) or not ready on busy (BUSY); Total Resources (PRESENT) are the agents logged in to the service. |
serviceCode | string | false | none | Power Dialer service for the campaign |
lists | [PDCampaignList] | false | none | Campaign lists |
Enumerated Values
Property | Value |
---|---|
busyChannelsType | PRESENT |
busyChannelsType | AVAILABLE |
PDCampaignList
Power Dialer Campaign List
Properties
{
"enabled": true,
"priority": 0,
"listId": 0
}
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
enabled | boolean | false | none | Enable the contact list for the current campaign |
priority | integer(int32) | false | none | Percentage weight that you assign to your contacts list to the total. This value takes on meaning when you work with more than one list at the same time associated with the current campaign. |
listId | integer(int32) | false | none | List id |
Abilitazione
Enabling for outgoing calls
Properties
{
"id": 0,
"descrizione": "string"
}
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
id | integer(int32) | true | none | Enabling ID |
descrizione | string | true | none | Enabling description |
PDConf
Power Dialer general settings
Properties
{
"enabled": true,
"maxChannels": 0,
"abilitazione": {
"id": 0,
"descrizione": "string"
},
"ringTimeout": 0
}
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
enabled | boolean | false | none | Power Dialing enabled |
maxChannels | integer(int32) | false | none | Maximum available channels |
abilitazione | Abilitazione | false | none | Enabling for outgoing calls |
ringTimeout | integer(int32) | false | none | Maximum ring time (seconds) |
PDList
Power Dialer List
Properties
{
"id": 0,
"name": "string",
"voicemailEnabled": true,
"noAnswerAttempts": 0,
"noAnswerTimeout": 0,
"busyAttempts": 0,
"busyTimeout": 0,
"cancelAttempts": 0,
"cancelTimeout": 0,
"congestionAttempts": 0,
"congestionTimeout": 0,
"voicemailAttempts": 0,
"voicemailTimeout": 0,
"tvoxClosedAttempts": 0,
"tvoxClosedTimeout": 0
}
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
id | integer(int32) | true | none | List id |
name | string | false | none | List name |
voicemailEnabled | boolean | true | none | Enable voicemail (answering machine or another auto responder) detection (AMD) |
noAnswerAttempts | integer(int32) | true | none | Attempts: no answer provided by the contact called. |
noAnswerTimeout | integer(int32) | true | none | Timeout between attempts: no answer provided by the contact called |
busyAttempts | integer(int32) | true | none | Attempts: the contact is busy on another call |
busyTimeout | integer(int32) | true | none | Timeout between attempts: the contact is busy on another call |
cancelAttempts | integer(int32) | true | none | Attempts: the contact has answered the call and then hang up before being put in touch with the service associated with the campaign |
cancelTimeout | integer(int32) | true | none | Timeout between attempts: the contact has answered the call and then hang up before being put in touch with the service associated with the campaign |
congestionAttempts | integer(int32) | true | none | Attempts: the system TVox Communication Power Dialing found no telephone channel available to make the call or, alternatively, the number dialed is not a valid result |
congestionTimeout | integer(int32) | true | none | Timeout between attempts: the system TVox Communication Power Dialing found no telephone channel available to make the call or, alternatively, the number dialed is not a valid result |
voicemailAttempts | integer(int32) | true | none | Attempts: the contact has active an answering machine or another auto responder |
voicemailTimeout | integer(int32) | true | none | Timeout between attempts: the contact has active an answering machine or another auto responder |
tvoxClosedAttempts | integer(int32) | true | none | Attempts: the contact has responded and is still waiting to be served by service TVox Communication associated with the campaign. After expiry of the maximum time to wait on the service contact has been hung up |
tvoxClosedTimeout | integer(int32) | true | none | Timeout between attempts: the contact has responded and is still waiting to be served by service TVox Communication associated with the campaign. After expiry of the maximum time to wait on the service contact has been hung up |
SearchResultPDCampaign
Generic search result
Properties
{
"tot": 0,
"result": [
{
"id": 0,
"name": "string",
"enabled": true,
"startDate": "2019-08-24T14:15:22Z",
"endDate": "2019-08-24T14:15:22Z",
"priority": 1,
"abilitazioneId": 0,
"reservedChannels": 0,
"busyChannels": 0,
"busyChannelsType": "PRESENT",
"serviceCode": "string",
"lists": [
{
"enabled": true,
"priority": 0,
"listId": 0
}
]
}
]
}
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
tot | integer(int32) | false | none | Result total size |
result | [PDCampaign] | false | none | Result list |
SearchResultPDList
Generic search result
Properties
{
"tot": 0,
"result": [
{
"id": 0,
"name": "string",
"voicemailEnabled": true,
"noAnswerAttempts": 0,
"noAnswerTimeout": 0,
"busyAttempts": 0,
"busyTimeout": 0,
"cancelAttempts": 0,
"cancelTimeout": 0,
"congestionAttempts": 0,
"congestionTimeout": 0,
"voicemailAttempts": 0,
"voicemailTimeout": 0,
"tvoxClosedAttempts": 0,
"tvoxClosedTimeout": 0
}
]
}
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
tot | integer(int32) | false | none | Result total size |
result | [PDList] | false | none | Result list |
Changelog
1.4.0
Available from: 24.5.0
- Features / Enhancements
- General documentation improvements
- Power Dialer > Add list to campaign: Added method to add one or more lists to campaign
- Power Dialer > Remove list from campaign: Added method to remove one or more lists from campaign
- Power Dialer > Delete list by name for call campaigns: Added method to delete list by name
- Power Dialer > Campaign id and list id are no longer required for creating campaigns and lists
- Power Dialer > Removed the following deprecated properties from PDList:
voicemailAttempts
,voicemailEnabled
,voicemailTimeout
- TVox Users Management > Acquire exten by pin: Added method to acquire exten on user by pin
- TVox Users Management > Force logout of agent: Added method to logout agent
- TVox Users Management > Get username by pin: Added method to get username of the user by pin
- TVox Users Management > Get user: Added method to get TVox user
- User devices > Get user devices: Added method to get user devices
1.3.1
Available from: 24.3.0
- Features / Enhancements
- Phone channel - Call > Added new methods to record calls (start and stop) and get user's service calls
1.3.0
Available from: 24.3.0
- Features / Enhancements
- Power Dialer > Add list items (contacts): Added scheduled date from which the contact is to be called (
scheduledDate
) - Chat > List chat session messages: Now you can list chat session messages by chat session id
- Power Dialer > Add list items (contacts): Added scheduled date from which the contact is to be called (
1.2.0
Available from: 22.2.0, 24.3.0
- Features / Enhancements
- Power Dialer >: Now you can manage instant messaging campaings, start/stop runs for them and filter these runs by campaign
- Power Dialer >: Removed
/phone
from requests' endpoints
1.1.3
Available from: 22.0.33, 22.1.11, 22.2.7, 22.3.6, 24.3.0
- Features / Enhancements
- SMS >: Now you can send SMS from specific enabled user to any number
1.1.2
Available from: 22.0.29, 22.1.10, 22.2.6, 22.3.4, 24.3.0
- Features / Enhancements
- Support channel - Ticket > Search tickets: Now you can search tickets by agents and customers
- Support channel - Ticket > Added new methods to get customers and agents list
1.1.1
Available from: 22.0.23, 22.1.7, 22.2.5, 22.3.3, 24.3.0
- Features / Enhancements
- Support channel - Ticket > Get ticket: Now you can get tickets for support channel
- Support channel - Ticket > Added new values for ticket context (
AGENT
,CUSTOMER
)
1.1.0
- Features / Enhancements
- Support channel - Ticket > Create ticket: Now you can create tickets for support channel
1.0.3
- Features / Enhancements
- Addressbook Contact External > Now you can create, read , update or delete a contact in external addressbook
- Phone channel - Call > Dial number: Now you can indicate the id of the contact on which the call made must lookup
1.0.2
- Features / Enhancements
- Power Dialer > Add list items (contacts): Now you can reset stats at the same time as inserting a contact in a list
- Power Dialer > Delete list items (contacts): Now you can delete one or more items from the contact list associated with a campaign that have yet to be called; also, you can reset stats at the same time as deleting a contact in a list
1.0.1
- Features / Enhancements
- Power Dialer > Add list items (contacts): Now you can specify contact information to create or update the contact in the address book
- Phone channel - Call: Added methods for call management (dial number, hangup call)
1.0.0
- First release
- Authentication, version and user session management
- Power Dialer campaign management for phone channel