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.
Addressbook Contact External
External Addressbook contacts management
Create contact
Code samples
POST /tvox/rest/addressbook-contact/external HTTP/1.1
Content-Type: application/json
Accept: application/json
Cookie: JSESSIONID=SESSION_ID
Host: tvox_host
Content-Length: 517
{"addressbookBackendId":"string","agentNote":"string","cap":"string","categories":["string"],"city":"string","company":"string","country":"string","customFields":[{"key":"CUSTOM_01","value":"string"}],"department":"string","district":"string","emails":[{"type":"INTERNET_WORK","value":"string"}],"id":"string","name":"string","note":"string","numbers":[{"type":"FAX","value":"string"}],"otherName":"string","role":"string","street":"string","surname":"string","vip":true,"webSites":[{"type":"WORK","value":"string"}]}
<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://tvox_host/tvox/rest/addressbook-contact/external",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => "{\"addressbookBackendId\":\"string\",\"agentNote\":\"string\",\"cap\":\"string\",\"categories\":[\"string\"],\"city\":\"string\",\"company\":\"string\",\"country\":\"string\",\"customFields\":[{\"key\":\"CUSTOM_01\",\"value\":\"string\"}],\"department\":\"string\",\"district\":\"string\",\"emails\":[{\"type\":\"INTERNET_WORK\",\"value\":\"string\"}],\"id\":\"string\",\"name\":\"string\",\"note\":\"string\",\"numbers\":[{\"type\":\"FAX\",\"value\":\"string\"}],\"otherName\":\"string\",\"role\":\"string\",\"street\":\"string\",\"surname\":\"string\",\"vip\":true,\"webSites\":[{\"type\":\"WORK\",\"value\":\"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/addressbook-contact/external \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--header 'Cookie: JSESSIONID=SESSION_ID' \
--data '{"addressbookBackendId":"string","agentNote":"string","cap":"string","categories":["string"],"city":"string","company":"string","country":"string","customFields":[{"key":"CUSTOM_01","value":"string"}],"department":"string","district":"string","emails":[{"type":"INTERNET_WORK","value":"string"}],"id":"string","name":"string","note":"string","numbers":[{"type":"FAX","value":"string"}],"otherName":"string","role":"string","street":"string","surname":"string","vip":true,"webSites":[{"type":"WORK","value":"string"}]}'
HttpResponse<String> response = Unirest.post("https://tvox_host/tvox/rest/addressbook-contact/external")
.header("Content-Type", "application/json")
.header("Accept", "application/json")
.header("Cookie", "JSESSIONID=SESSION_ID")
.body("{\"addressbookBackendId\":\"string\",\"agentNote\":\"string\",\"cap\":\"string\",\"categories\":[\"string\"],\"city\":\"string\",\"company\":\"string\",\"country\":\"string\",\"customFields\":[{\"key\":\"CUSTOM_01\",\"value\":\"string\"}],\"department\":\"string\",\"district\":\"string\",\"emails\":[{\"type\":\"INTERNET_WORK\",\"value\":\"string\"}],\"id\":\"string\",\"name\":\"string\",\"note\":\"string\",\"numbers\":[{\"type\":\"FAX\",\"value\":\"string\"}],\"otherName\":\"string\",\"role\":\"string\",\"street\":\"string\",\"surname\":\"string\",\"vip\":true,\"webSites\":[{\"type\":\"WORK\",\"value\":\"string\"}]}")
.asString();
package main
import (
"fmt"
"strings"
"net/http"
"io/ioutil"
)
func main() {
url := "https://tvox_host/tvox/rest/addressbook-contact/external"
payload := strings.NewReader("{\"addressbookBackendId\":\"string\",\"agentNote\":\"string\",\"cap\":\"string\",\"categories\":[\"string\"],\"city\":\"string\",\"company\":\"string\",\"country\":\"string\",\"customFields\":[{\"key\":\"CUSTOM_01\",\"value\":\"string\"}],\"department\":\"string\",\"district\":\"string\",\"emails\":[{\"type\":\"INTERNET_WORK\",\"value\":\"string\"}],\"id\":\"string\",\"name\":\"string\",\"note\":\"string\",\"numbers\":[{\"type\":\"FAX\",\"value\":\"string\"}],\"otherName\":\"string\",\"role\":\"string\",\"street\":\"string\",\"surname\":\"string\",\"vip\":true,\"webSites\":[{\"type\":\"WORK\",\"value\":\"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({
"addressbookBackendId": "string",
"agentNote": "string",
"cap": "string",
"categories": [
"string"
],
"city": "string",
"company": "string",
"country": "string",
"customFields": [
{
"key": "CUSTOM_01",
"value": "string"
}
],
"department": "string",
"district": "string",
"emails": [
{
"type": "INTERNET_WORK",
"value": "string"
}
],
"id": "string",
"name": "string",
"note": "string",
"numbers": [
{
"type": "FAX",
"value": "string"
}
],
"otherName": "string",
"role": "string",
"street": "string",
"surname": "string",
"vip": true,
"webSites": [
{
"type": "WORK",
"value": "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/addressbook-contact/external");
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/addressbook-contact/external",
"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({
addressbookBackendId: 'string',
agentNote: 'string',
cap: 'string',
categories: ['string'],
city: 'string',
company: 'string',
country: 'string',
customFields: [{key: 'CUSTOM_01', value: 'string'}],
department: 'string',
district: 'string',
emails: [{type: 'INTERNET_WORK', value: 'string'}],
id: 'string',
name: 'string',
note: 'string',
numbers: [{type: 'FAX', value: 'string'}],
otherName: 'string',
role: 'string',
street: 'string',
surname: 'string',
vip: true,
webSites: [{type: 'WORK', value: 'string'}]
}));
req.end();
import http.client
conn = http.client.HTTPSConnection("tvox_host")
payload = "{\"addressbookBackendId\":\"string\",\"agentNote\":\"string\",\"cap\":\"string\",\"categories\":[\"string\"],\"city\":\"string\",\"company\":\"string\",\"country\":\"string\",\"customFields\":[{\"key\":\"CUSTOM_01\",\"value\":\"string\"}],\"department\":\"string\",\"district\":\"string\",\"emails\":[{\"type\":\"INTERNET_WORK\",\"value\":\"string\"}],\"id\":\"string\",\"name\":\"string\",\"note\":\"string\",\"numbers\":[{\"type\":\"FAX\",\"value\":\"string\"}],\"otherName\":\"string\",\"role\":\"string\",\"street\":\"string\",\"surname\":\"string\",\"vip\":true,\"webSites\":[{\"type\":\"WORK\",\"value\":\"string\"}]}"
headers = {
'Content-Type': "application/json",
'Accept': "application/json",
'Cookie': "JSESSIONID=SESSION_ID"
}
conn.request("POST", "/tvox/rest/addressbook-contact/external", 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/addressbook-contact/external")
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 = "{\"addressbookBackendId\":\"string\",\"agentNote\":\"string\",\"cap\":\"string\",\"categories\":[\"string\"],\"city\":\"string\",\"company\":\"string\",\"country\":\"string\",\"customFields\":[{\"key\":\"CUSTOM_01\",\"value\":\"string\"}],\"department\":\"string\",\"district\":\"string\",\"emails\":[{\"type\":\"INTERNET_WORK\",\"value\":\"string\"}],\"id\":\"string\",\"name\":\"string\",\"note\":\"string\",\"numbers\":[{\"type\":\"FAX\",\"value\":\"string\"}],\"otherName\":\"string\",\"role\":\"string\",\"street\":\"string\",\"surname\":\"string\",\"vip\":true,\"webSites\":[{\"type\":\"WORK\",\"value\":\"string\"}]}"
response = http.request(request)
puts response.read_body
POST /rest/addressbook-contact/external
Create contact in external addressbook
Parameters
Body parameter
{
"addressbookBackendId": "string",
"agentNote": "string",
"cap": "string",
"categories": [
"string"
],
"city": "string",
"company": "string",
"country": "string",
"customFields": [
{
"key": "CUSTOM_01",
"value": "string"
}
],
"department": "string",
"district": "string",
"emails": [
{
"type": "INTERNET_WORK",
"value": "string"
}
],
"id": "string",
"name": "string",
"note": "string",
"numbers": [
{
"type": "FAX",
"value": "string"
}
],
"otherName": "string",
"role": "string",
"street": "string",
"surname": "string",
"vip": true,
"webSites": [
{
"type": "WORK",
"value": "string"
}
]
}
Name | In | Type | Required | Description |
---|---|---|---|---|
body | body | AddressbookContactExternal | true | Contact to create |
Responses
Example responses
default Response
{
"addressbookBackendId": "string",
"agentNote": "string",
"cap": "string",
"categories": [
"string"
],
"city": "string",
"company": "string",
"country": "string",
"customFields": [
{
"key": "CUSTOM_01",
"value": "string"
}
],
"department": "string",
"district": "string",
"emails": [
{
"type": "INTERNET_WORK",
"value": "string"
}
],
"id": "string",
"name": "string",
"note": "string",
"numbers": [
{
"type": "FAX",
"value": "string"
}
],
"otherName": "string",
"role": "string",
"street": "string",
"surname": "string",
"vip": true,
"webSites": [
{
"type": "WORK",
"value": "string"
}
]
}
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 or exceed max size. A required field is missing or empty or exceed max size | None |
default | Default | Created contact | AddressbookContactExternal |
Update contact
Code samples
PUT /tvox/rest/addressbook-contact/external HTTP/1.1
Content-Type: application/json
Accept: application/json
Cookie: JSESSIONID=SESSION_ID
Host: tvox_host
Content-Length: 517
{"addressbookBackendId":"string","agentNote":"string","cap":"string","categories":["string"],"city":"string","company":"string","country":"string","customFields":[{"key":"CUSTOM_01","value":"string"}],"department":"string","district":"string","emails":[{"type":"INTERNET_WORK","value":"string"}],"id":"string","name":"string","note":"string","numbers":[{"type":"FAX","value":"string"}],"otherName":"string","role":"string","street":"string","surname":"string","vip":true,"webSites":[{"type":"WORK","value":"string"}]}
<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://tvox_host/tvox/rest/addressbook-contact/external",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PUT",
CURLOPT_POSTFIELDS => "{\"addressbookBackendId\":\"string\",\"agentNote\":\"string\",\"cap\":\"string\",\"categories\":[\"string\"],\"city\":\"string\",\"company\":\"string\",\"country\":\"string\",\"customFields\":[{\"key\":\"CUSTOM_01\",\"value\":\"string\"}],\"department\":\"string\",\"district\":\"string\",\"emails\":[{\"type\":\"INTERNET_WORK\",\"value\":\"string\"}],\"id\":\"string\",\"name\":\"string\",\"note\":\"string\",\"numbers\":[{\"type\":\"FAX\",\"value\":\"string\"}],\"otherName\":\"string\",\"role\":\"string\",\"street\":\"string\",\"surname\":\"string\",\"vip\":true,\"webSites\":[{\"type\":\"WORK\",\"value\":\"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 PUT \
--url https://tvox_host/tvox/rest/addressbook-contact/external \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--header 'Cookie: JSESSIONID=SESSION_ID' \
--data '{"addressbookBackendId":"string","agentNote":"string","cap":"string","categories":["string"],"city":"string","company":"string","country":"string","customFields":[{"key":"CUSTOM_01","value":"string"}],"department":"string","district":"string","emails":[{"type":"INTERNET_WORK","value":"string"}],"id":"string","name":"string","note":"string","numbers":[{"type":"FAX","value":"string"}],"otherName":"string","role":"string","street":"string","surname":"string","vip":true,"webSites":[{"type":"WORK","value":"string"}]}'
HttpResponse<String> response = Unirest.put("https://tvox_host/tvox/rest/addressbook-contact/external")
.header("Content-Type", "application/json")
.header("Accept", "application/json")
.header("Cookie", "JSESSIONID=SESSION_ID")
.body("{\"addressbookBackendId\":\"string\",\"agentNote\":\"string\",\"cap\":\"string\",\"categories\":[\"string\"],\"city\":\"string\",\"company\":\"string\",\"country\":\"string\",\"customFields\":[{\"key\":\"CUSTOM_01\",\"value\":\"string\"}],\"department\":\"string\",\"district\":\"string\",\"emails\":[{\"type\":\"INTERNET_WORK\",\"value\":\"string\"}],\"id\":\"string\",\"name\":\"string\",\"note\":\"string\",\"numbers\":[{\"type\":\"FAX\",\"value\":\"string\"}],\"otherName\":\"string\",\"role\":\"string\",\"street\":\"string\",\"surname\":\"string\",\"vip\":true,\"webSites\":[{\"type\":\"WORK\",\"value\":\"string\"}]}")
.asString();
package main
import (
"fmt"
"strings"
"net/http"
"io/ioutil"
)
func main() {
url := "https://tvox_host/tvox/rest/addressbook-contact/external"
payload := strings.NewReader("{\"addressbookBackendId\":\"string\",\"agentNote\":\"string\",\"cap\":\"string\",\"categories\":[\"string\"],\"city\":\"string\",\"company\":\"string\",\"country\":\"string\",\"customFields\":[{\"key\":\"CUSTOM_01\",\"value\":\"string\"}],\"department\":\"string\",\"district\":\"string\",\"emails\":[{\"type\":\"INTERNET_WORK\",\"value\":\"string\"}],\"id\":\"string\",\"name\":\"string\",\"note\":\"string\",\"numbers\":[{\"type\":\"FAX\",\"value\":\"string\"}],\"otherName\":\"string\",\"role\":\"string\",\"street\":\"string\",\"surname\":\"string\",\"vip\":true,\"webSites\":[{\"type\":\"WORK\",\"value\":\"string\"}]}")
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({
"addressbookBackendId": "string",
"agentNote": "string",
"cap": "string",
"categories": [
"string"
],
"city": "string",
"company": "string",
"country": "string",
"customFields": [
{
"key": "CUSTOM_01",
"value": "string"
}
],
"department": "string",
"district": "string",
"emails": [
{
"type": "INTERNET_WORK",
"value": "string"
}
],
"id": "string",
"name": "string",
"note": "string",
"numbers": [
{
"type": "FAX",
"value": "string"
}
],
"otherName": "string",
"role": "string",
"street": "string",
"surname": "string",
"vip": true,
"webSites": [
{
"type": "WORK",
"value": "string"
}
]
});
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/addressbook-contact/external");
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/addressbook-contact/external",
"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({
addressbookBackendId: 'string',
agentNote: 'string',
cap: 'string',
categories: ['string'],
city: 'string',
company: 'string',
country: 'string',
customFields: [{key: 'CUSTOM_01', value: 'string'}],
department: 'string',
district: 'string',
emails: [{type: 'INTERNET_WORK', value: 'string'}],
id: 'string',
name: 'string',
note: 'string',
numbers: [{type: 'FAX', value: 'string'}],
otherName: 'string',
role: 'string',
street: 'string',
surname: 'string',
vip: true,
webSites: [{type: 'WORK', value: 'string'}]
}));
req.end();
import http.client
conn = http.client.HTTPSConnection("tvox_host")
payload = "{\"addressbookBackendId\":\"string\",\"agentNote\":\"string\",\"cap\":\"string\",\"categories\":[\"string\"],\"city\":\"string\",\"company\":\"string\",\"country\":\"string\",\"customFields\":[{\"key\":\"CUSTOM_01\",\"value\":\"string\"}],\"department\":\"string\",\"district\":\"string\",\"emails\":[{\"type\":\"INTERNET_WORK\",\"value\":\"string\"}],\"id\":\"string\",\"name\":\"string\",\"note\":\"string\",\"numbers\":[{\"type\":\"FAX\",\"value\":\"string\"}],\"otherName\":\"string\",\"role\":\"string\",\"street\":\"string\",\"surname\":\"string\",\"vip\":true,\"webSites\":[{\"type\":\"WORK\",\"value\":\"string\"}]}"
headers = {
'Content-Type': "application/json",
'Accept': "application/json",
'Cookie': "JSESSIONID=SESSION_ID"
}
conn.request("PUT", "/tvox/rest/addressbook-contact/external", 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/addressbook-contact/external")
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 = "{\"addressbookBackendId\":\"string\",\"agentNote\":\"string\",\"cap\":\"string\",\"categories\":[\"string\"],\"city\":\"string\",\"company\":\"string\",\"country\":\"string\",\"customFields\":[{\"key\":\"CUSTOM_01\",\"value\":\"string\"}],\"department\":\"string\",\"district\":\"string\",\"emails\":[{\"type\":\"INTERNET_WORK\",\"value\":\"string\"}],\"id\":\"string\",\"name\":\"string\",\"note\":\"string\",\"numbers\":[{\"type\":\"FAX\",\"value\":\"string\"}],\"otherName\":\"string\",\"role\":\"string\",\"street\":\"string\",\"surname\":\"string\",\"vip\":true,\"webSites\":[{\"type\":\"WORK\",\"value\":\"string\"}]}"
response = http.request(request)
puts response.read_body
PUT /rest/addressbook-contact/external
Update contact in external addressbook
Parameters
Body parameter
{
"addressbookBackendId": "string",
"agentNote": "string",
"cap": "string",
"categories": [
"string"
],
"city": "string",
"company": "string",
"country": "string",
"customFields": [
{
"key": "CUSTOM_01",
"value": "string"
}
],
"department": "string",
"district": "string",
"emails": [
{
"type": "INTERNET_WORK",
"value": "string"
}
],
"id": "string",
"name": "string",
"note": "string",
"numbers": [
{
"type": "FAX",
"value": "string"
}
],
"otherName": "string",
"role": "string",
"street": "string",
"surname": "string",
"vip": true,
"webSites": [
{
"type": "WORK",
"value": "string"
}
]
}
Name | In | Type | Required | Description |
---|---|---|---|---|
body | body | AddressbookContactExternal | true | Contact to update |
Responses
Example responses
default Response
{
"addressbookBackendId": "string",
"agentNote": "string",
"cap": "string",
"categories": [
"string"
],
"city": "string",
"company": "string",
"country": "string",
"customFields": [
{
"key": "CUSTOM_01",
"value": "string"
}
],
"department": "string",
"district": "string",
"emails": [
{
"type": "INTERNET_WORK",
"value": "string"
}
],
"id": "string",
"name": "string",
"note": "string",
"numbers": [
{
"type": "FAX",
"value": "string"
}
],
"otherName": "string",
"role": "string",
"street": "string",
"surname": "string",
"vip": true,
"webSites": [
{
"type": "WORK",
"value": "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 or exceed max size. A required field is missing or empty or exceed max size | None |
default | Default | Updated contact | AddressbookContactExternal |
Delete contact
Code samples
DELETE /tvox/rest/addressbook-contact/external/string 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/addressbook-contact/external/string",
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/addressbook-contact/external/string \
--header 'Accept: application/json' \
--header 'Cookie: JSESSIONID=SESSION_ID'
HttpResponse<String> response = Unirest.delete("https://tvox_host/tvox/rest/addressbook-contact/external/string")
.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/addressbook-contact/external/string"
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/addressbook-contact/external/string");
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/addressbook-contact/external/string",
"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/addressbook-contact/external/string", 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/addressbook-contact/external/string")
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/addressbook-contact/external/{id}
Delete contact from external addressbook
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
id | path | string | true | Contact 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 | Contact deleted | boolean |
Read contact
Code samples
GET /tvox/rest/addressbook-contact/external/string 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/addressbook-contact/external/string",
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/addressbook-contact/external/string \
--header 'Accept: application/json' \
--header 'Cookie: JSESSIONID=SESSION_ID'
HttpResponse<String> response = Unirest.get("https://tvox_host/tvox/rest/addressbook-contact/external/string")
.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/addressbook-contact/external/string"
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/addressbook-contact/external/string");
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/addressbook-contact/external/string",
"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/addressbook-contact/external/string", 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/addressbook-contact/external/string")
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/addressbook-contact/external/{id}
Read contact from external addressbook
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
id | path | string | true | Contact id |
Responses
Example responses
default Response
{
"addressbookBackendId": "string",
"agentNote": "string",
"cap": "string",
"categories": [
"string"
],
"city": "string",
"company": "string",
"country": "string",
"customFields": [
{
"key": "CUSTOM_01",
"value": "string"
}
],
"department": "string",
"district": "string",
"emails": [
{
"type": "INTERNET_WORK",
"value": "string"
}
],
"id": "string",
"name": "string",
"note": "string",
"numbers": [
{
"type": "FAX",
"value": "string"
}
],
"otherName": "string",
"role": "string",
"street": "string",
"surname": "string",
"vip": true,
"webSites": [
{
"type": "WORK",
"value": "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 | Read contact | AddressbookContactExternal |
Auth
Authentication, version and user session management
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 |
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
{"password":"string","username":"string","version":"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 => "{\"password\":\"string\",\"username\":\"string\",\"version\":\"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 '{"password":"string","username":"string","version":"string"}'
HttpResponse<String> response = Unirest.post("https://tvox_host/tvox/rest/auth/login")
.header("Content-Type", "application/json")
.header("Accept", "application/json")
.body("{\"password\":\"string\",\"username\":\"string\",\"version\":\"string\"}")
.asString();
package main
import (
"fmt"
"strings"
"net/http"
"io/ioutil"
)
func main() {
url := "https://tvox_host/tvox/rest/auth/login"
payload := strings.NewReader("{\"password\":\"string\",\"username\":\"string\",\"version\":\"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({
"password": "string",
"username": "string",
"version": "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({password: 'string', username: 'string', version: 'string'}));
req.end();
import http.client
conn = http.client.HTTPSConnection("tvox_host")
payload = "{\"password\":\"string\",\"username\":\"string\",\"version\":\"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 = "{\"password\":\"string\",\"username\":\"string\",\"version\":\"string\"}"
response = http.request(request)
puts response.read_body
POST /rest/auth/login
Execute the login by username and password
Parameters
Body parameter
{
"password": "string",
"username": "string",
"version": "string"
}
Name | In | Type | Required | Description |
---|---|---|---|---|
body | body | LoginRequest | true | Login with credentials request |
Responses
Example responses
default Response
{
"accessToken": "string",
"anonymous": true,
"chatAuthToken": "string",
"chatUri": "string",
"chatUserId": "string",
"customProperties": {
"property1": {},
"property2": {}
},
"isCloudPlatform": true,
"language": "IT",
"logged": true,
"name": "string",
"profileRoles": [
"string"
],
"publicUsername": "string",
"pwdChangeable": true,
"sessionId": "string",
"status": "UNKNOWN",
"supportAuthToken": "string",
"surname": "string",
"userPermissions": [
"SUPERUSER"
],
"username": "string"
}
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
{"accessToken":"string","version":"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 => "{\"accessToken\":\"string\",\"version\":\"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 '{"accessToken":"string","version":"string"}'
HttpResponse<String> response = Unirest.post("https://tvox_host/tvox/rest/auth/loginByAccessToken")
.header("Content-Type", "application/json")
.header("Accept", "application/json")
.body("{\"accessToken\":\"string\",\"version\":\"string\"}")
.asString();
package main
import (
"fmt"
"strings"
"net/http"
"io/ioutil"
)
func main() {
url := "https://tvox_host/tvox/rest/auth/loginByAccessToken"
payload := strings.NewReader("{\"accessToken\":\"string\",\"version\":\"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({
"accessToken": "string",
"version": "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({accessToken: 'string', version: 'string'}));
req.end();
import http.client
conn = http.client.HTTPSConnection("tvox_host")
payload = "{\"accessToken\":\"string\",\"version\":\"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 = "{\"accessToken\":\"string\",\"version\":\"string\"}"
response = http.request(request)
puts response.read_body
POST /rest/auth/loginByAccessToken
Execute the login by access token
Parameters
Body parameter
{
"accessToken": "string",
"version": "string"
}
Name | In | Type | Required | Description |
---|---|---|---|---|
body | body | LoginByAccessTokenRequest | true | Login with access token request |
Responses
Example responses
default Response
{
"accessToken": "string",
"anonymous": true,
"chatAuthToken": "string",
"chatUri": "string",
"chatUserId": "string",
"customProperties": {
"property1": {},
"property2": {}
},
"isCloudPlatform": true,
"language": "IT",
"logged": true,
"name": "string",
"profileRoles": [
"string"
],
"publicUsername": "string",
"pwdChangeable": true,
"sessionId": "string",
"status": "UNKNOWN",
"supportAuthToken": "string",
"surname": "string",
"userPermissions": [
"SUPERUSER"
],
"username": "string"
}
Status | Meaning | Description | Schema |
---|---|---|---|
401 | Unauthorized | Error:
|
None |
403 | Forbidden | Error: Password expired. | None |
default | Default | Logged user profile | LoginProfile |
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 |
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 |
Chat
Chat history
List chat session messages
Code samples
GET /tvox/rest/chat/history/session/string 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/chat/history/session/string",
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/chat/history/session/string \
--header 'Accept: application/json' \
--header 'Cookie: JSESSIONID=SESSION_ID'
HttpResponse<String> response = Unirest.get("https://tvox_host/tvox/rest/chat/history/session/string")
.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/chat/history/session/string"
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/chat/history/session/string");
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/chat/history/session/string",
"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/chat/history/session/string", 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/chat/history/session/string")
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/chat/history/session/{id}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
id | path | string | true | Chat session id |
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
{
"result": [
{
"agent": {
"displayName": "string",
"name": "string",
"surname": "string",
"type": "USER",
"uid": "string",
"username": "string",
"value": "string"
},
"attachment": {
"file": "string",
"fileName": "string",
"mimeType": "string"
},
"channelType": "WIDGET",
"customer": {
"displayName": "string",
"name": "string",
"surname": "string",
"type": "USER",
"uid": "string",
"username": "string",
"value": "string"
},
"id": "string",
"insertTime": "2019-08-24T14:15:22Z",
"message": "string",
"messageId": "string",
"messageType": "OPEN_SESSION",
"readTime": "2019-08-24T14:15:22Z",
"receivedTime": "2019-08-24T14:15:22Z",
"sender": "AGENT",
"service": {
"bpmProcessId": 0,
"code": "string",
"exten": "string",
"name": "string",
"registration": "DISABLED",
"type": "IVR"
},
"sessionId": "string",
"updateTime": "2019-08-24T14:15:22Z"
}
],
"tot": 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 | Chat session messages | SearchResultChatHistoryMessage |
Phone channel - Call
Phone channel - Call management
Dial number
Code samples
POST /tvox/rest/phone/call/dial?number=string 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/phone/call/dial?number=string",
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/phone/call/dial?number=string' \
--header 'Accept: application/json' \
--header 'Cookie: JSESSIONID=SESSION_ID'
HttpResponse<String> response = Unirest.post("https://tvox_host/tvox/rest/phone/call/dial?number=string")
.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/phone/call/dial?number=string"
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/phone/call/dial?number=string");
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/phone/call/dial?number=string",
"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/phone/call/dial?number=string", 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/phone/call/dial?number=string")
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/phone/call/dial
Dial number to call, record the call, passing additional information (access code, service for call tagging, extra data, etc.)
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
username | query | string | false | Username of the user making the call. If not specified, the currently logged in user is used |
dialerNumber | query | string | false | Number of the user making the call |
number | query | string | true | Number to call |
accessCode | query | string | false | Access code to use for the call |
callData | query | string | false | Extra data to pass on the call |
recordCall | query | boolean | false | Record call |
recordOnConnect | query | boolean | false | Record call on connect event |
recordAuto | query | boolean | false | Automatic recording on the call enabled |
recFileName | query | string | false | Recording file name |
recData | query | string | false | Recording data |
returnCallId | query | boolean | false | Return the call id |
serviceCode | query | string | false | Service code to be used for call tagging |
extenType | query | string | false | Exten type of the user making the call |
exten | query | string | false | Exten number of the user making the call |
Enumerated Values
Parameter | Value |
---|---|
extenType | MCS_SIP |
extenType | MCS_APP |
extenType | MCS_APP_WEBRTC |
extenType | SIP |
extenType | EXTERNAL |
extenType | WEBRTC |
Responses
Example responses
default Response
"string"
Status | Meaning | Description | Schema |
---|---|---|---|
401 | Unauthorized | Error: Authorization required. Request is not authenticated or current user session is expired | None |
406 | Not Acceptable | Error: Invalid argument. | None |
412 | Precondition Failed | Error:
|
None |
502 | Bad Gateway | Error: Dial number error. Dial number generic server error. | None |
580 | Unknown | Error: Recording call error. Recording call request error | None |
default | Default | Call id (if "returnCallId" is true) | string |
Hangup call
Code samples
POST /tvox/rest/phone/call/hangup 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/phone/call/hangup",
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/phone/call/hangup \
--header 'Accept: application/json' \
--header 'Cookie: JSESSIONID=SESSION_ID'
HttpResponse<String> response = Unirest.post("https://tvox_host/tvox/rest/phone/call/hangup")
.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/phone/call/hangup"
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/phone/call/hangup");
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/phone/call/hangup",
"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/phone/call/hangup", 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/phone/call/hangup")
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/phone/call/hangup
Hangup call in progess by call id, username or exten number of the user making the call.
If none of call id, username or exten is specified, the currently logged in user is used.
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
callId | query | string | false | Call id |
username | query | string | false | Username of the user making the call |
exten | query | string | false | Exten number of the user making the call |
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 | Call was hung up | boolean |
Power Dialer
Power Dialer campaign management
Create campaign
Code samples
POST /tvox/rest/powerdialer/campaign HTTP/1.1
Content-Type: application/json
Accept: application/json
Cookie: JSESSIONID=SESSION_ID
Host: tvox_host
Content-Length: 298
{"abilitazioneId":0,"busyChannels":400,"busyChannelsType":"PRESENT","enabled":true,"endDate":"2019-08-24T14:15:22Z","id":0,"lists":[{"enabled":true,"listId":0,"priority":0}],"name":"string","priority":1,"reservedChannels":100,"serviceCode":"string","startDate":"2019-08-24T14:15:22Z","type":"CALL"}
<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://tvox_host/tvox/rest/powerdialer/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 => "{\"abilitazioneId\":0,\"busyChannels\":400,\"busyChannelsType\":\"PRESENT\",\"enabled\":true,\"endDate\":\"2019-08-24T14:15:22Z\",\"id\":0,\"lists\":[{\"enabled\":true,\"listId\":0,\"priority\":0}],\"name\":\"string\",\"priority\":1,\"reservedChannels\":100,\"serviceCode\":\"string\",\"startDate\":\"2019-08-24T14:15:22Z\",\"type\":\"CALL\"}",
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/campaign \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--header 'Cookie: JSESSIONID=SESSION_ID' \
--data '{"abilitazioneId":0,"busyChannels":400,"busyChannelsType":"PRESENT","enabled":true,"endDate":"2019-08-24T14:15:22Z","id":0,"lists":[{"enabled":true,"listId":0,"priority":0}],"name":"string","priority":1,"reservedChannels":100,"serviceCode":"string","startDate":"2019-08-24T14:15:22Z","type":"CALL"}'
HttpResponse<String> response = Unirest.post("https://tvox_host/tvox/rest/powerdialer/campaign")
.header("Content-Type", "application/json")
.header("Accept", "application/json")
.header("Cookie", "JSESSIONID=SESSION_ID")
.body("{\"abilitazioneId\":0,\"busyChannels\":400,\"busyChannelsType\":\"PRESENT\",\"enabled\":true,\"endDate\":\"2019-08-24T14:15:22Z\",\"id\":0,\"lists\":[{\"enabled\":true,\"listId\":0,\"priority\":0}],\"name\":\"string\",\"priority\":1,\"reservedChannels\":100,\"serviceCode\":\"string\",\"startDate\":\"2019-08-24T14:15:22Z\",\"type\":\"CALL\"}")
.asString();
package main
import (
"fmt"
"strings"
"net/http"
"io/ioutil"
)
func main() {
url := "https://tvox_host/tvox/rest/powerdialer/campaign"
payload := strings.NewReader("{\"abilitazioneId\":0,\"busyChannels\":400,\"busyChannelsType\":\"PRESENT\",\"enabled\":true,\"endDate\":\"2019-08-24T14:15:22Z\",\"id\":0,\"lists\":[{\"enabled\":true,\"listId\":0,\"priority\":0}],\"name\":\"string\",\"priority\":1,\"reservedChannels\":100,\"serviceCode\":\"string\",\"startDate\":\"2019-08-24T14:15:22Z\",\"type\":\"CALL\"}")
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({
"abilitazioneId": 0,
"busyChannels": 400,
"busyChannelsType": "PRESENT",
"enabled": true,
"endDate": "2019-08-24T14:15:22Z",
"id": 0,
"lists": [
{
"enabled": true,
"listId": 0,
"priority": 0
}
],
"name": "string",
"priority": 1,
"reservedChannels": 100,
"serviceCode": "string",
"startDate": "2019-08-24T14:15:22Z",
"type": "CALL"
});
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/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/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({
abilitazioneId: 0,
busyChannels: 400,
busyChannelsType: 'PRESENT',
enabled: true,
endDate: '2019-08-24T14:15:22Z',
id: 0,
lists: [{enabled: true, listId: 0, priority: 0}],
name: 'string',
priority: 1,
reservedChannels: 100,
serviceCode: 'string',
startDate: '2019-08-24T14:15:22Z',
type: 'CALL'
}));
req.end();
import http.client
conn = http.client.HTTPSConnection("tvox_host")
payload = "{\"abilitazioneId\":0,\"busyChannels\":400,\"busyChannelsType\":\"PRESENT\",\"enabled\":true,\"endDate\":\"2019-08-24T14:15:22Z\",\"id\":0,\"lists\":[{\"enabled\":true,\"listId\":0,\"priority\":0}],\"name\":\"string\",\"priority\":1,\"reservedChannels\":100,\"serviceCode\":\"string\",\"startDate\":\"2019-08-24T14:15:22Z\",\"type\":\"CALL\"}"
headers = {
'Content-Type': "application/json",
'Accept': "application/json",
'Cookie': "JSESSIONID=SESSION_ID"
}
conn.request("POST", "/tvox/rest/powerdialer/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/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 = "{\"abilitazioneId\":0,\"busyChannels\":400,\"busyChannelsType\":\"PRESENT\",\"enabled\":true,\"endDate\":\"2019-08-24T14:15:22Z\",\"id\":0,\"lists\":[{\"enabled\":true,\"listId\":0,\"priority\":0}],\"name\":\"string\",\"priority\":1,\"reservedChannels\":100,\"serviceCode\":\"string\",\"startDate\":\"2019-08-24T14:15:22Z\",\"type\":\"CALL\"}"
response = http.request(request)
puts response.read_body
POST /rest/powerdialer/campaign
Parameters
Body parameter
{
"abilitazioneId": 0,
"busyChannels": 400,
"busyChannelsType": "PRESENT",
"enabled": true,
"endDate": "2019-08-24T14:15:22Z",
"id": 0,
"lists": [
{
"enabled": true,
"listId": 0,
"priority": 0
}
],
"name": "string",
"priority": 1,
"reservedChannels": 100,
"serviceCode": "string",
"startDate": "2019-08-24T14:15:22Z",
"type": "CALL"
}
Name | In | Type | Required | Description |
---|---|---|---|---|
body | body | PDCampaign | true | Campaign to create |
Responses
Example responses
default Response
{
"abilitazioneId": 0,
"busyChannels": 400,
"busyChannelsType": "PRESENT",
"enabled": true,
"endDate": "2019-08-24T14:15:22Z",
"id": 0,
"lists": [
{
"enabled": true,
"listId": 0,
"priority": 0
}
],
"name": "string",
"priority": 1,
"reservedChannels": 100,
"serviceCode": "string",
"startDate": "2019-08-24T14:15:22Z",
"type": "CALL"
}
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 |
Update campaign
Code samples
PUT /tvox/rest/powerdialer/campaign HTTP/1.1
Content-Type: application/json
Accept: application/json
Cookie: JSESSIONID=SESSION_ID
Host: tvox_host
Content-Length: 298
{"abilitazioneId":0,"busyChannels":400,"busyChannelsType":"PRESENT","enabled":true,"endDate":"2019-08-24T14:15:22Z","id":0,"lists":[{"enabled":true,"listId":0,"priority":0}],"name":"string","priority":1,"reservedChannels":100,"serviceCode":"string","startDate":"2019-08-24T14:15:22Z","type":"CALL"}
<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://tvox_host/tvox/rest/powerdialer/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 => "{\"abilitazioneId\":0,\"busyChannels\":400,\"busyChannelsType\":\"PRESENT\",\"enabled\":true,\"endDate\":\"2019-08-24T14:15:22Z\",\"id\":0,\"lists\":[{\"enabled\":true,\"listId\":0,\"priority\":0}],\"name\":\"string\",\"priority\":1,\"reservedChannels\":100,\"serviceCode\":\"string\",\"startDate\":\"2019-08-24T14:15:22Z\",\"type\":\"CALL\"}",
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/campaign \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--header 'Cookie: JSESSIONID=SESSION_ID' \
--data '{"abilitazioneId":0,"busyChannels":400,"busyChannelsType":"PRESENT","enabled":true,"endDate":"2019-08-24T14:15:22Z","id":0,"lists":[{"enabled":true,"listId":0,"priority":0}],"name":"string","priority":1,"reservedChannels":100,"serviceCode":"string","startDate":"2019-08-24T14:15:22Z","type":"CALL"}'
HttpResponse<String> response = Unirest.put("https://tvox_host/tvox/rest/powerdialer/campaign")
.header("Content-Type", "application/json")
.header("Accept", "application/json")
.header("Cookie", "JSESSIONID=SESSION_ID")
.body("{\"abilitazioneId\":0,\"busyChannels\":400,\"busyChannelsType\":\"PRESENT\",\"enabled\":true,\"endDate\":\"2019-08-24T14:15:22Z\",\"id\":0,\"lists\":[{\"enabled\":true,\"listId\":0,\"priority\":0}],\"name\":\"string\",\"priority\":1,\"reservedChannels\":100,\"serviceCode\":\"string\",\"startDate\":\"2019-08-24T14:15:22Z\",\"type\":\"CALL\"}")
.asString();
package main
import (
"fmt"
"strings"
"net/http"
"io/ioutil"
)
func main() {
url := "https://tvox_host/tvox/rest/powerdialer/campaign"
payload := strings.NewReader("{\"abilitazioneId\":0,\"busyChannels\":400,\"busyChannelsType\":\"PRESENT\",\"enabled\":true,\"endDate\":\"2019-08-24T14:15:22Z\",\"id\":0,\"lists\":[{\"enabled\":true,\"listId\":0,\"priority\":0}],\"name\":\"string\",\"priority\":1,\"reservedChannels\":100,\"serviceCode\":\"string\",\"startDate\":\"2019-08-24T14:15:22Z\",\"type\":\"CALL\"}")
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({
"abilitazioneId": 0,
"busyChannels": 400,
"busyChannelsType": "PRESENT",
"enabled": true,
"endDate": "2019-08-24T14:15:22Z",
"id": 0,
"lists": [
{
"enabled": true,
"listId": 0,
"priority": 0
}
],
"name": "string",
"priority": 1,
"reservedChannels": 100,
"serviceCode": "string",
"startDate": "2019-08-24T14:15:22Z",
"type": "CALL"
});
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/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/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({
abilitazioneId: 0,
busyChannels: 400,
busyChannelsType: 'PRESENT',
enabled: true,
endDate: '2019-08-24T14:15:22Z',
id: 0,
lists: [{enabled: true, listId: 0, priority: 0}],
name: 'string',
priority: 1,
reservedChannels: 100,
serviceCode: 'string',
startDate: '2019-08-24T14:15:22Z',
type: 'CALL'
}));
req.end();
import http.client
conn = http.client.HTTPSConnection("tvox_host")
payload = "{\"abilitazioneId\":0,\"busyChannels\":400,\"busyChannelsType\":\"PRESENT\",\"enabled\":true,\"endDate\":\"2019-08-24T14:15:22Z\",\"id\":0,\"lists\":[{\"enabled\":true,\"listId\":0,\"priority\":0}],\"name\":\"string\",\"priority\":1,\"reservedChannels\":100,\"serviceCode\":\"string\",\"startDate\":\"2019-08-24T14:15:22Z\",\"type\":\"CALL\"}"
headers = {
'Content-Type': "application/json",
'Accept': "application/json",
'Cookie': "JSESSIONID=SESSION_ID"
}
conn.request("PUT", "/tvox/rest/powerdialer/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/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 = "{\"abilitazioneId\":0,\"busyChannels\":400,\"busyChannelsType\":\"PRESENT\",\"enabled\":true,\"endDate\":\"2019-08-24T14:15:22Z\",\"id\":0,\"lists\":[{\"enabled\":true,\"listId\":0,\"priority\":0}],\"name\":\"string\",\"priority\":1,\"reservedChannels\":100,\"serviceCode\":\"string\",\"startDate\":\"2019-08-24T14:15:22Z\",\"type\":\"CALL\"}"
response = http.request(request)
puts response.read_body
PUT /rest/powerdialer/campaign
Parameters
Body parameter
{
"abilitazioneId": 0,
"busyChannels": 400,
"busyChannelsType": "PRESENT",
"enabled": true,
"endDate": "2019-08-24T14:15:22Z",
"id": 0,
"lists": [
{
"enabled": true,
"listId": 0,
"priority": 0
}
],
"name": "string",
"priority": 1,
"reservedChannels": 100,
"serviceCode": "string",
"startDate": "2019-08-24T14:15:22Z",
"type": "CALL"
}
Name | In | Type | Required | Description |
---|---|---|---|---|
resetStats | query | boolean | false | Reset campaign stats after its update (if active, campaign will be restarted) |
body | body | PDCampaign | true | Campaign to update |
Responses
Example responses
default Response
{
"abilitazioneId": 0,
"busyChannels": 400,
"busyChannelsType": "PRESENT",
"enabled": true,
"endDate": "2019-08-24T14:15:22Z",
"id": 0,
"lists": [
{
"enabled": true,
"listId": 0,
"priority": 0
}
],
"name": "string",
"priority": 1,
"reservedChannels": 100,
"serviceCode": "string",
"startDate": "2019-08-24T14:15:22Z",
"type": "CALL"
}
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 |
Get runs for instant messaging campaign
Code samples
GET /tvox/rest/powerdialer/campaign/instantmessaging/runs/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/campaign/instantmessaging/runs/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/campaign/instantmessaging/runs/0 \
--header 'Accept: application/json' \
--header 'Cookie: JSESSIONID=SESSION_ID'
HttpResponse<String> response = Unirest.get("https://tvox_host/tvox/rest/powerdialer/campaign/instantmessaging/runs/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/campaign/instantmessaging/runs/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/campaign/instantmessaging/runs/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/campaign/instantmessaging/runs/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/campaign/instantmessaging/runs/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/campaign/instantmessaging/runs/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/campaign/instantmessaging/runs/{id}
Runs are searched within the same month. If the start date is specified, this determines the month of the search; in this case the end date cannot exceed the month of the start date. Otherwise, if only the end date is specified, this determines the search month. If no date is specified, the search month is the current.
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
id | path | integer(int32) | true | Campaign id |
startDate | query | string(date-time) | false | Campaign scheduled start date |
endDate | query | string(date-time) | false | Campaign scheduled end date |
runName | query | string | false | Campaign run name |
runStatus | query | [array[string]] | false | Campaign run status |
pageNumber | query | integer(int32) | false | Page number |
pageSize | query | integer(int32) | false | Page size |
Enumerated Values
Parameter | Value |
---|---|
runStatus | DISABLE |
runStatus | SCHEDULED |
runStatus | ACTIVE |
runStatus | ACTIVE_QUEUED |
runStatus | EVALUATING_RESULT |
runStatus | PENDING |
runStatus | STOPPING |
runStatus | STOPPED |
runStatus | END |
runStatus | ERROR |
Responses
Example responses
default Response
{
"result": [
{
"campaignId": 0,
"endDate": "2019-08-24T14:15:22Z",
"id": 0,
"instantMessagingEndDate": "2019-08-24T14:15:22Z",
"instantMessagingRunStatus": "DISABLE",
"instantMessagingStartDate": "2019-08-24T14:15:22Z",
"listId": 0,
"name": "string",
"runStatus": "DISABLE",
"scheduledEndDate": "2019-08-24T14:15:22Z",
"scheduledStartDate": "2019-08-24T14:15:22Z",
"startDate": "2019-08-24T14:15:22Z"
}
],
"tot": 0
}
Status | Meaning | Description | Schema |
---|---|---|---|
401 | Unauthorized | Error: Authorization required. Request is not authenticated or current user session is expired | None |
default | Default | Instant messaging campaing runs | SearchResultPDCampaignRun |
Start instant messaging campaign
Code samples
POST /tvox/rest/powerdialer/campaign/instantmessaging/start/0?startDate=2019-08-24T14%3A15%3A22Z&endDate=2019-08-24T14%3A15%3A22Z&runName=string 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/campaign/instantmessaging/start/0?startDate=2019-08-24T14%3A15%3A22Z&endDate=2019-08-24T14%3A15%3A22Z&runName=string",
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/campaign/instantmessaging/start/0?startDate=2019-08-24T14%3A15%3A22Z&endDate=2019-08-24T14%3A15%3A22Z&runName=string' \
--header 'Accept: application/json' \
--header 'Cookie: JSESSIONID=SESSION_ID'
HttpResponse<String> response = Unirest.post("https://tvox_host/tvox/rest/powerdialer/campaign/instantmessaging/start/0?startDate=2019-08-24T14%3A15%3A22Z&endDate=2019-08-24T14%3A15%3A22Z&runName=string")
.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/campaign/instantmessaging/start/0?startDate=2019-08-24T14%3A15%3A22Z&endDate=2019-08-24T14%3A15%3A22Z&runName=string"
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/campaign/instantmessaging/start/0?startDate=2019-08-24T14%3A15%3A22Z&endDate=2019-08-24T14%3A15%3A22Z&runName=string");
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/campaign/instantmessaging/start/0?startDate=2019-08-24T14%3A15%3A22Z&endDate=2019-08-24T14%3A15%3A22Z&runName=string",
"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/campaign/instantmessaging/start/0?startDate=2019-08-24T14%3A15%3A22Z&endDate=2019-08-24T14%3A15%3A22Z&runName=string", 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/campaign/instantmessaging/start/0?startDate=2019-08-24T14%3A15%3A22Z&endDate=2019-08-24T14%3A15%3A22Z&runName=string")
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/campaign/instantmessaging/start/{id}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
id | path | integer(int32) | true | Campaign id |
startDate | query | string(date-time) | true | Campaign start date (ISO-8601 format: yyyy-MM-ddTHH:mm:ss.SSSZ . Example: 1970-01-01T00:00:00.000+0000 ) |
endDate | query | string(date-time) | true | Campaign end date (ISO-8601 format: yyyy-MM-ddTHH:mm:ss.SSSZ . Example: 1970-01-01T00:00:00.000+0000 ) |
runName | query | string | true | Campaign run name |
Responses
Example responses
default Response
"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 | Campaign run id | string |
Stop instant messaging campaign run
Code samples
POST /tvox/rest/powerdialer/campaign/instantmessaging/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/campaign/instantmessaging/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/campaign/instantmessaging/stop/0 \
--header 'Accept: application/json' \
--header 'Cookie: JSESSIONID=SESSION_ID'
HttpResponse<String> response = Unirest.post("https://tvox_host/tvox/rest/powerdialer/campaign/instantmessaging/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/campaign/instantmessaging/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/campaign/instantmessaging/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/campaign/instantmessaging/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/campaign/instantmessaging/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/campaign/instantmessaging/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/campaign/instantmessaging/stop/{runId}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
runId | path | integer(int32) | true | Campaign run 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 stopped | boolean |
Search campaigns
Code samples
GET /tvox/rest/powerdialer/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/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/campaign/search \
--header 'Accept: application/json' \
--header 'Cookie: JSESSIONID=SESSION_ID'
HttpResponse<String> response = Unirest.get("https://tvox_host/tvox/rest/powerdialer/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/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/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/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/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/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/campaign/search
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
term | query | string | false | Term to search within the campaign id or name |
type | query | [array[string]] | false | Type of campaign |
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) |
excludeCampaigns | query | [array[integer]] | false | Search excluding this service codes |
Enumerated Values
Parameter | Value |
---|---|
type | CALL |
type | INSTANT_MESSAGING |
Responses
Example responses
default Response
{
"result": [
{
"abilitazioneId": 0,
"busyChannels": 400,
"busyChannelsType": "PRESENT",
"enabled": true,
"endDate": "2019-08-24T14:15:22Z",
"id": 0,
"lists": [
{
"enabled": true,
"listId": 0,
"priority": 0
}
],
"name": "string",
"priority": 1,
"reservedChannels": 100,
"serviceCode": "string",
"startDate": "2019-08-24T14:15:22Z",
"type": "CALL"
}
],
"tot": 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 |
Start campaign
Code samples
POST /tvox/rest/powerdialer/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/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/campaign/start/0 \
--header 'Accept: application/json' \
--header 'Cookie: JSESSIONID=SESSION_ID'
HttpResponse<String> response = Unirest.post("https://tvox_host/tvox/rest/powerdialer/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/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/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/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/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/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/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 |
Reset campaign stats
Code samples
POST /tvox/rest/powerdialer/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/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/campaign/stats/reset/0 \
--header 'Accept: application/json' \
--header 'Cookie: JSESSIONID=SESSION_ID'
HttpResponse<String> response = Unirest.post("https://tvox_host/tvox/rest/powerdialer/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/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/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/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/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/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/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 |
Stop campaign
Code samples
POST /tvox/rest/powerdialer/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/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/campaign/stop/0 \
--header 'Accept: application/json' \
--header 'Cookie: JSESSIONID=SESSION_ID'
HttpResponse<String> response = Unirest.post("https://tvox_host/tvox/rest/powerdialer/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/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/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/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/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/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/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 |
Delete campaign
Code samples
DELETE /tvox/rest/powerdialer/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/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/campaign/0 \
--header 'Accept: application/json' \
--header 'Cookie: JSESSIONID=SESSION_ID'
HttpResponse<String> response = Unirest.delete("https://tvox_host/tvox/rest/powerdialer/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/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/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/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/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/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/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 |
Get campaign
Code samples
GET /tvox/rest/powerdialer/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/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/campaign/0 \
--header 'Accept: application/json' \
--header 'Cookie: JSESSIONID=SESSION_ID'
HttpResponse<String> response = Unirest.get("https://tvox_host/tvox/rest/powerdialer/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/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/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/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/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/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/campaign/{id}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
id | path | integer(int32) | true | Campaign id |
Responses
Example responses
default Response
{
"abilitazioneId": 0,
"busyChannels": 400,
"busyChannelsType": "PRESENT",
"enabled": true,
"endDate": "2019-08-24T14:15:22Z",
"id": 0,
"lists": [
{
"enabled": true,
"listId": 0,
"priority": 0
}
],
"name": "string",
"priority": 1,
"reservedChannels": 100,
"serviceCode": "string",
"startDate": "2019-08-24T14:15:22Z",
"type": "CALL"
}
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 |
Get general settings
Code samples
GET /tvox/rest/powerdialer/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/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/conf \
--header 'Accept: application/json' \
--header 'Cookie: JSESSIONID=SESSION_ID'
HttpResponse<String> response = Unirest.get("https://tvox_host/tvox/rest/powerdialer/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/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/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/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/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/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/conf
Responses
Example responses
default Response
{
"abilitazione": {
"descrizione": "string",
"id": 0
},
"enabled": true,
"maxChannels": 0,
"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/conf HTTP/1.1
Content-Type: application/json
Accept: application/json
Cookie: JSESSIONID=SESSION_ID
Host: tvox_host
Content-Length: 95
{"abilitazione":{"descrizione":"string","id":0},"enabled":true,"maxChannels":0,"ringTimeout":0}
<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://tvox_host/tvox/rest/powerdialer/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 => "{\"abilitazione\":{\"descrizione\":\"string\",\"id\":0},\"enabled\":true,\"maxChannels\":0,\"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/conf \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--header 'Cookie: JSESSIONID=SESSION_ID' \
--data '{"abilitazione":{"descrizione":"string","id":0},"enabled":true,"maxChannels":0,"ringTimeout":0}'
HttpResponse<String> response = Unirest.put("https://tvox_host/tvox/rest/powerdialer/conf")
.header("Content-Type", "application/json")
.header("Accept", "application/json")
.header("Cookie", "JSESSIONID=SESSION_ID")
.body("{\"abilitazione\":{\"descrizione\":\"string\",\"id\":0},\"enabled\":true,\"maxChannels\":0,\"ringTimeout\":0}")
.asString();
package main
import (
"fmt"
"strings"
"net/http"
"io/ioutil"
)
func main() {
url := "https://tvox_host/tvox/rest/powerdialer/conf"
payload := strings.NewReader("{\"abilitazione\":{\"descrizione\":\"string\",\"id\":0},\"enabled\":true,\"maxChannels\":0,\"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({
"abilitazione": {
"descrizione": "string",
"id": 0
},
"enabled": true,
"maxChannels": 0,
"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/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/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({
abilitazione: {descrizione: 'string', id: 0},
enabled: true,
maxChannels: 0,
ringTimeout: 0
}));
req.end();
import http.client
conn = http.client.HTTPSConnection("tvox_host")
payload = "{\"abilitazione\":{\"descrizione\":\"string\",\"id\":0},\"enabled\":true,\"maxChannels\":0,\"ringTimeout\":0}"
headers = {
'Content-Type': "application/json",
'Accept': "application/json",
'Cookie': "JSESSIONID=SESSION_ID"
}
conn.request("PUT", "/tvox/rest/powerdialer/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/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 = "{\"abilitazione\":{\"descrizione\":\"string\",\"id\":0},\"enabled\":true,\"maxChannels\":0,\"ringTimeout\":0}"
response = http.request(request)
puts response.read_body
PUT /rest/powerdialer/conf
Parameters
Body parameter
{
"abilitazione": {
"descrizione": "string",
"id": 0
},
"enabled": true,
"maxChannels": 0,
"ringTimeout": 0
}
Name | In | Type | Required | Description |
---|---|---|---|---|
body | body | PDConf | true | General settings to update |
Responses
Example responses
default Response
{
"abilitazione": {
"descrizione": "string",
"id": 0
},
"enabled": true,
"maxChannels": 0,
"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 |
Create list for call campaigns
Code samples
POST /tvox/rest/powerdialer/list HTTP/1.1
Content-Type: application/json
Accept: application/json
Cookie: JSESSIONID=SESSION_ID
Host: tvox_host
Content-Length: 292
{"busyAttempts":0,"busyTimeout":0,"cancelAttempts":0,"cancelTimeout":0,"congestionAttempts":0,"congestionTimeout":0,"id":0,"name":"string","noAnswerAttempts":0,"noAnswerTimeout":0,"tvoxClosedAttempts":0,"tvoxClosedTimeout":0,"voicemailAttempts":0,"voicemailEnabled":true,"voicemailTimeout":0}
<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://tvox_host/tvox/rest/powerdialer/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 => "{\"busyAttempts\":0,\"busyTimeout\":0,\"cancelAttempts\":0,\"cancelTimeout\":0,\"congestionAttempts\":0,\"congestionTimeout\":0,\"id\":0,\"name\":\"string\",\"noAnswerAttempts\":0,\"noAnswerTimeout\":0,\"tvoxClosedAttempts\":0,\"tvoxClosedTimeout\":0,\"voicemailAttempts\":0,\"voicemailEnabled\":true,\"voicemailTimeout\":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/list \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--header 'Cookie: JSESSIONID=SESSION_ID' \
--data '{"busyAttempts":0,"busyTimeout":0,"cancelAttempts":0,"cancelTimeout":0,"congestionAttempts":0,"congestionTimeout":0,"id":0,"name":"string","noAnswerAttempts":0,"noAnswerTimeout":0,"tvoxClosedAttempts":0,"tvoxClosedTimeout":0,"voicemailAttempts":0,"voicemailEnabled":true,"voicemailTimeout":0}'
HttpResponse<String> response = Unirest.post("https://tvox_host/tvox/rest/powerdialer/list")
.header("Content-Type", "application/json")
.header("Accept", "application/json")
.header("Cookie", "JSESSIONID=SESSION_ID")
.body("{\"busyAttempts\":0,\"busyTimeout\":0,\"cancelAttempts\":0,\"cancelTimeout\":0,\"congestionAttempts\":0,\"congestionTimeout\":0,\"id\":0,\"name\":\"string\",\"noAnswerAttempts\":0,\"noAnswerTimeout\":0,\"tvoxClosedAttempts\":0,\"tvoxClosedTimeout\":0,\"voicemailAttempts\":0,\"voicemailEnabled\":true,\"voicemailTimeout\":0}")
.asString();
package main
import (
"fmt"
"strings"
"net/http"
"io/ioutil"
)
func main() {
url := "https://tvox_host/tvox/rest/powerdialer/list"
payload := strings.NewReader("{\"busyAttempts\":0,\"busyTimeout\":0,\"cancelAttempts\":0,\"cancelTimeout\":0,\"congestionAttempts\":0,\"congestionTimeout\":0,\"id\":0,\"name\":\"string\",\"noAnswerAttempts\":0,\"noAnswerTimeout\":0,\"tvoxClosedAttempts\":0,\"tvoxClosedTimeout\":0,\"voicemailAttempts\":0,\"voicemailEnabled\":true,\"voicemailTimeout\":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({
"busyAttempts": 0,
"busyTimeout": 0,
"cancelAttempts": 0,
"cancelTimeout": 0,
"congestionAttempts": 0,
"congestionTimeout": 0,
"id": 0,
"name": "string",
"noAnswerAttempts": 0,
"noAnswerTimeout": 0,
"tvoxClosedAttempts": 0,
"tvoxClosedTimeout": 0,
"voicemailAttempts": 0,
"voicemailEnabled": true,
"voicemailTimeout": 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/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/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({
busyAttempts: 0,
busyTimeout: 0,
cancelAttempts: 0,
cancelTimeout: 0,
congestionAttempts: 0,
congestionTimeout: 0,
id: 0,
name: 'string',
noAnswerAttempts: 0,
noAnswerTimeout: 0,
tvoxClosedAttempts: 0,
tvoxClosedTimeout: 0,
voicemailAttempts: 0,
voicemailEnabled: true,
voicemailTimeout: 0
}));
req.end();
import http.client
conn = http.client.HTTPSConnection("tvox_host")
payload = "{\"busyAttempts\":0,\"busyTimeout\":0,\"cancelAttempts\":0,\"cancelTimeout\":0,\"congestionAttempts\":0,\"congestionTimeout\":0,\"id\":0,\"name\":\"string\",\"noAnswerAttempts\":0,\"noAnswerTimeout\":0,\"tvoxClosedAttempts\":0,\"tvoxClosedTimeout\":0,\"voicemailAttempts\":0,\"voicemailEnabled\":true,\"voicemailTimeout\":0}"
headers = {
'Content-Type': "application/json",
'Accept': "application/json",
'Cookie': "JSESSIONID=SESSION_ID"
}
conn.request("POST", "/tvox/rest/powerdialer/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/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 = "{\"busyAttempts\":0,\"busyTimeout\":0,\"cancelAttempts\":0,\"cancelTimeout\":0,\"congestionAttempts\":0,\"congestionTimeout\":0,\"id\":0,\"name\":\"string\",\"noAnswerAttempts\":0,\"noAnswerTimeout\":0,\"tvoxClosedAttempts\":0,\"tvoxClosedTimeout\":0,\"voicemailAttempts\":0,\"voicemailEnabled\":true,\"voicemailTimeout\":0}"
response = http.request(request)
puts response.read_body
POST /rest/powerdialer/list
Parameters
Body parameter
{
"busyAttempts": 0,
"busyTimeout": 0,
"cancelAttempts": 0,
"cancelTimeout": 0,
"congestionAttempts": 0,
"congestionTimeout": 0,
"id": 0,
"name": "string",
"noAnswerAttempts": 0,
"noAnswerTimeout": 0,
"tvoxClosedAttempts": 0,
"tvoxClosedTimeout": 0,
"voicemailAttempts": 0,
"voicemailEnabled": true,
"voicemailTimeout": 0
}
Name | In | Type | Required | Description |
---|---|---|---|---|
body | body | PDList | true | List to create |
Responses
Example responses
default Response
{
"busyAttempts": 0,
"busyTimeout": 0,
"cancelAttempts": 0,
"cancelTimeout": 0,
"congestionAttempts": 0,
"congestionTimeout": 0,
"id": 0,
"name": "string",
"noAnswerAttempts": 0,
"noAnswerTimeout": 0,
"tvoxClosedAttempts": 0,
"tvoxClosedTimeout": 0,
"voicemailAttempts": 0,
"voicemailEnabled": true,
"voicemailTimeout": 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 |
Update list for call campaigns
Code samples
PUT /tvox/rest/powerdialer/list HTTP/1.1
Content-Type: application/json
Accept: application/json
Cookie: JSESSIONID=SESSION_ID
Host: tvox_host
Content-Length: 292
{"busyAttempts":0,"busyTimeout":0,"cancelAttempts":0,"cancelTimeout":0,"congestionAttempts":0,"congestionTimeout":0,"id":0,"name":"string","noAnswerAttempts":0,"noAnswerTimeout":0,"tvoxClosedAttempts":0,"tvoxClosedTimeout":0,"voicemailAttempts":0,"voicemailEnabled":true,"voicemailTimeout":0}
<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://tvox_host/tvox/rest/powerdialer/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 => "{\"busyAttempts\":0,\"busyTimeout\":0,\"cancelAttempts\":0,\"cancelTimeout\":0,\"congestionAttempts\":0,\"congestionTimeout\":0,\"id\":0,\"name\":\"string\",\"noAnswerAttempts\":0,\"noAnswerTimeout\":0,\"tvoxClosedAttempts\":0,\"tvoxClosedTimeout\":0,\"voicemailAttempts\":0,\"voicemailEnabled\":true,\"voicemailTimeout\":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/list \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--header 'Cookie: JSESSIONID=SESSION_ID' \
--data '{"busyAttempts":0,"busyTimeout":0,"cancelAttempts":0,"cancelTimeout":0,"congestionAttempts":0,"congestionTimeout":0,"id":0,"name":"string","noAnswerAttempts":0,"noAnswerTimeout":0,"tvoxClosedAttempts":0,"tvoxClosedTimeout":0,"voicemailAttempts":0,"voicemailEnabled":true,"voicemailTimeout":0}'
HttpResponse<String> response = Unirest.put("https://tvox_host/tvox/rest/powerdialer/list")
.header("Content-Type", "application/json")
.header("Accept", "application/json")
.header("Cookie", "JSESSIONID=SESSION_ID")
.body("{\"busyAttempts\":0,\"busyTimeout\":0,\"cancelAttempts\":0,\"cancelTimeout\":0,\"congestionAttempts\":0,\"congestionTimeout\":0,\"id\":0,\"name\":\"string\",\"noAnswerAttempts\":0,\"noAnswerTimeout\":0,\"tvoxClosedAttempts\":0,\"tvoxClosedTimeout\":0,\"voicemailAttempts\":0,\"voicemailEnabled\":true,\"voicemailTimeout\":0}")
.asString();
package main
import (
"fmt"
"strings"
"net/http"
"io/ioutil"
)
func main() {
url := "https://tvox_host/tvox/rest/powerdialer/list"
payload := strings.NewReader("{\"busyAttempts\":0,\"busyTimeout\":0,\"cancelAttempts\":0,\"cancelTimeout\":0,\"congestionAttempts\":0,\"congestionTimeout\":0,\"id\":0,\"name\":\"string\",\"noAnswerAttempts\":0,\"noAnswerTimeout\":0,\"tvoxClosedAttempts\":0,\"tvoxClosedTimeout\":0,\"voicemailAttempts\":0,\"voicemailEnabled\":true,\"voicemailTimeout\":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({
"busyAttempts": 0,
"busyTimeout": 0,
"cancelAttempts": 0,
"cancelTimeout": 0,
"congestionAttempts": 0,
"congestionTimeout": 0,
"id": 0,
"name": "string",
"noAnswerAttempts": 0,
"noAnswerTimeout": 0,
"tvoxClosedAttempts": 0,
"tvoxClosedTimeout": 0,
"voicemailAttempts": 0,
"voicemailEnabled": true,
"voicemailTimeout": 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/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/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({
busyAttempts: 0,
busyTimeout: 0,
cancelAttempts: 0,
cancelTimeout: 0,
congestionAttempts: 0,
congestionTimeout: 0,
id: 0,
name: 'string',
noAnswerAttempts: 0,
noAnswerTimeout: 0,
tvoxClosedAttempts: 0,
tvoxClosedTimeout: 0,
voicemailAttempts: 0,
voicemailEnabled: true,
voicemailTimeout: 0
}));
req.end();
import http.client
conn = http.client.HTTPSConnection("tvox_host")
payload = "{\"busyAttempts\":0,\"busyTimeout\":0,\"cancelAttempts\":0,\"cancelTimeout\":0,\"congestionAttempts\":0,\"congestionTimeout\":0,\"id\":0,\"name\":\"string\",\"noAnswerAttempts\":0,\"noAnswerTimeout\":0,\"tvoxClosedAttempts\":0,\"tvoxClosedTimeout\":0,\"voicemailAttempts\":0,\"voicemailEnabled\":true,\"voicemailTimeout\":0}"
headers = {
'Content-Type': "application/json",
'Accept': "application/json",
'Cookie': "JSESSIONID=SESSION_ID"
}
conn.request("PUT", "/tvox/rest/powerdialer/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/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 = "{\"busyAttempts\":0,\"busyTimeout\":0,\"cancelAttempts\":0,\"cancelTimeout\":0,\"congestionAttempts\":0,\"congestionTimeout\":0,\"id\":0,\"name\":\"string\",\"noAnswerAttempts\":0,\"noAnswerTimeout\":0,\"tvoxClosedAttempts\":0,\"tvoxClosedTimeout\":0,\"voicemailAttempts\":0,\"voicemailEnabled\":true,\"voicemailTimeout\":0}"
response = http.request(request)
puts response.read_body
PUT /rest/powerdialer/list
Parameters
Body parameter
{
"busyAttempts": 0,
"busyTimeout": 0,
"cancelAttempts": 0,
"cancelTimeout": 0,
"congestionAttempts": 0,
"congestionTimeout": 0,
"id": 0,
"name": "string",
"noAnswerAttempts": 0,
"noAnswerTimeout": 0,
"tvoxClosedAttempts": 0,
"tvoxClosedTimeout": 0,
"voicemailAttempts": 0,
"voicemailEnabled": true,
"voicemailTimeout": 0
}
Name | In | Type | Required | Description |
---|---|---|---|---|
body | body | PDList | true | List to update |
Responses
Example responses
default Response
{
"busyAttempts": 0,
"busyTimeout": 0,
"cancelAttempts": 0,
"cancelTimeout": 0,
"congestionAttempts": 0,
"congestionTimeout": 0,
"id": 0,
"name": "string",
"noAnswerAttempts": 0,
"noAnswerTimeout": 0,
"tvoxClosedAttempts": 0,
"tvoxClosedTimeout": 0,
"voicemailAttempts": 0,
"voicemailEnabled": true,
"voicemailTimeout": 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 |
Delete list items (contacts) for call channel
Code samples
DELETE /tvox/rest/powerdialer/list/items HTTP/1.1
Content-Type: application/json
Accept: application/json
Cookie: JSESSIONID=SESSION_ID
Host: tvox_host
Content-Length: 412
[{"campaignId":0,"contactInfo":{"addressbookBackendIds":["string"],"cap":"string","city":"string","company":"string","country":"string","department":"string","district":"string","id":"string","name":"string","organization":true,"otherName":"string","street":"string","surname":"string","vip":true},"data":["string"],"id":0,"itemNumber":0,"listId":0,"phoneNumber":"string","scheduledDate":"2019-08-24T14:15:22Z"}]
<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://tvox_host/tvox/rest/powerdialer/list/items",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "DELETE",
CURLOPT_POSTFIELDS => "[{\"campaignId\":0,\"contactInfo\":{\"addressbookBackendIds\":[\"string\"],\"cap\":\"string\",\"city\":\"string\",\"company\":\"string\",\"country\":\"string\",\"department\":\"string\",\"district\":\"string\",\"id\":\"string\",\"name\":\"string\",\"organization\":true,\"otherName\":\"string\",\"street\":\"string\",\"surname\":\"string\",\"vip\":true},\"data\":[\"string\"],\"id\":0,\"itemNumber\":0,\"listId\":0,\"phoneNumber\":\"string\",\"scheduledDate\":\"2019-08-24T14:15:22Z\"}]",
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 DELETE \
--url https://tvox_host/tvox/rest/powerdialer/list/items \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--header 'Cookie: JSESSIONID=SESSION_ID' \
--data '[{"campaignId":0,"contactInfo":{"addressbookBackendIds":["string"],"cap":"string","city":"string","company":"string","country":"string","department":"string","district":"string","id":"string","name":"string","organization":true,"otherName":"string","street":"string","surname":"string","vip":true},"data":["string"],"id":0,"itemNumber":0,"listId":0,"phoneNumber":"string","scheduledDate":"2019-08-24T14:15:22Z"}]'
HttpResponse<String> response = Unirest.delete("https://tvox_host/tvox/rest/powerdialer/list/items")
.header("Content-Type", "application/json")
.header("Accept", "application/json")
.header("Cookie", "JSESSIONID=SESSION_ID")
.body("[{\"campaignId\":0,\"contactInfo\":{\"addressbookBackendIds\":[\"string\"],\"cap\":\"string\",\"city\":\"string\",\"company\":\"string\",\"country\":\"string\",\"department\":\"string\",\"district\":\"string\",\"id\":\"string\",\"name\":\"string\",\"organization\":true,\"otherName\":\"string\",\"street\":\"string\",\"surname\":\"string\",\"vip\":true},\"data\":[\"string\"],\"id\":0,\"itemNumber\":0,\"listId\":0,\"phoneNumber\":\"string\",\"scheduledDate\":\"2019-08-24T14:15:22Z\"}]")
.asString();
package main
import (
"fmt"
"strings"
"net/http"
"io/ioutil"
)
func main() {
url := "https://tvox_host/tvox/rest/powerdialer/list/items"
payload := strings.NewReader("[{\"campaignId\":0,\"contactInfo\":{\"addressbookBackendIds\":[\"string\"],\"cap\":\"string\",\"city\":\"string\",\"company\":\"string\",\"country\":\"string\",\"department\":\"string\",\"district\":\"string\",\"id\":\"string\",\"name\":\"string\",\"organization\":true,\"otherName\":\"string\",\"street\":\"string\",\"surname\":\"string\",\"vip\":true},\"data\":[\"string\"],\"id\":0,\"itemNumber\":0,\"listId\":0,\"phoneNumber\":\"string\",\"scheduledDate\":\"2019-08-24T14:15:22Z\"}]")
req, _ := http.NewRequest("DELETE", 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([
{
"campaignId": 0,
"contactInfo": {
"addressbookBackendIds": [
"string"
],
"cap": "string",
"city": "string",
"company": "string",
"country": "string",
"department": "string",
"district": "string",
"id": "string",
"name": "string",
"organization": true,
"otherName": "string",
"street": "string",
"surname": "string",
"vip": true
},
"data": [
"string"
],
"id": 0,
"itemNumber": 0,
"listId": 0,
"phoneNumber": "string",
"scheduledDate": "2019-08-24T14:15:22Z"
}
]);
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/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": "DELETE",
"hostname": "tvox_host",
"port": null,
"path": "/tvox/rest/powerdialer/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([
{
campaignId: 0,
contactInfo: {
addressbookBackendIds: ['string'],
cap: 'string',
city: 'string',
company: 'string',
country: 'string',
department: 'string',
district: 'string',
id: 'string',
name: 'string',
organization: true,
otherName: 'string',
street: 'string',
surname: 'string',
vip: true
},
data: ['string'],
id: 0,
itemNumber: 0,
listId: 0,
phoneNumber: 'string',
scheduledDate: '2019-08-24T14:15:22Z'
}
]));
req.end();
import http.client
conn = http.client.HTTPSConnection("tvox_host")
payload = "[{\"campaignId\":0,\"contactInfo\":{\"addressbookBackendIds\":[\"string\"],\"cap\":\"string\",\"city\":\"string\",\"company\":\"string\",\"country\":\"string\",\"department\":\"string\",\"district\":\"string\",\"id\":\"string\",\"name\":\"string\",\"organization\":true,\"otherName\":\"string\",\"street\":\"string\",\"surname\":\"string\",\"vip\":true},\"data\":[\"string\"],\"id\":0,\"itemNumber\":0,\"listId\":0,\"phoneNumber\":\"string\",\"scheduledDate\":\"2019-08-24T14:15:22Z\"}]"
headers = {
'Content-Type': "application/json",
'Accept': "application/json",
'Cookie': "JSESSIONID=SESSION_ID"
}
conn.request("DELETE", "/tvox/rest/powerdialer/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/list/items")
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["Content-Type"] = 'application/json'
request["Accept"] = 'application/json'
request["Cookie"] = 'JSESSIONID=SESSION_ID'
request.body = "[{\"campaignId\":0,\"contactInfo\":{\"addressbookBackendIds\":[\"string\"],\"cap\":\"string\",\"city\":\"string\",\"company\":\"string\",\"country\":\"string\",\"department\":\"string\",\"district\":\"string\",\"id\":\"string\",\"name\":\"string\",\"organization\":true,\"otherName\":\"string\",\"street\":\"string\",\"surname\":\"string\",\"vip\":true},\"data\":[\"string\"],\"id\":0,\"itemNumber\":0,\"listId\":0,\"phoneNumber\":\"string\",\"scheduledDate\":\"2019-08-24T14:15:22Z\"}]"
response = http.request(request)
puts response.read_body
DELETE /rest/powerdialer/list/items
Delete items (contacts) from a list associated with a campaign.
Once contacts have been deleted, it is necessary to perform a reset of campaign list stats to consolidate them (query param: resetStats).
Parameters
Body parameter
[
{
"campaignId": 0,
"contactInfo": {
"addressbookBackendIds": [
"string"
],
"cap": "string",
"city": "string",
"company": "string",
"country": "string",
"department": "string",
"district": "string",
"id": "string",
"name": "string",
"organization": true,
"otherName": "string",
"street": "string",
"surname": "string",
"vip": true
},
"data": [
"string"
],
"id": 0,
"itemNumber": 0,
"listId": 0,
"phoneNumber": "string",
"scheduledDate": "2019-08-24T14:15:22Z"
}
]
Name | In | Type | Required | Description |
---|---|---|---|---|
resetStats | query | boolean | false | Reset campaign list stats after items deleting (if active, campaign will be restarted) |
body | body | [PDInterfaceItem] | true | List items (contacts) to delete |
Responses
Example responses
default Response
{
"campaignId": 0,
"contactInfo": {
"addressbookBackendIds": [
"string"
],
"cap": "string",
"city": "string",
"company": "string",
"country": "string",
"department": "string",
"district": "string",
"id": "string",
"name": "string",
"organization": true,
"otherName": "string",
"street": "string",
"surname": "string",
"vip": true
},
"data": [
"string"
],
"id": 0,
"itemNumber": 0,
"listId": 0,
"phoneNumber": "string",
"scheduledDate": "2019-08-24T14:15:22Z"
}
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 |
default | Default | Deleted list items | [PDInterfaceItem] |
Add list items (contacts) for call channel
Code samples
POST /tvox/rest/powerdialer/list/items HTTP/1.1
Content-Type: application/json
Accept: application/json
Cookie: JSESSIONID=SESSION_ID
Host: tvox_host
Content-Length: 412
[{"campaignId":0,"contactInfo":{"addressbookBackendIds":["string"],"cap":"string","city":"string","company":"string","country":"string","department":"string","district":"string","id":"string","name":"string","organization":true,"otherName":"string","street":"string","surname":"string","vip":true},"data":["string"],"id":0,"itemNumber":0,"listId":0,"phoneNumber":"string","scheduledDate":"2019-08-24T14:15:22Z"}]
<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://tvox_host/tvox/rest/powerdialer/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 => "[{\"campaignId\":0,\"contactInfo\":{\"addressbookBackendIds\":[\"string\"],\"cap\":\"string\",\"city\":\"string\",\"company\":\"string\",\"country\":\"string\",\"department\":\"string\",\"district\":\"string\",\"id\":\"string\",\"name\":\"string\",\"organization\":true,\"otherName\":\"string\",\"street\":\"string\",\"surname\":\"string\",\"vip\":true},\"data\":[\"string\"],\"id\":0,\"itemNumber\":0,\"listId\":0,\"phoneNumber\":\"string\",\"scheduledDate\":\"2019-08-24T14:15:22Z\"}]",
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/list/items \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--header 'Cookie: JSESSIONID=SESSION_ID' \
--data '[{"campaignId":0,"contactInfo":{"addressbookBackendIds":["string"],"cap":"string","city":"string","company":"string","country":"string","department":"string","district":"string","id":"string","name":"string","organization":true,"otherName":"string","street":"string","surname":"string","vip":true},"data":["string"],"id":0,"itemNumber":0,"listId":0,"phoneNumber":"string","scheduledDate":"2019-08-24T14:15:22Z"}]'
HttpResponse<String> response = Unirest.post("https://tvox_host/tvox/rest/powerdialer/list/items")
.header("Content-Type", "application/json")
.header("Accept", "application/json")
.header("Cookie", "JSESSIONID=SESSION_ID")
.body("[{\"campaignId\":0,\"contactInfo\":{\"addressbookBackendIds\":[\"string\"],\"cap\":\"string\",\"city\":\"string\",\"company\":\"string\",\"country\":\"string\",\"department\":\"string\",\"district\":\"string\",\"id\":\"string\",\"name\":\"string\",\"organization\":true,\"otherName\":\"string\",\"street\":\"string\",\"surname\":\"string\",\"vip\":true},\"data\":[\"string\"],\"id\":0,\"itemNumber\":0,\"listId\":0,\"phoneNumber\":\"string\",\"scheduledDate\":\"2019-08-24T14:15:22Z\"}]")
.asString();
package main
import (
"fmt"
"strings"
"net/http"
"io/ioutil"
)
func main() {
url := "https://tvox_host/tvox/rest/powerdialer/list/items"
payload := strings.NewReader("[{\"campaignId\":0,\"contactInfo\":{\"addressbookBackendIds\":[\"string\"],\"cap\":\"string\",\"city\":\"string\",\"company\":\"string\",\"country\":\"string\",\"department\":\"string\",\"district\":\"string\",\"id\":\"string\",\"name\":\"string\",\"organization\":true,\"otherName\":\"string\",\"street\":\"string\",\"surname\":\"string\",\"vip\":true},\"data\":[\"string\"],\"id\":0,\"itemNumber\":0,\"listId\":0,\"phoneNumber\":\"string\",\"scheduledDate\":\"2019-08-24T14:15:22Z\"}]")
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([
{
"campaignId": 0,
"contactInfo": {
"addressbookBackendIds": [
"string"
],
"cap": "string",
"city": "string",
"company": "string",
"country": "string",
"department": "string",
"district": "string",
"id": "string",
"name": "string",
"organization": true,
"otherName": "string",
"street": "string",
"surname": "string",
"vip": true
},
"data": [
"string"
],
"id": 0,
"itemNumber": 0,
"listId": 0,
"phoneNumber": "string",
"scheduledDate": "2019-08-24T14:15:22Z"
}
]);
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/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/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([
{
campaignId: 0,
contactInfo: {
addressbookBackendIds: ['string'],
cap: 'string',
city: 'string',
company: 'string',
country: 'string',
department: 'string',
district: 'string',
id: 'string',
name: 'string',
organization: true,
otherName: 'string',
street: 'string',
surname: 'string',
vip: true
},
data: ['string'],
id: 0,
itemNumber: 0,
listId: 0,
phoneNumber: 'string',
scheduledDate: '2019-08-24T14:15:22Z'
}
]));
req.end();
import http.client
conn = http.client.HTTPSConnection("tvox_host")
payload = "[{\"campaignId\":0,\"contactInfo\":{\"addressbookBackendIds\":[\"string\"],\"cap\":\"string\",\"city\":\"string\",\"company\":\"string\",\"country\":\"string\",\"department\":\"string\",\"district\":\"string\",\"id\":\"string\",\"name\":\"string\",\"organization\":true,\"otherName\":\"string\",\"street\":\"string\",\"surname\":\"string\",\"vip\":true},\"data\":[\"string\"],\"id\":0,\"itemNumber\":0,\"listId\":0,\"phoneNumber\":\"string\",\"scheduledDate\":\"2019-08-24T14:15:22Z\"}]"
headers = {
'Content-Type': "application/json",
'Accept': "application/json",
'Cookie': "JSESSIONID=SESSION_ID"
}
conn.request("POST", "/tvox/rest/powerdialer/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/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 = "[{\"campaignId\":0,\"contactInfo\":{\"addressbookBackendIds\":[\"string\"],\"cap\":\"string\",\"city\":\"string\",\"company\":\"string\",\"country\":\"string\",\"department\":\"string\",\"district\":\"string\",\"id\":\"string\",\"name\":\"string\",\"organization\":true,\"otherName\":\"string\",\"street\":\"string\",\"surname\":\"string\",\"vip\":true},\"data\":[\"string\"],\"id\":0,\"itemNumber\":0,\"listId\":0,\"phoneNumber\":\"string\",\"scheduledDate\":\"2019-08-24T14:15:22Z\"}]"
response = http.request(request)
puts response.read_body
POST /rest/powerdialer/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 (query param: resetStats).
In addition, the contact associated with the specified phone number can be created or updated in the addressbook by populating the "contactInfo" field.
Parameters
Body parameter
[
{
"campaignId": 0,
"contactInfo": {
"addressbookBackendIds": [
"string"
],
"cap": "string",
"city": "string",
"company": "string",
"country": "string",
"department": "string",
"district": "string",
"id": "string",
"name": "string",
"organization": true,
"otherName": "string",
"street": "string",
"surname": "string",
"vip": true
},
"data": [
"string"
],
"id": 0,
"itemNumber": 0,
"listId": 0,
"phoneNumber": "string",
"scheduledDate": "2019-08-24T14:15:22Z"
}
]
Name | In | Type | Required | Description |
---|---|---|---|---|
resetStats | query | boolean | false | Reset campaign list stats after items adding (if active, campaign will be restarted) |
body | body | [PDInterfaceItem] | true | List items (contacts) to add |
Responses
Example responses
default Response
{
"campaignId": 0,
"contactInfo": {
"addressbookBackendIds": [
"string"
],
"cap": "string",
"city": "string",
"company": "string",
"country": "string",
"department": "string",
"district": "string",
"id": "string",
"name": "string",
"organization": true,
"otherName": "string",
"street": "string",
"surname": "string",
"vip": true
},
"data": [
"string"
],
"id": 0,
"itemNumber": 0,
"listId": 0,
"phoneNumber": "string",
"scheduledDate": "2019-08-24T14:15:22Z"
}
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 or exceed max size. A required field is missing or empty or exceed max size | None |
default | Default | Added list items | [PDInterfaceItem] |
Delete all list items (contacts) for call channel
Code samples
POST /tvox/rest/powerdialer/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/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/list/items/reset \
--header 'Accept: application/json' \
--header 'Cookie: JSESSIONID=SESSION_ID'
HttpResponse<String> response = Unirest.post("https://tvox_host/tvox/rest/powerdialer/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/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/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/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/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/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/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 |
Search lists for call campaigns
Code samples
GET /tvox/rest/powerdialer/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/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/list/search \
--header 'Accept: application/json' \
--header 'Cookie: JSESSIONID=SESSION_ID'
HttpResponse<String> response = Unirest.get("https://tvox_host/tvox/rest/powerdialer/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/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/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/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/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/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/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
{
"result": [
{
"busyAttempts": 0,
"busyTimeout": 0,
"cancelAttempts": 0,
"cancelTimeout": 0,
"congestionAttempts": 0,
"congestionTimeout": 0,
"id": 0,
"name": "string",
"noAnswerAttempts": 0,
"noAnswerTimeout": 0,
"tvoxClosedAttempts": 0,
"tvoxClosedTimeout": 0,
"voicemailAttempts": 0,
"voicemailEnabled": true,
"voicemailTimeout": 0
}
],
"tot": 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 |
Reset campaign list stats
Code samples
POST /tvox/rest/powerdialer/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/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/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/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/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/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/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/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/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/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 |
Delete list for call campaigns
Code samples
DELETE /tvox/rest/powerdialer/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/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/list/0 \
--header 'Accept: application/json' \
--header 'Cookie: JSESSIONID=SESSION_ID'
HttpResponse<String> response = Unirest.delete("https://tvox_host/tvox/rest/powerdialer/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/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/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/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/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/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/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 |
Get list for call campaigns
Code samples
GET /tvox/rest/powerdialer/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/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/list/0 \
--header 'Accept: application/json' \
--header 'Cookie: JSESSIONID=SESSION_ID'
HttpResponse<String> response = Unirest.get("https://tvox_host/tvox/rest/powerdialer/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/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/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/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/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/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/list/{id}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
id | path | integer(int32) | true | List id |
Responses
Example responses
default Response
{
"busyAttempts": 0,
"busyTimeout": 0,
"cancelAttempts": 0,
"cancelTimeout": 0,
"congestionAttempts": 0,
"congestionTimeout": 0,
"id": 0,
"name": "string",
"noAnswerAttempts": 0,
"noAnswerTimeout": 0,
"tvoxClosedAttempts": 0,
"tvoxClosedTimeout": 0,
"voicemailAttempts": 0,
"voicemailEnabled": true,
"voicemailTimeout": 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 |
Add list items (contacts) for multi-channel
Code samples
POST /tvox/rest/powerdialer/mc/list/items HTTP/1.1
Content-Type: application/json
Accept: application/json
Cookie: JSESSIONID=SESSION_ID
Host: tvox_host
Content-Length: 173
[{"campaignId":0,"customFields":{"property1":"string","property2":"string"},"id":"string","itemContactType":"T4YOU","itemNumber":0,"templateLanguage":"IT","value":"string"}]
<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://tvox_host/tvox/rest/powerdialer/mc/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 => "[{\"campaignId\":0,\"customFields\":{\"property1\":\"string\",\"property2\":\"string\"},\"id\":\"string\",\"itemContactType\":\"T4YOU\",\"itemNumber\":0,\"templateLanguage\":\"IT\",\"value\":\"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/mc/list/items \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--header 'Cookie: JSESSIONID=SESSION_ID' \
--data '[{"campaignId":0,"customFields":{"property1":"string","property2":"string"},"id":"string","itemContactType":"T4YOU","itemNumber":0,"templateLanguage":"IT","value":"string"}]'
HttpResponse<String> response = Unirest.post("https://tvox_host/tvox/rest/powerdialer/mc/list/items")
.header("Content-Type", "application/json")
.header("Accept", "application/json")
.header("Cookie", "JSESSIONID=SESSION_ID")
.body("[{\"campaignId\":0,\"customFields\":{\"property1\":\"string\",\"property2\":\"string\"},\"id\":\"string\",\"itemContactType\":\"T4YOU\",\"itemNumber\":0,\"templateLanguage\":\"IT\",\"value\":\"string\"}]")
.asString();
package main
import (
"fmt"
"strings"
"net/http"
"io/ioutil"
)
func main() {
url := "https://tvox_host/tvox/rest/powerdialer/mc/list/items"
payload := strings.NewReader("[{\"campaignId\":0,\"customFields\":{\"property1\":\"string\",\"property2\":\"string\"},\"id\":\"string\",\"itemContactType\":\"T4YOU\",\"itemNumber\":0,\"templateLanguage\":\"IT\",\"value\":\"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([
{
"campaignId": 0,
"customFields": {
"property1": "string",
"property2": "string"
},
"id": "string",
"itemContactType": "T4YOU",
"itemNumber": 0,
"templateLanguage": "IT",
"value": "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/mc/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/mc/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([
{
campaignId: 0,
customFields: {property1: 'string', property2: 'string'},
id: 'string',
itemContactType: 'T4YOU',
itemNumber: 0,
templateLanguage: 'IT',
value: 'string'
}
]));
req.end();
import http.client
conn = http.client.HTTPSConnection("tvox_host")
payload = "[{\"campaignId\":0,\"customFields\":{\"property1\":\"string\",\"property2\":\"string\"},\"id\":\"string\",\"itemContactType\":\"T4YOU\",\"itemNumber\":0,\"templateLanguage\":\"IT\",\"value\":\"string\"}]"
headers = {
'Content-Type': "application/json",
'Accept': "application/json",
'Cookie': "JSESSIONID=SESSION_ID"
}
conn.request("POST", "/tvox/rest/powerdialer/mc/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/mc/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 = "[{\"campaignId\":0,\"customFields\":{\"property1\":\"string\",\"property2\":\"string\"},\"id\":\"string\",\"itemContactType\":\"T4YOU\",\"itemNumber\":0,\"templateLanguage\":\"IT\",\"value\":\"string\"}]"
response = http.request(request)
puts response.read_body
POST /rest/powerdialer/mc/list/items
Add items (contacts) to a multi-channel campaign (e.g. instant messaging).
Parameters
Body parameter
[
{
"campaignId": 0,
"customFields": {
"property1": "string",
"property2": "string"
},
"id": "string",
"itemContactType": "T4YOU",
"itemNumber": 0,
"templateLanguage": "IT",
"value": "string"
}
]
Name | In | Type | Required | Description |
---|---|---|---|---|
body | body | [PDMcInterfaceItem] | true | List items (contacts) to add |
Responses
Example responses
default Response
{
"campaignId": 0,
"customFields": {
"property1": "string",
"property2": "string"
},
"id": "string",
"itemContactType": "T4YOU",
"itemNumber": 0,
"templateLanguage": "IT",
"value": "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 |
406 | Not Acceptable | Error: Invalid argument. | None |
412 | Precondition Failed | Error: Object required. A required field is missing or empty | None |
default | Default | Added list items | [PDMcInterfaceItem] |
Delete list items (contacts) for multi-channel
Code samples
DELETE /tvox/rest/powerdialer/mc/list/items/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/mc/list/items/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/mc/list/items/0 \
--header 'Accept: application/json' \
--header 'Cookie: JSESSIONID=SESSION_ID'
HttpResponse<String> response = Unirest.delete("https://tvox_host/tvox/rest/powerdialer/mc/list/items/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/mc/list/items/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/mc/list/items/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/mc/list/items/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/mc/list/items/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/mc/list/items/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/mc/list/items/{campaignId}
Delete items (contacts) from a multi-channel campaign (e.g. instant messaging).
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
campaignId | path | integer(int32) | true | Campaign id |
Responses
Example responses
default Response
{
"campaignId": 0,
"customFields": {
"property1": "string",
"property2": "string"
},
"id": "string",
"itemContactType": "T4YOU",
"itemNumber": 0,
"templateLanguage": "IT",
"value": "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 | Deleted list items | [PDMcInterfaceItem] |
Get the list of items (contacts) for multi-channel
Code samples
GET /tvox/rest/powerdialer/mc/list/items/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/mc/list/items/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/mc/list/items/0 \
--header 'Accept: application/json' \
--header 'Cookie: JSESSIONID=SESSION_ID'
HttpResponse<String> response = Unirest.get("https://tvox_host/tvox/rest/powerdialer/mc/list/items/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/mc/list/items/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/mc/list/items/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/mc/list/items/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/mc/list/items/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/mc/list/items/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/mc/list/items/{campaignId}
Get the list of items (contacts) associated with a multi-channel campaign (e.g. instant messaging).
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
campaignId | path | integer(int32) | true | Campaing id |
runId | query | integer(int32) | false | Run id |
processing | query | boolean | false | boolean used to filter items |
Responses
Example responses
default Response
{
"campaignId": 0,
"customFields": {
"property1": "string",
"property2": "string"
},
"id": "string",
"itemContactType": "T4YOU",
"itemNumber": 0,
"templateLanguage": "IT",
"value": "string"
}
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 |
default | Default | Requested items | [PDMcInterfaceItem] |
SMS
SMS utils
Send SMS
Code samples
POST /tvox/rest/sms/send HTTP/1.1
Content-Type: application/json
Accept: application/json
Cookie: JSESSIONID=SESSION_ID
Host: tvox_host
Content-Length: 77
{"accountId":0,"message":"string","phoneNumber":"string","username":"string"}
<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://tvox_host/tvox/rest/sms/send",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => "{\"accountId\":0,\"message\":\"string\",\"phoneNumber\":\"string\",\"username\":\"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/sms/send \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--header 'Cookie: JSESSIONID=SESSION_ID' \
--data '{"accountId":0,"message":"string","phoneNumber":"string","username":"string"}'
HttpResponse<String> response = Unirest.post("https://tvox_host/tvox/rest/sms/send")
.header("Content-Type", "application/json")
.header("Accept", "application/json")
.header("Cookie", "JSESSIONID=SESSION_ID")
.body("{\"accountId\":0,\"message\":\"string\",\"phoneNumber\":\"string\",\"username\":\"string\"}")
.asString();
package main
import (
"fmt"
"strings"
"net/http"
"io/ioutil"
)
func main() {
url := "https://tvox_host/tvox/rest/sms/send"
payload := strings.NewReader("{\"accountId\":0,\"message\":\"string\",\"phoneNumber\":\"string\",\"username\":\"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({
"accountId": 0,
"message": "string",
"phoneNumber": "string",
"username": "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/sms/send");
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/sms/send",
"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({accountId: 0, message: 'string', phoneNumber: 'string', username: 'string'}));
req.end();
import http.client
conn = http.client.HTTPSConnection("tvox_host")
payload = "{\"accountId\":0,\"message\":\"string\",\"phoneNumber\":\"string\",\"username\":\"string\"}"
headers = {
'Content-Type': "application/json",
'Accept': "application/json",
'Cookie': "JSESSIONID=SESSION_ID"
}
conn.request("POST", "/tvox/rest/sms/send", 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/sms/send")
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 = "{\"accountId\":0,\"message\":\"string\",\"phoneNumber\":\"string\",\"username\":\"string\"}"
response = http.request(request)
puts response.read_body
POST /rest/sms/send
Send SMS from specific enabled user to any number. You can specify SMS account id in case of multi-account configuration
Parameters
Body parameter
{
"accountId": 0,
"message": "string",
"phoneNumber": "string",
"username": "string"
}
Name | In | Type | Required | Description |
---|---|---|---|---|
body | body | SmsSendRequest | false | none |
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 |
570 | Unknown | Error: Operation is NOT allowed to user | None |
default | Default | SMS sent | boolean |
Support channel - Ticket
Support channel - Ticket management
List agents
Code samples
GET /tvox/rest/support/ticket/agent/list HTTP/1.1
Cookie: JSESSIONID=SESSION_ID
Host: tvox_host
<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://tvox_host/tvox/rest/support/ticket/agent/list",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"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/support/ticket/agent/list \
--header 'Cookie: JSESSIONID=SESSION_ID'
HttpResponse<String> response = Unirest.get("https://tvox_host/tvox/rest/support/ticket/agent/list")
.header("Cookie", "JSESSIONID=SESSION_ID")
.asString();
package main
import (
"fmt"
"net/http"
"io/ioutil"
)
func main() {
url := "https://tvox_host/tvox/rest/support/ticket/agent/list"
req, _ := http.NewRequest("GET", url, nil)
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/support/ticket/agent/list");
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/support/ticket/agent/list",
"headers": {
"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 = { 'Cookie': "JSESSIONID=SESSION_ID" }
conn.request("GET", "/tvox/rest/support/ticket/agent/list", 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/support/ticket/agent/list")
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["Cookie"] = 'JSESSIONID=SESSION_ID'
response = http.request(request)
puts response.read_body
GET /rest/support/ticket/agent/list
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
searchKey | query | string | false | none |
index | query | integer(int32) | false | none |
size | query | integer(int32) | false | none |
services | query | string | false | none |
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
401 | Unauthorized | Error: Authorization required. Request is not authenticated or current user session is expired | None |
List customers
Code samples
GET /tvox/rest/support/ticket/customer/list HTTP/1.1
Cookie: JSESSIONID=SESSION_ID
Host: tvox_host
<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://tvox_host/tvox/rest/support/ticket/customer/list",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"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/support/ticket/customer/list \
--header 'Cookie: JSESSIONID=SESSION_ID'
HttpResponse<String> response = Unirest.get("https://tvox_host/tvox/rest/support/ticket/customer/list")
.header("Cookie", "JSESSIONID=SESSION_ID")
.asString();
package main
import (
"fmt"
"net/http"
"io/ioutil"
)
func main() {
url := "https://tvox_host/tvox/rest/support/ticket/customer/list"
req, _ := http.NewRequest("GET", url, nil)
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/support/ticket/customer/list");
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/support/ticket/customer/list",
"headers": {
"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 = { 'Cookie': "JSESSIONID=SESSION_ID" }
conn.request("GET", "/tvox/rest/support/ticket/customer/list", 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/support/ticket/customer/list")
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["Cookie"] = 'JSESSIONID=SESSION_ID'
response = http.request(request)
puts response.read_body
GET /rest/support/ticket/customer/list
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
searchKey | query | string | false | none |
index | query | integer(int32) | false | none |
size | query | integer(int32) | false | none |
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
401 | Unauthorized | Error: Authorization required. Request is not authenticated or current user session is expired | None |
Search tickets
Code samples
POST /tvox/rest/support/ticket/search HTTP/1.1
Content-Type: application/json
Accept: application/json
Cookie: JSESSIONID=SESSION_ID
Host: tvox_host
Content-Length: 222
{"context":"IVR","customFields":{"property1":["string"],"property2":["string"]},"customerId":["string"],"ownerId":["string"],"pageNumber":0,"pageSize":0,"serviceCode":["string"],"stateId":["string"],"submitterId":"string"}
<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://tvox_host/tvox/rest/support/ticket/search",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => "{\"context\":\"IVR\",\"customFields\":{\"property1\":[\"string\"],\"property2\":[\"string\"]},\"customerId\":[\"string\"],\"ownerId\":[\"string\"],\"pageNumber\":0,\"pageSize\":0,\"serviceCode\":[\"string\"],\"stateId\":[\"string\"],\"submitterId\":\"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/support/ticket/search \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--header 'Cookie: JSESSIONID=SESSION_ID' \
--data '{"context":"IVR","customFields":{"property1":["string"],"property2":["string"]},"customerId":["string"],"ownerId":["string"],"pageNumber":0,"pageSize":0,"serviceCode":["string"],"stateId":["string"],"submitterId":"string"}'
HttpResponse<String> response = Unirest.post("https://tvox_host/tvox/rest/support/ticket/search")
.header("Content-Type", "application/json")
.header("Accept", "application/json")
.header("Cookie", "JSESSIONID=SESSION_ID")
.body("{\"context\":\"IVR\",\"customFields\":{\"property1\":[\"string\"],\"property2\":[\"string\"]},\"customerId\":[\"string\"],\"ownerId\":[\"string\"],\"pageNumber\":0,\"pageSize\":0,\"serviceCode\":[\"string\"],\"stateId\":[\"string\"],\"submitterId\":\"string\"}")
.asString();
package main
import (
"fmt"
"strings"
"net/http"
"io/ioutil"
)
func main() {
url := "https://tvox_host/tvox/rest/support/ticket/search"
payload := strings.NewReader("{\"context\":\"IVR\",\"customFields\":{\"property1\":[\"string\"],\"property2\":[\"string\"]},\"customerId\":[\"string\"],\"ownerId\":[\"string\"],\"pageNumber\":0,\"pageSize\":0,\"serviceCode\":[\"string\"],\"stateId\":[\"string\"],\"submitterId\":\"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({
"context": "IVR",
"customFields": {
"property1": [
"string"
],
"property2": [
"string"
]
},
"customerId": [
"string"
],
"ownerId": [
"string"
],
"pageNumber": 0,
"pageSize": 0,
"serviceCode": [
"string"
],
"stateId": [
"string"
],
"submitterId": "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/support/ticket/search");
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/support/ticket/search",
"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({
context: 'IVR',
customFields: {property1: ['string'], property2: ['string']},
customerId: ['string'],
ownerId: ['string'],
pageNumber: 0,
pageSize: 0,
serviceCode: ['string'],
stateId: ['string'],
submitterId: 'string'
}));
req.end();
import http.client
conn = http.client.HTTPSConnection("tvox_host")
payload = "{\"context\":\"IVR\",\"customFields\":{\"property1\":[\"string\"],\"property2\":[\"string\"]},\"customerId\":[\"string\"],\"ownerId\":[\"string\"],\"pageNumber\":0,\"pageSize\":0,\"serviceCode\":[\"string\"],\"stateId\":[\"string\"],\"submitterId\":\"string\"}"
headers = {
'Content-Type': "application/json",
'Accept': "application/json",
'Cookie': "JSESSIONID=SESSION_ID"
}
conn.request("POST", "/tvox/rest/support/ticket/search", 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/support/ticket/search")
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 = "{\"context\":\"IVR\",\"customFields\":{\"property1\":[\"string\"],\"property2\":[\"string\"]},\"customerId\":[\"string\"],\"ownerId\":[\"string\"],\"pageNumber\":0,\"pageSize\":0,\"serviceCode\":[\"string\"],\"stateId\":[\"string\"],\"submitterId\":\"string\"}"
response = http.request(request)
puts response.read_body
POST /rest/support/ticket/search
Request to search tickets
Parameters
Body parameter
{
"context": "IVR",
"customFields": {
"property1": [
"string"
],
"property2": [
"string"
]
},
"customerId": [
"string"
],
"ownerId": [
"string"
],
"pageNumber": 0,
"pageSize": 0,
"serviceCode": [
"string"
],
"stateId": [
"string"
],
"submitterId": "string"
}
Name | In | Type | Required | Description |
---|---|---|---|---|
body | body | TicketSearchRequest | false | Request to search tickets |
Responses
Example responses
default Response
{
"article": {
"attachments": [
{
"data": "string",
"filename": "string",
"id": 0,
"mime-type": "string",
"preferences": {
"property1": "string",
"property2": "string"
},
"size": "string"
}
],
"body": "string",
"cc": "string",
"content_type": "string",
"created_at": "2019-08-24T14:15:22Z",
"created_by": "string",
"created_by_id": 0,
"from": "string",
"id": 0,
"in_reply_to": "string",
"internal": true,
"message_id": "string",
"message_id_md5": "string",
"origin_by": "string",
"origin_by_id": 0,
"preferences": {
"property1": {},
"property2": {}
},
"references": "string",
"reply_to": "string",
"sender": "Agent",
"sender_id": 0,
"subject": "string",
"ticket_id": 0,
"time_unit": 0,
"to": "string",
"type": "email",
"type_id": 0,
"updated_at": "2019-08-24T14:15:22Z",
"updated_by": "string",
"updated_by_id": 0
},
"article_count": 0,
"article_ids": [
0
],
"articles": [
{
"attachments": [
{
"data": "string",
"filename": "string",
"id": 0,
"mime-type": "string",
"preferences": {
"property1": "string",
"property2": "string"
},
"size": "string"
}
],
"body": "string",
"cc": "string",
"content_type": "string",
"created_at": "2019-08-24T14:15:22Z",
"created_by": "string",
"created_by_id": 0,
"from": "string",
"id": 0,
"in_reply_to": "string",
"internal": true,
"message_id": "string",
"message_id_md5": "string",
"origin_by": "string",
"origin_by_id": 0,
"preferences": {
"property1": {},
"property2": {}
},
"references": "string",
"reply_to": "string",
"sender": "Agent",
"sender_id": 0,
"subject": "string",
"ticket_id": 0,
"time_unit": 0,
"to": "string",
"type": "email",
"type_id": 0,
"updated_at": "2019-08-24T14:15:22Z",
"updated_by": "string",
"updated_by_id": 0
}
],
"attachments": [
{
"mimeType": "string",
"name": "string",
"uuid": "string"
}
],
"close_at": "2019-08-24T14:15:22Z",
"close_diff_in_min": 0,
"close_escalation_at": "2019-08-24T14:15:22Z",
"close_in_min": 0,
"create_article_sender": "string",
"create_article_sender_id": 0,
"create_article_type": "string",
"create_article_type_id": 0,
"created_at": "2019-08-24T14:15:22Z",
"created_by": "string",
"created_by_id": 0,
"customer": "string",
"customerContact": {
"type": "USER",
"uid": "string",
"username": "string",
"value": "string"
},
"customer_id": "string",
"escalation_at": "2019-08-24T14:15:22Z",
"first_response_at": "2019-08-24T14:15:22Z",
"first_response_diff_in_min": 0,
"first_response_escalation_at": "2019-08-24T14:15:22Z",
"first_response_in_min": 0,
"group": "string",
"group_id": 0,
"id": 0,
"last_contact_agent_at": "2019-08-24T14:15:22Z",
"last_contact_at": "2019-08-24T14:15:22Z",
"last_contact_customer_at": "2019-08-24T14:15:22Z",
"last_owner_update_at": "2019-08-24T14:15:22Z",
"note": "string",
"number": "string",
"organization": "string",
"organization_id": 0,
"owner": "string",
"ownerContact": {
"type": "USER",
"uid": "string",
"username": "string",
"value": "string"
},
"owner_id": 0,
"pending_time": "2019-08-24T14:15:22Z",
"priority": "1 low",
"priority_id": 0,
"state": "new",
"state_id": 0,
"t_agent_close_date": "2019-08-24T14:15:22Z",
"t_agent_get_date": "2019-08-24T14:15:22Z",
"t_call_link": "string",
"t_create_call_uid": "string",
"t_custom_01": "string",
"t_custom_02": "string",
"t_custom_03": "string",
"t_custom_04": "string",
"t_custom_05": "string",
"t_custom_06": "string",
"t_custom_07": "string",
"t_custom_08": "string",
"t_custom_09": "string",
"t_custom_10": "string",
"t_custom_11": "string",
"t_custom_12": "string",
"t_custom_13": "string",
"t_custom_14": "string",
"t_custom_15": "string",
"t_custom_16": "string",
"t_custom_17": "string",
"t_custom_18": "string",
"t_custom_19": "string",
"t_custom_20": "string",
"t_custom_21": "string",
"t_custom_22": "string",
"t_custom_23": "string",
"t_custom_24": "string",
"t_custom_25": "string",
"t_custom_26": "string",
"t_custom_27": "string",
"t_custom_28": "string",
"t_custom_29": "string",
"t_custom_30": "string",
"t_custom_31": "string",
"t_custom_32": "string",
"t_custom_33": "string",
"t_custom_34": "string",
"t_custom_35": "string",
"t_custom_36": "string",
"t_custom_37": "string",
"t_custom_38": "string",
"t_custom_39": "string",
"t_custom_40": "string",
"t_custom_41": "string",
"t_custom_42": "string",
"t_custom_43": "string",
"t_custom_44": "string",
"t_custom_45": "string",
"t_custom_46": "string",
"t_custom_47": "string",
"t_custom_48": "string",
"t_custom_49": "string",
"t_custom_50": "string",
"t_custom_51": "string",
"t_custom_52": "string",
"t_custom_53": "string",
"t_custom_54": "string",
"t_custom_55": "string",
"t_custom_56": "string",
"t_custom_57": "string",
"t_custom_58": "string",
"t_custom_59": "string",
"t_custom_60": "string",
"t_custom_61": "string",
"t_custom_62": "string",
"t_custom_63": "string",
"t_custom_64": "string",
"t_custom_65": "string",
"t_custom_66": "string",
"t_custom_67": "string",
"t_custom_68": "string",
"t_custom_69": "string",
"t_custom_70": "string",
"t_custom_71": "string",
"t_custom_72": "string",
"t_custom_73": "string",
"t_custom_74": "string",
"t_custom_75": "string",
"t_custom_76": "string",
"t_custom_77": "string",
"t_custom_78": "string",
"t_custom_79": "string",
"t_custom_80": "string",
"t_custom_81": "string",
"t_custom_82": "string",
"t_custom_83": "string",
"t_custom_84": "string",
"t_custom_85": "string",
"t_custom_86": "string",
"t_custom_87": "string",
"t_custom_88": "string",
"t_custom_89": "string",
"t_custom_90": "string",
"t_custom_91": "string",
"t_custom_92": "string",
"t_custom_93": "string",
"t_custom_94": "string",
"t_custom_95": "string",
"t_custom_96": "string",
"t_custom_97": "string",
"t_custom_98": "string",
"t_custom_99": "string",
"t_custom_date_01": "2019-08-24T14:15:22Z",
"t_custom_date_02": "2019-08-24T14:15:22Z",
"t_custom_date_03": "2019-08-24T14:15:22Z",
"t_custom_date_04": "2019-08-24T14:15:22Z",
"t_custom_date_05": "2019-08-24T14:15:22Z",
"t_custom_date_06": "2019-08-24T14:15:22Z",
"t_custom_date_07": "2019-08-24T14:15:22Z",
"t_custom_date_08": "2019-08-24T14:15:22Z",
"t_custom_date_09": "2019-08-24T14:15:22Z",
"t_custom_date_10": "2019-08-24T14:15:22Z",
"t_custom_date_11": "2019-08-24T14:15:22Z",
"t_custom_date_12": "2019-08-24T14:15:22Z",
"t_custom_date_13": "2019-08-24T14:15:22Z",
"t_custom_date_14": "2019-08-24T14:15:22Z",
"t_custom_date_15": "2019-08-24T14:15:22Z",
"t_custom_date_16": "2019-08-24T14:15:22Z",
"t_custom_date_17": "2019-08-24T14:15:22Z",
"t_custom_date_18": "2019-08-24T14:15:22Z",
"t_custom_date_19": "2019-08-24T14:15:22Z",
"t_custom_date_20": "2019-08-24T14:15:22Z",
"t_custom_date_21": "2019-08-24T14:15:22Z",
"t_custom_date_22": "2019-08-24T14:15:22Z",
"t_custom_date_23": "2019-08-24T14:15:22Z",
"t_custom_date_24": "2019-08-24T14:15:22Z",
"t_custom_date_25": "2019-08-24T14:15:22Z",
"t_custom_date_26": "2019-08-24T14:15:22Z",
"t_custom_date_27": "2019-08-24T14:15:22Z",
"t_custom_date_28": "2019-08-24T14:15:22Z",
"t_custom_date_29": "2019-08-24T14:15:22Z",
"t_custom_date_30": "2019-08-24T14:15:22Z",
"t_custom_date_31": "2019-08-24T14:15:22Z",
"t_custom_date_32": "2019-08-24T14:15:22Z",
"t_custom_date_33": "2019-08-24T14:15:22Z",
"t_custom_date_34": "2019-08-24T14:15:22Z",
"t_custom_date_35": "2019-08-24T14:15:22Z",
"t_custom_date_36": "2019-08-24T14:15:22Z",
"t_custom_date_37": "2019-08-24T14:15:22Z",
"t_custom_date_38": "2019-08-24T14:15:22Z",
"t_custom_date_39": "2019-08-24T14:15:22Z",
"t_custom_date_40": "2019-08-24T14:15:22Z",
"t_custom_date_41": "2019-08-24T14:15:22Z",
"t_custom_date_42": "2019-08-24T14:15:22Z",
"t_custom_date_43": "2019-08-24T14:15:22Z",
"t_custom_date_44": "2019-08-24T14:15:22Z",
"t_custom_date_45": "2019-08-24T14:15:22Z",
"t_custom_date_46": "2019-08-24T14:15:22Z",
"t_custom_date_47": "2019-08-24T14:15:22Z",
"t_custom_date_48": "2019-08-24T14:15:22Z",
"t_custom_date_49": "2019-08-24T14:15:22Z",
"t_external_ticketing_add": true,
"t_external_ticketing_link": "string",
"t_forgot_article_count": 0,
"t_forgot_time_unit": 0,
"t_is_child_link": true,
"t_is_forgot_ticket": true,
"t_is_normal_link": true,
"t_is_parent_link": true,
"t_is_view_by_owner": true,
"t_knowledge_base_answer_link": "string",
"t_knowledge_base_answer_uid": "string",
"t_knowledge_base_category_link": "string",
"t_knowledge_base_category_uid": "string",
"t_knowledge_base_id_answer": "string",
"t_knowledge_base_id_category": "string",
"t_last_link_child_update": "string",
"t_last_link_normal_update": "string",
"t_last_link_with": "string",
"t_last_merge_with": "string",
"t_last_owner_view_at": "2019-08-24T14:15:22Z",
"t_queue_type": "string",
"t_reminder_cp_last_time": "2019-08-24T14:15:22Z",
"t_reminder_cp_num": 0,
"t_reminder_tk_last_time": "2019-08-24T14:15:22Z",
"t_reminder_tk_num": 0,
"t_reminder_tk_src": "string",
"t_self_generated_ticket_call_final_state": "string",
"t_self_generated_ticket_type": "string",
"t_state_last_update": "2019-08-24T14:15:22Z",
"ticket_time_accounting": [
"string"
],
"ticket_time_accounting_ids": [
0
],
"time_unit": 0,
"title": "string",
"type": "string",
"update_diff_in_min": 0,
"update_escalation_at": "2019-08-24T14:15:22Z",
"update_in_min": 0,
"updated_at": "2019-08-24T14:15:22Z",
"updated_by": "string",
"updated_by_id": 0
}
Status | Meaning | Description | Schema |
---|---|---|---|
401 | Unauthorized | Error: Authorization required. Request is not authenticated or current user session is expired | None |
406 | Not Acceptable | Error: Invalid argument. | None |
412 | Precondition Failed | Error: Object required. A required field is missing or empty | None |
default | Default | Search tickets | [TicketWithCustomer] |
Upload ticket attachments
Code samples
POST /tvox/rest/support/ticket/upload-attachments HTTP/1.1
Content-Type: application/json
Cookie: JSESSIONID=SESSION_ID
Host: tvox_host
Content-Length: 58
{"body":"string","name":"string","size":0,"type":"string"}
<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://tvox_host/tvox/rest/support/ticket/upload-attachments",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => "{\"body\":\"string\",\"name\":\"string\",\"size\":0,\"type\":\"string\"}",
CURLOPT_HTTPHEADER => [
"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/support/ticket/upload-attachments \
--header 'Content-Type: application/json' \
--header 'Cookie: JSESSIONID=SESSION_ID' \
--data '{"body":"string","name":"string","size":0,"type":"string"}'
HttpResponse<String> response = Unirest.post("https://tvox_host/tvox/rest/support/ticket/upload-attachments")
.header("Content-Type", "application/json")
.header("Cookie", "JSESSIONID=SESSION_ID")
.body("{\"body\":\"string\",\"name\":\"string\",\"size\":0,\"type\":\"string\"}")
.asString();
package main
import (
"fmt"
"strings"
"net/http"
"io/ioutil"
)
func main() {
url := "https://tvox_host/tvox/rest/support/ticket/upload-attachments"
payload := strings.NewReader("{\"body\":\"string\",\"name\":\"string\",\"size\":0,\"type\":\"string\"}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Content-Type", "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({
"body": "string",
"name": "string",
"size": 0,
"type": "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/support/ticket/upload-attachments");
xhr.setRequestHeader("Content-Type", "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/support/ticket/upload-attachments",
"headers": {
"Content-Type": "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({body: 'string', name: 'string', size: 0, type: 'string'}));
req.end();
import http.client
conn = http.client.HTTPSConnection("tvox_host")
payload = "{\"body\":\"string\",\"name\":\"string\",\"size\":0,\"type\":\"string\"}"
headers = {
'Content-Type': "application/json",
'Cookie': "JSESSIONID=SESSION_ID"
}
conn.request("POST", "/tvox/rest/support/ticket/upload-attachments", 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/support/ticket/upload-attachments")
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["Cookie"] = 'JSESSIONID=SESSION_ID'
request.body = "{\"body\":\"string\",\"name\":\"string\",\"size\":0,\"type\":\"string\"}"
response = http.request(request)
puts response.read_body
POST /rest/support/ticket/upload-attachments
Upload attachments
Parameters
Body parameter
{
"body": "string",
"name": "string",
"size": 0,
"type": "string"
}
Name | In | Type | Required | Description |
---|---|---|---|---|
submitterId | query | string | false | Sender |
body | body | GenericFile | false | File to upload |
Responses
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 |
503 | Service Unavailable | Error: Cannot upload file to server | None |
Create ticket
Code samples
POST /tvox/rest/support/ticket/IVR HTTP/1.1
Content-Type: application/json
Accept: application/json
Cookie: JSESSIONID=SESSION_ID
Host: tvox_host
Content-Length: 8458
{"article":{"attachments":[{"data":"string","filename":"string","id":0,"mime-type":"string","preferences":{"property1":"string","property2":"string"},"size":"string"}],"body":"string","cc":"string","content_type":"string","created_at":"2019-08-24T14:15:22Z","created_by":"string","created_by_id":0,"from":"string","id":0,"in_reply_to":"string","internal":true,"message_id":"string","message_id_md5":"string","origin_by":"string","origin_by_id":0,"preferences":{"property1":{},"property2":{}},"references":"string","reply_to":"string","sender":"Agent","sender_id":0,"subject":"string","ticket_id":0,"time_unit":0,"to":"string","type":"email","type_id":0,"updated_at":"2019-08-24T14:15:22Z","updated_by":"string","updated_by_id":0},"article_count":0,"article_ids":[0],"articles":[{"attachments":[{"data":"string","filename":"string","id":0,"mime-type":"string","preferences":{"property1":"string","property2":"string"},"size":"string"}],"body":"string","cc":"string","content_type":"string","created_at":"2019-08-24T14:15:22Z","created_by":"string","created_by_id":0,"from":"string","id":0,"in_reply_to":"string","internal":true,"message_id":"string","message_id_md5":"string","origin_by":"string","origin_by_id":0,"preferences":{"property1":{},"property2":{}},"references":"string","reply_to":"string","sender":"Agent","sender_id":0,"subject":"string","ticket_id":0,"time_unit":0,"to":"string","type":"email","type_id":0,"updated_at":"2019-08-24T14:15:22Z","updated_by":"string","updated_by_id":0}],"attachments":[{"mimeType":"string","name":"string","uuid":"string"}],"close_at":"2019-08-24T14:15:22Z","close_diff_in_min":0,"close_escalation_at":"2019-08-24T14:15:22Z","close_in_min":0,"create_article_sender":"string","create_article_sender_id":0,"create_article_type":"string","create_article_type_id":0,"created_at":"2019-08-24T14:15:22Z","created_by":"string","created_by_id":0,"customer":"string","customerContact":{"type":"USER","uid":"string","username":"string","value":"string"},"customer_id":"string","escalation_at":"2019-08-24T14:15:22Z","first_response_at":"2019-08-24T14:15:22Z","first_response_diff_in_min":0,"first_response_escalation_at":"2019-08-24T14:15:22Z","first_response_in_min":0,"group":"string","group_id":0,"id":0,"last_contact_agent_at":"2019-08-24T14:15:22Z","last_contact_at":"2019-08-24T14:15:22Z","last_contact_customer_at":"2019-08-24T14:15:22Z","last_owner_update_at":"2019-08-24T14:15:22Z","note":"string","number":"string","organization":"string","organization_id":0,"owner":"string","ownerContact":{"type":"USER","uid":"string","username":"string","value":"string"},"owner_id":0,"pending_time":"2019-08-24T14:15:22Z","priority":"1 low","priority_id":0,"state":"new","state_id":0,"t_agent_close_date":"2019-08-24T14:15:22Z","t_agent_get_date":"2019-08-24T14:15:22Z","t_call_link":"string","t_create_call_uid":"string","t_custom_01":"string","t_custom_02":"string","t_custom_03":"string","t_custom_04":"string","t_custom_05":"string","t_custom_06":"string","t_custom_07":"string","t_custom_08":"string","t_custom_09":"string","t_custom_10":"string","t_custom_11":"string","t_custom_12":"string","t_custom_13":"string","t_custom_14":"string","t_custom_15":"string","t_custom_16":"string","t_custom_17":"string","t_custom_18":"string","t_custom_19":"string","t_custom_20":"string","t_custom_21":"string","t_custom_22":"string","t_custom_23":"string","t_custom_24":"string","t_custom_25":"string","t_custom_26":"string","t_custom_27":"string","t_custom_28":"string","t_custom_29":"string","t_custom_30":"string","t_custom_31":"string","t_custom_32":"string","t_custom_33":"string","t_custom_34":"string","t_custom_35":"string","t_custom_36":"string","t_custom_37":"string","t_custom_38":"string","t_custom_39":"string","t_custom_40":"string","t_custom_41":"string","t_custom_42":"string","t_custom_43":"string","t_custom_44":"string","t_custom_45":"string","t_custom_46":"string","t_custom_47":"string","t_custom_48":"string","t_custom_49":"string","t_custom_50":"string","t_custom_51":"string","t_custom_52":"string","t_custom_53":"string","t_custom_54":"string","t_custom_55":"string","t_custom_56":"string","t_custom_57":"string","t_custom_58":"string","t_custom_59":"string","t_custom_60":"string","t_custom_61":"string","t_custom_62":"string","t_custom_63":"string","t_custom_64":"string","t_custom_65":"string","t_custom_66":"string","t_custom_67":"string","t_custom_68":"string","t_custom_69":"string","t_custom_70":"string","t_custom_71":"string","t_custom_72":"string","t_custom_73":"string","t_custom_74":"string","t_custom_75":"string","t_custom_76":"string","t_custom_77":"string","t_custom_78":"string","t_custom_79":"string","t_custom_80":"string","t_custom_81":"string","t_custom_82":"string","t_custom_83":"string","t_custom_84":"string","t_custom_85":"string","t_custom_86":"string","t_custom_87":"string","t_custom_88":"string","t_custom_89":"string","t_custom_90":"string","t_custom_91":"string","t_custom_92":"string","t_custom_93":"string","t_custom_94":"string","t_custom_95":"string","t_custom_96":"string","t_custom_97":"string","t_custom_98":"string","t_custom_99":"string","t_custom_date_01":"2019-08-24T14:15:22Z","t_custom_date_02":"2019-08-24T14:15:22Z","t_custom_date_03":"2019-08-24T14:15:22Z","t_custom_date_04":"2019-08-24T14:15:22Z","t_custom_date_05":"2019-08-24T14:15:22Z","t_custom_date_06":"2019-08-24T14:15:22Z","t_custom_date_07":"2019-08-24T14:15:22Z","t_custom_date_08":"2019-08-24T14:15:22Z","t_custom_date_09":"2019-08-24T14:15:22Z","t_custom_date_10":"2019-08-24T14:15:22Z","t_custom_date_11":"2019-08-24T14:15:22Z","t_custom_date_12":"2019-08-24T14:15:22Z","t_custom_date_13":"2019-08-24T14:15:22Z","t_custom_date_14":"2019-08-24T14:15:22Z","t_custom_date_15":"2019-08-24T14:15:22Z","t_custom_date_16":"2019-08-24T14:15:22Z","t_custom_date_17":"2019-08-24T14:15:22Z","t_custom_date_18":"2019-08-24T14:15:22Z","t_custom_date_19":"2019-08-24T14:15:22Z","t_custom_date_20":"2019-08-24T14:15:22Z","t_custom_date_21":"2019-08-24T14:15:22Z","t_custom_date_22":"2019-08-24T14:15:22Z","t_custom_date_23":"2019-08-24T14:15:22Z","t_custom_date_24":"2019-08-24T14:15:22Z","t_custom_date_25":"2019-08-24T14:15:22Z","t_custom_date_26":"2019-08-24T14:15:22Z","t_custom_date_27":"2019-08-24T14:15:22Z","t_custom_date_28":"2019-08-24T14:15:22Z","t_custom_date_29":"2019-08-24T14:15:22Z","t_custom_date_30":"2019-08-24T14:15:22Z","t_custom_date_31":"2019-08-24T14:15:22Z","t_custom_date_32":"2019-08-24T14:15:22Z","t_custom_date_33":"2019-08-24T14:15:22Z","t_custom_date_34":"2019-08-24T14:15:22Z","t_custom_date_35":"2019-08-24T14:15:22Z","t_custom_date_36":"2019-08-24T14:15:22Z","t_custom_date_37":"2019-08-24T14:15:22Z","t_custom_date_38":"2019-08-24T14:15:22Z","t_custom_date_39":"2019-08-24T14:15:22Z","t_custom_date_40":"2019-08-24T14:15:22Z","t_custom_date_41":"2019-08-24T14:15:22Z","t_custom_date_42":"2019-08-24T14:15:22Z","t_custom_date_43":"2019-08-24T14:15:22Z","t_custom_date_44":"2019-08-24T14:15:22Z","t_custom_date_45":"2019-08-24T14:15:22Z","t_custom_date_46":"2019-08-24T14:15:22Z","t_custom_date_47":"2019-08-24T14:15:22Z","t_custom_date_48":"2019-08-24T14:15:22Z","t_custom_date_49":"2019-08-24T14:15:22Z","t_external_ticketing_add":true,"t_external_ticketing_link":"string","t_forgot_article_count":0,"t_forgot_time_unit":0,"t_is_child_link":true,"t_is_forgot_ticket":true,"t_is_normal_link":true,"t_is_parent_link":true,"t_is_view_by_owner":true,"t_knowledge_base_answer_link":"string","t_knowledge_base_answer_uid":"string","t_knowledge_base_category_link":"string","t_knowledge_base_category_uid":"string","t_knowledge_base_id_answer":"string","t_knowledge_base_id_category":"string","t_last_link_child_update":"string","t_last_link_normal_update":"string","t_last_link_with":"string","t_last_merge_with":"string","t_last_owner_view_at":"2019-08-24T14:15:22Z","t_queue_type":"string","t_reminder_cp_last_time":"2019-08-24T14:15:22Z","t_reminder_cp_num":0,"t_reminder_tk_last_time":"2019-08-24T14:15:22Z","t_reminder_tk_num":0,"t_reminder_tk_src":"string","t_self_generated_ticket_call_final_state":"string","t_self_generated_ticket_type":"string","t_state_last_update":"2019-08-24T14:15:22Z","ticket_time_accounting":["string"],"ticket_time_accounting_ids":[0],"time_unit":0,"title":"string","type":"string","update_diff_in_min":0,"update_escalation_at":"2019-08-24T14:15:22Z","update_in_min":0,"updated_at":"2019-08-24T14:15:22Z","updated_by":"string","updated_by_id":0}
<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://tvox_host/tvox/rest/support/ticket/IVR",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => "{\"article\":{\"attachments\":[{\"data\":\"string\",\"filename\":\"string\",\"id\":0,\"mime-type\":\"string\",\"preferences\":{\"property1\":\"string\",\"property2\":\"string\"},\"size\":\"string\"}],\"body\":\"string\",\"cc\":\"string\",\"content_type\":\"string\",\"created_at\":\"2019-08-24T14:15:22Z\",\"created_by\":\"string\",\"created_by_id\":0,\"from\":\"string\",\"id\":0,\"in_reply_to\":\"string\",\"internal\":true,\"message_id\":\"string\",\"message_id_md5\":\"string\",\"origin_by\":\"string\",\"origin_by_id\":0,\"preferences\":{\"property1\":{},\"property2\":{}},\"references\":\"string\",\"reply_to\":\"string\",\"sender\":\"Agent\",\"sender_id\":0,\"subject\":\"string\",\"ticket_id\":0,\"time_unit\":0,\"to\":\"string\",\"type\":\"email\",\"type_id\":0,\"updated_at\":\"2019-08-24T14:15:22Z\",\"updated_by\":\"string\",\"updated_by_id\":0},\"article_count\":0,\"article_ids\":[0],\"articles\":[{\"attachments\":[{\"data\":\"string\",\"filename\":\"string\",\"id\":0,\"mime-type\":\"string\",\"preferences\":{\"property1\":\"string\",\"property2\":\"string\"},\"size\":\"string\"}],\"body\":\"string\",\"cc\":\"string\",\"content_type\":\"string\",\"created_at\":\"2019-08-24T14:15:22Z\",\"created_by\":\"string\",\"created_by_id\":0,\"from\":\"string\",\"id\":0,\"in_reply_to\":\"string\",\"internal\":true,\"message_id\":\"string\",\"message_id_md5\":\"string\",\"origin_by\":\"string\",\"origin_by_id\":0,\"preferences\":{\"property1\":{},\"property2\":{}},\"references\":\"string\",\"reply_to\":\"string\",\"sender\":\"Agent\",\"sender_id\":0,\"subject\":\"string\",\"ticket_id\":0,\"time_unit\":0,\"to\":\"string\",\"type\":\"email\",\"type_id\":0,\"updated_at\":\"2019-08-24T14:15:22Z\",\"updated_by\":\"string\",\"updated_by_id\":0}],\"attachments\":[{\"mimeType\":\"string\",\"name\":\"string\",\"uuid\":\"string\"}],\"close_at\":\"2019-08-24T14:15:22Z\",\"close_diff_in_min\":0,\"close_escalation_at\":\"2019-08-24T14:15:22Z\",\"close_in_min\":0,\"create_article_sender\":\"string\",\"create_article_sender_id\":0,\"create_article_type\":\"string\",\"create_article_type_id\":0,\"created_at\":\"2019-08-24T14:15:22Z\",\"created_by\":\"string\",\"created_by_id\":0,\"customer\":\"string\",\"customerContact\":{\"type\":\"USER\",\"uid\":\"string\",\"username\":\"string\",\"value\":\"string\"},\"customer_id\":\"string\",\"escalation_at\":\"2019-08-24T14:15:22Z\",\"first_response_at\":\"2019-08-24T14:15:22Z\",\"first_response_diff_in_min\":0,\"first_response_escalation_at\":\"2019-08-24T14:15:22Z\",\"first_response_in_min\":0,\"group\":\"string\",\"group_id\":0,\"id\":0,\"last_contact_agent_at\":\"2019-08-24T14:15:22Z\",\"last_contact_at\":\"2019-08-24T14:15:22Z\",\"last_contact_customer_at\":\"2019-08-24T14:15:22Z\",\"last_owner_update_at\":\"2019-08-24T14:15:22Z\",\"note\":\"string\",\"number\":\"string\",\"organization\":\"string\",\"organization_id\":0,\"owner\":\"string\",\"ownerContact\":{\"type\":\"USER\",\"uid\":\"string\",\"username\":\"string\",\"value\":\"string\"},\"owner_id\":0,\"pending_time\":\"2019-08-24T14:15:22Z\",\"priority\":\"1 low\",\"priority_id\":0,\"state\":\"new\",\"state_id\":0,\"t_agent_close_date\":\"2019-08-24T14:15:22Z\",\"t_agent_get_date\":\"2019-08-24T14:15:22Z\",\"t_call_link\":\"string\",\"t_create_call_uid\":\"string\",\"t_custom_01\":\"string\",\"t_custom_02\":\"string\",\"t_custom_03\":\"string\",\"t_custom_04\":\"string\",\"t_custom_05\":\"string\",\"t_custom_06\":\"string\",\"t_custom_07\":\"string\",\"t_custom_08\":\"string\",\"t_custom_09\":\"string\",\"t_custom_10\":\"string\",\"t_custom_11\":\"string\",\"t_custom_12\":\"string\",\"t_custom_13\":\"string\",\"t_custom_14\":\"string\",\"t_custom_15\":\"string\",\"t_custom_16\":\"string\",\"t_custom_17\":\"string\",\"t_custom_18\":\"string\",\"t_custom_19\":\"string\",\"t_custom_20\":\"string\",\"t_custom_21\":\"string\",\"t_custom_22\":\"string\",\"t_custom_23\":\"string\",\"t_custom_24\":\"string\",\"t_custom_25\":\"string\",\"t_custom_26\":\"string\",\"t_custom_27\":\"string\",\"t_custom_28\":\"string\",\"t_custom_29\":\"string\",\"t_custom_30\":\"string\",\"t_custom_31\":\"string\",\"t_custom_32\":\"string\",\"t_custom_33\":\"string\",\"t_custom_34\":\"string\",\"t_custom_35\":\"string\",\"t_custom_36\":\"string\",\"t_custom_37\":\"string\",\"t_custom_38\":\"string\",\"t_custom_39\":\"string\",\"t_custom_40\":\"string\",\"t_custom_41\":\"string\",\"t_custom_42\":\"string\",\"t_custom_43\":\"string\",\"t_custom_44\":\"string\",\"t_custom_45\":\"string\",\"t_custom_46\":\"string\",\"t_custom_47\":\"string\",\"t_custom_48\":\"string\",\"t_custom_49\":\"string\",\"t_custom_50\":\"string\",\"t_custom_51\":\"string\",\"t_custom_52\":\"string\",\"t_custom_53\":\"string\",\"t_custom_54\":\"string\",\"t_custom_55\":\"string\",\"t_custom_56\":\"string\",\"t_custom_57\":\"string\",\"t_custom_58\":\"string\",\"t_custom_59\":\"string\",\"t_custom_60\":\"string\",\"t_custom_61\":\"string\",\"t_custom_62\":\"string\",\"t_custom_63\":\"string\",\"t_custom_64\":\"string\",\"t_custom_65\":\"string\",\"t_custom_66\":\"string\",\"t_custom_67\":\"string\",\"t_custom_68\":\"string\",\"t_custom_69\":\"string\",\"t_custom_70\":\"string\",\"t_custom_71\":\"string\",\"t_custom_72\":\"string\",\"t_custom_73\":\"string\",\"t_custom_74\":\"string\",\"t_custom_75\":\"string\",\"t_custom_76\":\"string\",\"t_custom_77\":\"string\",\"t_custom_78\":\"string\",\"t_custom_79\":\"string\",\"t_custom_80\":\"string\",\"t_custom_81\":\"string\",\"t_custom_82\":\"string\",\"t_custom_83\":\"string\",\"t_custom_84\":\"string\",\"t_custom_85\":\"string\",\"t_custom_86\":\"string\",\"t_custom_87\":\"string\",\"t_custom_88\":\"string\",\"t_custom_89\":\"string\",\"t_custom_90\":\"string\",\"t_custom_91\":\"string\",\"t_custom_92\":\"string\",\"t_custom_93\":\"string\",\"t_custom_94\":\"string\",\"t_custom_95\":\"string\",\"t_custom_96\":\"string\",\"t_custom_97\":\"string\",\"t_custom_98\":\"string\",\"t_custom_99\":\"string\",\"t_custom_date_01\":\"2019-08-24T14:15:22Z\",\"t_custom_date_02\":\"2019-08-24T14:15:22Z\",\"t_custom_date_03\":\"2019-08-24T14:15:22Z\",\"t_custom_date_04\":\"2019-08-24T14:15:22Z\",\"t_custom_date_05\":\"2019-08-24T14:15:22Z\",\"t_custom_date_06\":\"2019-08-24T14:15:22Z\",\"t_custom_date_07\":\"2019-08-24T14:15:22Z\",\"t_custom_date_08\":\"2019-08-24T14:15:22Z\",\"t_custom_date_09\":\"2019-08-24T14:15:22Z\",\"t_custom_date_10\":\"2019-08-24T14:15:22Z\",\"t_custom_date_11\":\"2019-08-24T14:15:22Z\",\"t_custom_date_12\":\"2019-08-24T14:15:22Z\",\"t_custom_date_13\":\"2019-08-24T14:15:22Z\",\"t_custom_date_14\":\"2019-08-24T14:15:22Z\",\"t_custom_date_15\":\"2019-08-24T14:15:22Z\",\"t_custom_date_16\":\"2019-08-24T14:15:22Z\",\"t_custom_date_17\":\"2019-08-24T14:15:22Z\",\"t_custom_date_18\":\"2019-08-24T14:15:22Z\",\"t_custom_date_19\":\"2019-08-24T14:15:22Z\",\"t_custom_date_20\":\"2019-08-24T14:15:22Z\",\"t_custom_date_21\":\"2019-08-24T14:15:22Z\",\"t_custom_date_22\":\"2019-08-24T14:15:22Z\",\"t_custom_date_23\":\"2019-08-24T14:15:22Z\",\"t_custom_date_24\":\"2019-08-24T14:15:22Z\",\"t_custom_date_25\":\"2019-08-24T14:15:22Z\",\"t_custom_date_26\":\"2019-08-24T14:15:22Z\",\"t_custom_date_27\":\"2019-08-24T14:15:22Z\",\"t_custom_date_28\":\"2019-08-24T14:15:22Z\",\"t_custom_date_29\":\"2019-08-24T14:15:22Z\",\"t_custom_date_30\":\"2019-08-24T14:15:22Z\",\"t_custom_date_31\":\"2019-08-24T14:15:22Z\",\"t_custom_date_32\":\"2019-08-24T14:15:22Z\",\"t_custom_date_33\":\"2019-08-24T14:15:22Z\",\"t_custom_date_34\":\"2019-08-24T14:15:22Z\",\"t_custom_date_35\":\"2019-08-24T14:15:22Z\",\"t_custom_date_36\":\"2019-08-24T14:15:22Z\",\"t_custom_date_37\":\"2019-08-24T14:15:22Z\",\"t_custom_date_38\":\"2019-08-24T14:15:22Z\",\"t_custom_date_39\":\"2019-08-24T14:15:22Z\",\"t_custom_date_40\":\"2019-08-24T14:15:22Z\",\"t_custom_date_41\":\"2019-08-24T14:15:22Z\",\"t_custom_date_42\":\"2019-08-24T14:15:22Z\",\"t_custom_date_43\":\"2019-08-24T14:15:22Z\",\"t_custom_date_44\":\"2019-08-24T14:15:22Z\",\"t_custom_date_45\":\"2019-08-24T14:15:22Z\",\"t_custom_date_46\":\"2019-08-24T14:15:22Z\",\"t_custom_date_47\":\"2019-08-24T14:15:22Z\",\"t_custom_date_48\":\"2019-08-24T14:15:22Z\",\"t_custom_date_49\":\"2019-08-24T14:15:22Z\",\"t_external_ticketing_add\":true,\"t_external_ticketing_link\":\"string\",\"t_forgot_article_count\":0,\"t_forgot_time_unit\":0,\"t_is_child_link\":true,\"t_is_forgot_ticket\":true,\"t_is_normal_link\":true,\"t_is_parent_link\":true,\"t_is_view_by_owner\":true,\"t_knowledge_base_answer_link\":\"string\",\"t_knowledge_base_answer_uid\":\"string\",\"t_knowledge_base_category_link\":\"string\",\"t_knowledge_base_category_uid\":\"string\",\"t_knowledge_base_id_answer\":\"string\",\"t_knowledge_base_id_category\":\"string\",\"t_last_link_child_update\":\"string\",\"t_last_link_normal_update\":\"string\",\"t_last_link_with\":\"string\",\"t_last_merge_with\":\"string\",\"t_last_owner_view_at\":\"2019-08-24T14:15:22Z\",\"t_queue_type\":\"string\",\"t_reminder_cp_last_time\":\"2019-08-24T14:15:22Z\",\"t_reminder_cp_num\":0,\"t_reminder_tk_last_time\":\"2019-08-24T14:15:22Z\",\"t_reminder_tk_num\":0,\"t_reminder_tk_src\":\"string\",\"t_self_generated_ticket_call_final_state\":\"string\",\"t_self_generated_ticket_type\":\"string\",\"t_state_last_update\":\"2019-08-24T14:15:22Z\",\"ticket_time_accounting\":[\"string\"],\"ticket_time_accounting_ids\":[0],\"time_unit\":0,\"title\":\"string\",\"type\":\"string\",\"update_diff_in_min\":0,\"update_escalation_at\":\"2019-08-24T14:15:22Z\",\"update_in_min\":0,\"updated_at\":\"2019-08-24T14:15:22Z\",\"updated_by\":\"string\",\"updated_by_id\":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/support/ticket/IVR \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--header 'Cookie: JSESSIONID=SESSION_ID' \
--data '{"article":{"attachments":[{"data":"string","filename":"string","id":0,"mime-type":"string","preferences":{"property1":"string","property2":"string"},"size":"string"}],"body":"string","cc":"string","content_type":"string","created_at":"2019-08-24T14:15:22Z","created_by":"string","created_by_id":0,"from":"string","id":0,"in_reply_to":"string","internal":true,"message_id":"string","message_id_md5":"string","origin_by":"string","origin_by_id":0,"preferences":{"property1":{},"property2":{}},"references":"string","reply_to":"string","sender":"Agent","sender_id":0,"subject":"string","ticket_id":0,"time_unit":0,"to":"string","type":"email","type_id":0,"updated_at":"2019-08-24T14:15:22Z","updated_by":"string","updated_by_id":0},"article_count":0,"article_ids":[0],"articles":[{"attachments":[{"data":"string","filename":"string","id":0,"mime-type":"string","preferences":{"property1":"string","property2":"string"},"size":"string"}],"body":"string","cc":"string","content_type":"string","created_at":"2019-08-24T14:15:22Z","created_by":"string","created_by_id":0,"from":"string","id":0,"in_reply_to":"string","internal":true,"message_id":"string","message_id_md5":"string","origin_by":"string","origin_by_id":0,"preferences":{"property1":{},"property2":{}},"references":"string","reply_to":"string","sender":"Agent","sender_id":0,"subject":"string","ticket_id":0,"time_unit":0,"to":"string","type":"email","type_id":0,"updated_at":"2019-08-24T14:15:22Z","updated_by":"string","updated_by_id":0}],"attachments":[{"mimeType":"string","name":"string","uuid":"string"}],"close_at":"2019-08-24T14:15:22Z","close_diff_in_min":0,"close_escalation_at":"2019-08-24T14:15:22Z","close_in_min":0,"create_article_sender":"string","create_article_sender_id":0,"create_article_type":"string","create_article_type_id":0,"created_at":"2019-08-24T14:15:22Z","created_by":"string","created_by_id":0,"customer":"string","customerContact":{"type":"USER","uid":"string","username":"string","value":"string"},"customer_id":"string","escalation_at":"2019-08-24T14:15:22Z","first_response_at":"2019-08-24T14:15:22Z","first_response_diff_in_min":0,"first_response_escalation_at":"2019-08-24T14:15:22Z","first_response_in_min":0,"group":"string","group_id":0,"id":0,"last_contact_agent_at":"2019-08-24T14:15:22Z","last_contact_at":"2019-08-24T14:15:22Z","last_contact_customer_at":"2019-08-24T14:15:22Z","last_owner_update_at":"2019-08-24T14:15:22Z","note":"string","number":"string","organization":"string","organization_id":0,"owner":"string","ownerContact":{"type":"USER","uid":"string","username":"string","value":"string"},"owner_id":0,"pending_time":"2019-08-24T14:15:22Z","priority":"1 low","priority_id":0,"state":"new","state_id":0,"t_agent_close_date":"2019-08-24T14:15:22Z","t_agent_get_date":"2019-08-24T14:15:22Z","t_call_link":"string","t_create_call_uid":"string","t_custom_01":"string","t_custom_02":"string","t_custom_03":"string","t_custom_04":"string","t_custom_05":"string","t_custom_06":"string","t_custom_07":"string","t_custom_08":"string","t_custom_09":"string","t_custom_10":"string","t_custom_11":"string","t_custom_12":"string","t_custom_13":"string","t_custom_14":"string","t_custom_15":"string","t_custom_16":"string","t_custom_17":"string","t_custom_18":"string","t_custom_19":"string","t_custom_20":"string","t_custom_21":"string","t_custom_22":"string","t_custom_23":"string","t_custom_24":"string","t_custom_25":"string","t_custom_26":"string","t_custom_27":"string","t_custom_28":"string","t_custom_29":"string","t_custom_30":"string","t_custom_31":"string","t_custom_32":"string","t_custom_33":"string","t_custom_34":"string","t_custom_35":"string","t_custom_36":"string","t_custom_37":"string","t_custom_38":"string","t_custom_39":"string","t_custom_40":"string","t_custom_41":"string","t_custom_42":"string","t_custom_43":"string","t_custom_44":"string","t_custom_45":"string","t_custom_46":"string","t_custom_47":"string","t_custom_48":"string","t_custom_49":"string","t_custom_50":"string","t_custom_51":"string","t_custom_52":"string","t_custom_53":"string","t_custom_54":"string","t_custom_55":"string","t_custom_56":"string","t_custom_57":"string","t_custom_58":"string","t_custom_59":"string","t_custom_60":"string","t_custom_61":"string","t_custom_62":"string","t_custom_63":"string","t_custom_64":"string","t_custom_65":"string","t_custom_66":"string","t_custom_67":"string","t_custom_68":"string","t_custom_69":"string","t_custom_70":"string","t_custom_71":"string","t_custom_72":"string","t_custom_73":"string","t_custom_74":"string","t_custom_75":"string","t_custom_76":"string","t_custom_77":"string","t_custom_78":"string","t_custom_79":"string","t_custom_80":"string","t_custom_81":"string","t_custom_82":"string","t_custom_83":"string","t_custom_84":"string","t_custom_85":"string","t_custom_86":"string","t_custom_87":"string","t_custom_88":"string","t_custom_89":"string","t_custom_90":"string","t_custom_91":"string","t_custom_92":"string","t_custom_93":"string","t_custom_94":"string","t_custom_95":"string","t_custom_96":"string","t_custom_97":"string","t_custom_98":"string","t_custom_99":"string","t_custom_date_01":"2019-08-24T14:15:22Z","t_custom_date_02":"2019-08-24T14:15:22Z","t_custom_date_03":"2019-08-24T14:15:22Z","t_custom_date_04":"2019-08-24T14:15:22Z","t_custom_date_05":"2019-08-24T14:15:22Z","t_custom_date_06":"2019-08-24T14:15:22Z","t_custom_date_07":"2019-08-24T14:15:22Z","t_custom_date_08":"2019-08-24T14:15:22Z","t_custom_date_09":"2019-08-24T14:15:22Z","t_custom_date_10":"2019-08-24T14:15:22Z","t_custom_date_11":"2019-08-24T14:15:22Z","t_custom_date_12":"2019-08-24T14:15:22Z","t_custom_date_13":"2019-08-24T14:15:22Z","t_custom_date_14":"2019-08-24T14:15:22Z","t_custom_date_15":"2019-08-24T14:15:22Z","t_custom_date_16":"2019-08-24T14:15:22Z","t_custom_date_17":"2019-08-24T14:15:22Z","t_custom_date_18":"2019-08-24T14:15:22Z","t_custom_date_19":"2019-08-24T14:15:22Z","t_custom_date_20":"2019-08-24T14:15:22Z","t_custom_date_21":"2019-08-24T14:15:22Z","t_custom_date_22":"2019-08-24T14:15:22Z","t_custom_date_23":"2019-08-24T14:15:22Z","t_custom_date_24":"2019-08-24T14:15:22Z","t_custom_date_25":"2019-08-24T14:15:22Z","t_custom_date_26":"2019-08-24T14:15:22Z","t_custom_date_27":"2019-08-24T14:15:22Z","t_custom_date_28":"2019-08-24T14:15:22Z","t_custom_date_29":"2019-08-24T14:15:22Z","t_custom_date_30":"2019-08-24T14:15:22Z","t_custom_date_31":"2019-08-24T14:15:22Z","t_custom_date_32":"2019-08-24T14:15:22Z","t_custom_date_33":"2019-08-24T14:15:22Z","t_custom_date_34":"2019-08-24T14:15:22Z","t_custom_date_35":"2019-08-24T14:15:22Z","t_custom_date_36":"2019-08-24T14:15:22Z","t_custom_date_37":"2019-08-24T14:15:22Z","t_custom_date_38":"2019-08-24T14:15:22Z","t_custom_date_39":"2019-08-24T14:15:22Z","t_custom_date_40":"2019-08-24T14:15:22Z","t_custom_date_41":"2019-08-24T14:15:22Z","t_custom_date_42":"2019-08-24T14:15:22Z","t_custom_date_43":"2019-08-24T14:15:22Z","t_custom_date_44":"2019-08-24T14:15:22Z","t_custom_date_45":"2019-08-24T14:15:22Z","t_custom_date_46":"2019-08-24T14:15:22Z","t_custom_date_47":"2019-08-24T14:15:22Z","t_custom_date_48":"2019-08-24T14:15:22Z","t_custom_date_49":"2019-08-24T14:15:22Z","t_external_ticketing_add":true,"t_external_ticketing_link":"string","t_forgot_article_count":0,"t_forgot_time_unit":0,"t_is_child_link":true,"t_is_forgot_ticket":true,"t_is_normal_link":true,"t_is_parent_link":true,"t_is_view_by_owner":true,"t_knowledge_base_answer_link":"string","t_knowledge_base_answer_uid":"string","t_knowledge_base_category_link":"string","t_knowledge_base_category_uid":"string","t_knowledge_base_id_answer":"string","t_knowledge_base_id_category":"string","t_last_link_child_update":"string","t_last_link_normal_update":"string","t_last_link_with":"string","t_last_merge_with":"string","t_last_owner_view_at":"2019-08-24T14:15:22Z","t_queue_type":"string","t_reminder_cp_last_time":"2019-08-24T14:15:22Z","t_reminder_cp_num":0,"t_reminder_tk_last_time":"2019-08-24T14:15:22Z","t_reminder_tk_num":0,"t_reminder_tk_src":"string","t_self_generated_ticket_call_final_state":"string","t_self_generated_ticket_type":"string","t_state_last_update":"2019-08-24T14:15:22Z","ticket_time_accounting":["string"],"ticket_time_accounting_ids":[0],"time_unit":0,"title":"string","type":"string","update_diff_in_min":0,"update_escalation_at":"2019-08-24T14:15:22Z","update_in_min":0,"updated_at":"2019-08-24T14:15:22Z","updated_by":"string","updated_by_id":0}'
HttpResponse<String> response = Unirest.post("https://tvox_host/tvox/rest/support/ticket/IVR")
.header("Content-Type", "application/json")
.header("Accept", "application/json")
.header("Cookie", "JSESSIONID=SESSION_ID")
.body("{\"article\":{\"attachments\":[{\"data\":\"string\",\"filename\":\"string\",\"id\":0,\"mime-type\":\"string\",\"preferences\":{\"property1\":\"string\",\"property2\":\"string\"},\"size\":\"string\"}],\"body\":\"string\",\"cc\":\"string\",\"content_type\":\"string\",\"created_at\":\"2019-08-24T14:15:22Z\",\"created_by\":\"string\",\"created_by_id\":0,\"from\":\"string\",\"id\":0,\"in_reply_to\":\"string\",\"internal\":true,\"message_id\":\"string\",\"message_id_md5\":\"string\",\"origin_by\":\"string\",\"origin_by_id\":0,\"preferences\":{\"property1\":{},\"property2\":{}},\"references\":\"string\",\"reply_to\":\"string\",\"sender\":\"Agent\",\"sender_id\":0,\"subject\":\"string\",\"ticket_id\":0,\"time_unit\":0,\"to\":\"string\",\"type\":\"email\",\"type_id\":0,\"updated_at\":\"2019-08-24T14:15:22Z\",\"updated_by\":\"string\",\"updated_by_id\":0},\"article_count\":0,\"article_ids\":[0],\"articles\":[{\"attachments\":[{\"data\":\"string\",\"filename\":\"string\",\"id\":0,\"mime-type\":\"string\",\"preferences\":{\"property1\":\"string\",\"property2\":\"string\"},\"size\":\"string\"}],\"body\":\"string\",\"cc\":\"string\",\"content_type\":\"string\",\"created_at\":\"2019-08-24T14:15:22Z\",\"created_by\":\"string\",\"created_by_id\":0,\"from\":\"string\",\"id\":0,\"in_reply_to\":\"string\",\"internal\":true,\"message_id\":\"string\",\"message_id_md5\":\"string\",\"origin_by\":\"string\",\"origin_by_id\":0,\"preferences\":{\"property1\":{},\"property2\":{}},\"references\":\"string\",\"reply_to\":\"string\",\"sender\":\"Agent\",\"sender_id\":0,\"subject\":\"string\",\"ticket_id\":0,\"time_unit\":0,\"to\":\"string\",\"type\":\"email\",\"type_id\":0,\"updated_at\":\"2019-08-24T14:15:22Z\",\"updated_by\":\"string\",\"updated_by_id\":0}],\"attachments\":[{\"mimeType\":\"string\",\"name\":\"string\",\"uuid\":\"string\"}],\"close_at\":\"2019-08-24T14:15:22Z\",\"close_diff_in_min\":0,\"close_escalation_at\":\"2019-08-24T14:15:22Z\",\"close_in_min\":0,\"create_article_sender\":\"string\",\"create_article_sender_id\":0,\"create_article_type\":\"string\",\"create_article_type_id\":0,\"created_at\":\"2019-08-24T14:15:22Z\",\"created_by\":\"string\",\"created_by_id\":0,\"customer\":\"string\",\"customerContact\":{\"type\":\"USER\",\"uid\":\"string\",\"username\":\"string\",\"value\":\"string\"},\"customer_id\":\"string\",\"escalation_at\":\"2019-08-24T14:15:22Z\",\"first_response_at\":\"2019-08-24T14:15:22Z\",\"first_response_diff_in_min\":0,\"first_response_escalation_at\":\"2019-08-24T14:15:22Z\",\"first_response_in_min\":0,\"group\":\"string\",\"group_id\":0,\"id\":0,\"last_contact_agent_at\":\"2019-08-24T14:15:22Z\",\"last_contact_at\":\"2019-08-24T14:15:22Z\",\"last_contact_customer_at\":\"2019-08-24T14:15:22Z\",\"last_owner_update_at\":\"2019-08-24T14:15:22Z\",\"note\":\"string\",\"number\":\"string\",\"organization\":\"string\",\"organization_id\":0,\"owner\":\"string\",\"ownerContact\":{\"type\":\"USER\",\"uid\":\"string\",\"username\":\"string\",\"value\":\"string\"},\"owner_id\":0,\"pending_time\":\"2019-08-24T14:15:22Z\",\"priority\":\"1 low\",\"priority_id\":0,\"state\":\"new\",\"state_id\":0,\"t_agent_close_date\":\"2019-08-24T14:15:22Z\",\"t_agent_get_date\":\"2019-08-24T14:15:22Z\",\"t_call_link\":\"string\",\"t_create_call_uid\":\"string\",\"t_custom_01\":\"string\",\"t_custom_02\":\"string\",\"t_custom_03\":\"string\",\"t_custom_04\":\"string\",\"t_custom_05\":\"string\",\"t_custom_06\":\"string\",\"t_custom_07\":\"string\",\"t_custom_08\":\"string\",\"t_custom_09\":\"string\",\"t_custom_10\":\"string\",\"t_custom_11\":\"string\",\"t_custom_12\":\"string\",\"t_custom_13\":\"string\",\"t_custom_14\":\"string\",\"t_custom_15\":\"string\",\"t_custom_16\":\"string\",\"t_custom_17\":\"string\",\"t_custom_18\":\"string\",\"t_custom_19\":\"string\",\"t_custom_20\":\"string\",\"t_custom_21\":\"string\",\"t_custom_22\":\"string\",\"t_custom_23\":\"string\",\"t_custom_24\":\"string\",\"t_custom_25\":\"string\",\"t_custom_26\":\"string\",\"t_custom_27\":\"string\",\"t_custom_28\":\"string\",\"t_custom_29\":\"string\",\"t_custom_30\":\"string\",\"t_custom_31\":\"string\",\"t_custom_32\":\"string\",\"t_custom_33\":\"string\",\"t_custom_34\":\"string\",\"t_custom_35\":\"string\",\"t_custom_36\":\"string\",\"t_custom_37\":\"string\",\"t_custom_38\":\"string\",\"t_custom_39\":\"string\",\"t_custom_40\":\"string\",\"t_custom_41\":\"string\",\"t_custom_42\":\"string\",\"t_custom_43\":\"string\",\"t_custom_44\":\"string\",\"t_custom_45\":\"string\",\"t_custom_46\":\"string\",\"t_custom_47\":\"string\",\"t_custom_48\":\"string\",\"t_custom_49\":\"string\",\"t_custom_50\":\"string\",\"t_custom_51\":\"string\",\"t_custom_52\":\"string\",\"t_custom_53\":\"string\",\"t_custom_54\":\"string\",\"t_custom_55\":\"string\",\"t_custom_56\":\"string\",\"t_custom_57\":\"string\",\"t_custom_58\":\"string\",\"t_custom_59\":\"string\",\"t_custom_60\":\"string\",\"t_custom_61\":\"string\",\"t_custom_62\":\"string\",\"t_custom_63\":\"string\",\"t_custom_64\":\"string\",\"t_custom_65\":\"string\",\"t_custom_66\":\"string\",\"t_custom_67\":\"string\",\"t_custom_68\":\"string\",\"t_custom_69\":\"string\",\"t_custom_70\":\"string\",\"t_custom_71\":\"string\",\"t_custom_72\":\"string\",\"t_custom_73\":\"string\",\"t_custom_74\":\"string\",\"t_custom_75\":\"string\",\"t_custom_76\":\"string\",\"t_custom_77\":\"string\",\"t_custom_78\":\"string\",\"t_custom_79\":\"string\",\"t_custom_80\":\"string\",\"t_custom_81\":\"string\",\"t_custom_82\":\"string\",\"t_custom_83\":\"string\",\"t_custom_84\":\"string\",\"t_custom_85\":\"string\",\"t_custom_86\":\"string\",\"t_custom_87\":\"string\",\"t_custom_88\":\"string\",\"t_custom_89\":\"string\",\"t_custom_90\":\"string\",\"t_custom_91\":\"string\",\"t_custom_92\":\"string\",\"t_custom_93\":\"string\",\"t_custom_94\":\"string\",\"t_custom_95\":\"string\",\"t_custom_96\":\"string\",\"t_custom_97\":\"string\",\"t_custom_98\":\"string\",\"t_custom_99\":\"string\",\"t_custom_date_01\":\"2019-08-24T14:15:22Z\",\"t_custom_date_02\":\"2019-08-24T14:15:22Z\",\"t_custom_date_03\":\"2019-08-24T14:15:22Z\",\"t_custom_date_04\":\"2019-08-24T14:15:22Z\",\"t_custom_date_05\":\"2019-08-24T14:15:22Z\",\"t_custom_date_06\":\"2019-08-24T14:15:22Z\",\"t_custom_date_07\":\"2019-08-24T14:15:22Z\",\"t_custom_date_08\":\"2019-08-24T14:15:22Z\",\"t_custom_date_09\":\"2019-08-24T14:15:22Z\",\"t_custom_date_10\":\"2019-08-24T14:15:22Z\",\"t_custom_date_11\":\"2019-08-24T14:15:22Z\",\"t_custom_date_12\":\"2019-08-24T14:15:22Z\",\"t_custom_date_13\":\"2019-08-24T14:15:22Z\",\"t_custom_date_14\":\"2019-08-24T14:15:22Z\",\"t_custom_date_15\":\"2019-08-24T14:15:22Z\",\"t_custom_date_16\":\"2019-08-24T14:15:22Z\",\"t_custom_date_17\":\"2019-08-24T14:15:22Z\",\"t_custom_date_18\":\"2019-08-24T14:15:22Z\",\"t_custom_date_19\":\"2019-08-24T14:15:22Z\",\"t_custom_date_20\":\"2019-08-24T14:15:22Z\",\"t_custom_date_21\":\"2019-08-24T14:15:22Z\",\"t_custom_date_22\":\"2019-08-24T14:15:22Z\",\"t_custom_date_23\":\"2019-08-24T14:15:22Z\",\"t_custom_date_24\":\"2019-08-24T14:15:22Z\",\"t_custom_date_25\":\"2019-08-24T14:15:22Z\",\"t_custom_date_26\":\"2019-08-24T14:15:22Z\",\"t_custom_date_27\":\"2019-08-24T14:15:22Z\",\"t_custom_date_28\":\"2019-08-24T14:15:22Z\",\"t_custom_date_29\":\"2019-08-24T14:15:22Z\",\"t_custom_date_30\":\"2019-08-24T14:15:22Z\",\"t_custom_date_31\":\"2019-08-24T14:15:22Z\",\"t_custom_date_32\":\"2019-08-24T14:15:22Z\",\"t_custom_date_33\":\"2019-08-24T14:15:22Z\",\"t_custom_date_34\":\"2019-08-24T14:15:22Z\",\"t_custom_date_35\":\"2019-08-24T14:15:22Z\",\"t_custom_date_36\":\"2019-08-24T14:15:22Z\",\"t_custom_date_37\":\"2019-08-24T14:15:22Z\",\"t_custom_date_38\":\"2019-08-24T14:15:22Z\",\"t_custom_date_39\":\"2019-08-24T14:15:22Z\",\"t_custom_date_40\":\"2019-08-24T14:15:22Z\",\"t_custom_date_41\":\"2019-08-24T14:15:22Z\",\"t_custom_date_42\":\"2019-08-24T14:15:22Z\",\"t_custom_date_43\":\"2019-08-24T14:15:22Z\",\"t_custom_date_44\":\"2019-08-24T14:15:22Z\",\"t_custom_date_45\":\"2019-08-24T14:15:22Z\",\"t_custom_date_46\":\"2019-08-24T14:15:22Z\",\"t_custom_date_47\":\"2019-08-24T14:15:22Z\",\"t_custom_date_48\":\"2019-08-24T14:15:22Z\",\"t_custom_date_49\":\"2019-08-24T14:15:22Z\",\"t_external_ticketing_add\":true,\"t_external_ticketing_link\":\"string\",\"t_forgot_article_count\":0,\"t_forgot_time_unit\":0,\"t_is_child_link\":true,\"t_is_forgot_ticket\":true,\"t_is_normal_link\":true,\"t_is_parent_link\":true,\"t_is_view_by_owner\":true,\"t_knowledge_base_answer_link\":\"string\",\"t_knowledge_base_answer_uid\":\"string\",\"t_knowledge_base_category_link\":\"string\",\"t_knowledge_base_category_uid\":\"string\",\"t_knowledge_base_id_answer\":\"string\",\"t_knowledge_base_id_category\":\"string\",\"t_last_link_child_update\":\"string\",\"t_last_link_normal_update\":\"string\",\"t_last_link_with\":\"string\",\"t_last_merge_with\":\"string\",\"t_last_owner_view_at\":\"2019-08-24T14:15:22Z\",\"t_queue_type\":\"string\",\"t_reminder_cp_last_time\":\"2019-08-24T14:15:22Z\",\"t_reminder_cp_num\":0,\"t_reminder_tk_last_time\":\"2019-08-24T14:15:22Z\",\"t_reminder_tk_num\":0,\"t_reminder_tk_src\":\"string\",\"t_self_generated_ticket_call_final_state\":\"string\",\"t_self_generated_ticket_type\":\"string\",\"t_state_last_update\":\"2019-08-24T14:15:22Z\",\"ticket_time_accounting\":[\"string\"],\"ticket_time_accounting_ids\":[0],\"time_unit\":0,\"title\":\"string\",\"type\":\"string\",\"update_diff_in_min\":0,\"update_escalation_at\":\"2019-08-24T14:15:22Z\",\"update_in_min\":0,\"updated_at\":\"2019-08-24T14:15:22Z\",\"updated_by\":\"string\",\"updated_by_id\":0}")
.asString();
package main
import (
"fmt"
"strings"
"net/http"
"io/ioutil"
)
func main() {
url := "https://tvox_host/tvox/rest/support/ticket/IVR"
payload := strings.NewReader("{\"article\":{\"attachments\":[{\"data\":\"string\",\"filename\":\"string\",\"id\":0,\"mime-type\":\"string\",\"preferences\":{\"property1\":\"string\",\"property2\":\"string\"},\"size\":\"string\"}],\"body\":\"string\",\"cc\":\"string\",\"content_type\":\"string\",\"created_at\":\"2019-08-24T14:15:22Z\",\"created_by\":\"string\",\"created_by_id\":0,\"from\":\"string\",\"id\":0,\"in_reply_to\":\"string\",\"internal\":true,\"message_id\":\"string\",\"message_id_md5\":\"string\",\"origin_by\":\"string\",\"origin_by_id\":0,\"preferences\":{\"property1\":{},\"property2\":{}},\"references\":\"string\",\"reply_to\":\"string\",\"sender\":\"Agent\",\"sender_id\":0,\"subject\":\"string\",\"ticket_id\":0,\"time_unit\":0,\"to\":\"string\",\"type\":\"email\",\"type_id\":0,\"updated_at\":\"2019-08-24T14:15:22Z\",\"updated_by\":\"string\",\"updated_by_id\":0},\"article_count\":0,\"article_ids\":[0],\"articles\":[{\"attachments\":[{\"data\":\"string\",\"filename\":\"string\",\"id\":0,\"mime-type\":\"string\",\"preferences\":{\"property1\":\"string\",\"property2\":\"string\"},\"size\":\"string\"}],\"body\":\"string\",\"cc\":\"string\",\"content_type\":\"string\",\"created_at\":\"2019-08-24T14:15:22Z\",\"created_by\":\"string\",\"created_by_id\":0,\"from\":\"string\",\"id\":0,\"in_reply_to\":\"string\",\"internal\":true,\"message_id\":\"string\",\"message_id_md5\":\"string\",\"origin_by\":\"string\",\"origin_by_id\":0,\"preferences\":{\"property1\":{},\"property2\":{}},\"references\":\"string\",\"reply_to\":\"string\",\"sender\":\"Agent\",\"sender_id\":0,\"subject\":\"string\",\"ticket_id\":0,\"time_unit\":0,\"to\":\"string\",\"type\":\"email\",\"type_id\":0,\"updated_at\":\"2019-08-24T14:15:22Z\",\"updated_by\":\"string\",\"updated_by_id\":0}],\"attachments\":[{\"mimeType\":\"string\",\"name\":\"string\",\"uuid\":\"string\"}],\"close_at\":\"2019-08-24T14:15:22Z\",\"close_diff_in_min\":0,\"close_escalation_at\":\"2019-08-24T14:15:22Z\",\"close_in_min\":0,\"create_article_sender\":\"string\",\"create_article_sender_id\":0,\"create_article_type\":\"string\",\"create_article_type_id\":0,\"created_at\":\"2019-08-24T14:15:22Z\",\"created_by\":\"string\",\"created_by_id\":0,\"customer\":\"string\",\"customerContact\":{\"type\":\"USER\",\"uid\":\"string\",\"username\":\"string\",\"value\":\"string\"},\"customer_id\":\"string\",\"escalation_at\":\"2019-08-24T14:15:22Z\",\"first_response_at\":\"2019-08-24T14:15:22Z\",\"first_response_diff_in_min\":0,\"first_response_escalation_at\":\"2019-08-24T14:15:22Z\",\"first_response_in_min\":0,\"group\":\"string\",\"group_id\":0,\"id\":0,\"last_contact_agent_at\":\"2019-08-24T14:15:22Z\",\"last_contact_at\":\"2019-08-24T14:15:22Z\",\"last_contact_customer_at\":\"2019-08-24T14:15:22Z\",\"last_owner_update_at\":\"2019-08-24T14:15:22Z\",\"note\":\"string\",\"number\":\"string\",\"organization\":\"string\",\"organization_id\":0,\"owner\":\"string\",\"ownerContact\":{\"type\":\"USER\",\"uid\":\"string\",\"username\":\"string\",\"value\":\"string\"},\"owner_id\":0,\"pending_time\":\"2019-08-24T14:15:22Z\",\"priority\":\"1 low\",\"priority_id\":0,\"state\":\"new\",\"state_id\":0,\"t_agent_close_date\":\"2019-08-24T14:15:22Z\",\"t_agent_get_date\":\"2019-08-24T14:15:22Z\",\"t_call_link\":\"string\",\"t_create_call_uid\":\"string\",\"t_custom_01\":\"string\",\"t_custom_02\":\"string\",\"t_custom_03\":\"string\",\"t_custom_04\":\"string\",\"t_custom_05\":\"string\",\"t_custom_06\":\"string\",\"t_custom_07\":\"string\",\"t_custom_08\":\"string\",\"t_custom_09\":\"string\",\"t_custom_10\":\"string\",\"t_custom_11\":\"string\",\"t_custom_12\":\"string\",\"t_custom_13\":\"string\",\"t_custom_14\":\"string\",\"t_custom_15\":\"string\",\"t_custom_16\":\"string\",\"t_custom_17\":\"string\",\"t_custom_18\":\"string\",\"t_custom_19\":\"string\",\"t_custom_20\":\"string\",\"t_custom_21\":\"string\",\"t_custom_22\":\"string\",\"t_custom_23\":\"string\",\"t_custom_24\":\"string\",\"t_custom_25\":\"string\",\"t_custom_26\":\"string\",\"t_custom_27\":\"string\",\"t_custom_28\":\"string\",\"t_custom_29\":\"string\",\"t_custom_30\":\"string\",\"t_custom_31\":\"string\",\"t_custom_32\":\"string\",\"t_custom_33\":\"string\",\"t_custom_34\":\"string\",\"t_custom_35\":\"string\",\"t_custom_36\":\"string\",\"t_custom_37\":\"string\",\"t_custom_38\":\"string\",\"t_custom_39\":\"string\",\"t_custom_40\":\"string\",\"t_custom_41\":\"string\",\"t_custom_42\":\"string\",\"t_custom_43\":\"string\",\"t_custom_44\":\"string\",\"t_custom_45\":\"string\",\"t_custom_46\":\"string\",\"t_custom_47\":\"string\",\"t_custom_48\":\"string\",\"t_custom_49\":\"string\",\"t_custom_50\":\"string\",\"t_custom_51\":\"string\",\"t_custom_52\":\"string\",\"t_custom_53\":\"string\",\"t_custom_54\":\"string\",\"t_custom_55\":\"string\",\"t_custom_56\":\"string\",\"t_custom_57\":\"string\",\"t_custom_58\":\"string\",\"t_custom_59\":\"string\",\"t_custom_60\":\"string\",\"t_custom_61\":\"string\",\"t_custom_62\":\"string\",\"t_custom_63\":\"string\",\"t_custom_64\":\"string\",\"t_custom_65\":\"string\",\"t_custom_66\":\"string\",\"t_custom_67\":\"string\",\"t_custom_68\":\"string\",\"t_custom_69\":\"string\",\"t_custom_70\":\"string\",\"t_custom_71\":\"string\",\"t_custom_72\":\"string\",\"t_custom_73\":\"string\",\"t_custom_74\":\"string\",\"t_custom_75\":\"string\",\"t_custom_76\":\"string\",\"t_custom_77\":\"string\",\"t_custom_78\":\"string\",\"t_custom_79\":\"string\",\"t_custom_80\":\"string\",\"t_custom_81\":\"string\",\"t_custom_82\":\"string\",\"t_custom_83\":\"string\",\"t_custom_84\":\"string\",\"t_custom_85\":\"string\",\"t_custom_86\":\"string\",\"t_custom_87\":\"string\",\"t_custom_88\":\"string\",\"t_custom_89\":\"string\",\"t_custom_90\":\"string\",\"t_custom_91\":\"string\",\"t_custom_92\":\"string\",\"t_custom_93\":\"string\",\"t_custom_94\":\"string\",\"t_custom_95\":\"string\",\"t_custom_96\":\"string\",\"t_custom_97\":\"string\",\"t_custom_98\":\"string\",\"t_custom_99\":\"string\",\"t_custom_date_01\":\"2019-08-24T14:15:22Z\",\"t_custom_date_02\":\"2019-08-24T14:15:22Z\",\"t_custom_date_03\":\"2019-08-24T14:15:22Z\",\"t_custom_date_04\":\"2019-08-24T14:15:22Z\",\"t_custom_date_05\":\"2019-08-24T14:15:22Z\",\"t_custom_date_06\":\"2019-08-24T14:15:22Z\",\"t_custom_date_07\":\"2019-08-24T14:15:22Z\",\"t_custom_date_08\":\"2019-08-24T14:15:22Z\",\"t_custom_date_09\":\"2019-08-24T14:15:22Z\",\"t_custom_date_10\":\"2019-08-24T14:15:22Z\",\"t_custom_date_11\":\"2019-08-24T14:15:22Z\",\"t_custom_date_12\":\"2019-08-24T14:15:22Z\",\"t_custom_date_13\":\"2019-08-24T14:15:22Z\",\"t_custom_date_14\":\"2019-08-24T14:15:22Z\",\"t_custom_date_15\":\"2019-08-24T14:15:22Z\",\"t_custom_date_16\":\"2019-08-24T14:15:22Z\",\"t_custom_date_17\":\"2019-08-24T14:15:22Z\",\"t_custom_date_18\":\"2019-08-24T14:15:22Z\",\"t_custom_date_19\":\"2019-08-24T14:15:22Z\",\"t_custom_date_20\":\"2019-08-24T14:15:22Z\",\"t_custom_date_21\":\"2019-08-24T14:15:22Z\",\"t_custom_date_22\":\"2019-08-24T14:15:22Z\",\"t_custom_date_23\":\"2019-08-24T14:15:22Z\",\"t_custom_date_24\":\"2019-08-24T14:15:22Z\",\"t_custom_date_25\":\"2019-08-24T14:15:22Z\",\"t_custom_date_26\":\"2019-08-24T14:15:22Z\",\"t_custom_date_27\":\"2019-08-24T14:15:22Z\",\"t_custom_date_28\":\"2019-08-24T14:15:22Z\",\"t_custom_date_29\":\"2019-08-24T14:15:22Z\",\"t_custom_date_30\":\"2019-08-24T14:15:22Z\",\"t_custom_date_31\":\"2019-08-24T14:15:22Z\",\"t_custom_date_32\":\"2019-08-24T14:15:22Z\",\"t_custom_date_33\":\"2019-08-24T14:15:22Z\",\"t_custom_date_34\":\"2019-08-24T14:15:22Z\",\"t_custom_date_35\":\"2019-08-24T14:15:22Z\",\"t_custom_date_36\":\"2019-08-24T14:15:22Z\",\"t_custom_date_37\":\"2019-08-24T14:15:22Z\",\"t_custom_date_38\":\"2019-08-24T14:15:22Z\",\"t_custom_date_39\":\"2019-08-24T14:15:22Z\",\"t_custom_date_40\":\"2019-08-24T14:15:22Z\",\"t_custom_date_41\":\"2019-08-24T14:15:22Z\",\"t_custom_date_42\":\"2019-08-24T14:15:22Z\",\"t_custom_date_43\":\"2019-08-24T14:15:22Z\",\"t_custom_date_44\":\"2019-08-24T14:15:22Z\",\"t_custom_date_45\":\"2019-08-24T14:15:22Z\",\"t_custom_date_46\":\"2019-08-24T14:15:22Z\",\"t_custom_date_47\":\"2019-08-24T14:15:22Z\",\"t_custom_date_48\":\"2019-08-24T14:15:22Z\",\"t_custom_date_49\":\"2019-08-24T14:15:22Z\",\"t_external_ticketing_add\":true,\"t_external_ticketing_link\":\"string\",\"t_forgot_article_count\":0,\"t_forgot_time_unit\":0,\"t_is_child_link\":true,\"t_is_forgot_ticket\":true,\"t_is_normal_link\":true,\"t_is_parent_link\":true,\"t_is_view_by_owner\":true,\"t_knowledge_base_answer_link\":\"string\",\"t_knowledge_base_answer_uid\":\"string\",\"t_knowledge_base_category_link\":\"string\",\"t_knowledge_base_category_uid\":\"string\",\"t_knowledge_base_id_answer\":\"string\",\"t_knowledge_base_id_category\":\"string\",\"t_last_link_child_update\":\"string\",\"t_last_link_normal_update\":\"string\",\"t_last_link_with\":\"string\",\"t_last_merge_with\":\"string\",\"t_last_owner_view_at\":\"2019-08-24T14:15:22Z\",\"t_queue_type\":\"string\",\"t_reminder_cp_last_time\":\"2019-08-24T14:15:22Z\",\"t_reminder_cp_num\":0,\"t_reminder_tk_last_time\":\"2019-08-24T14:15:22Z\",\"t_reminder_tk_num\":0,\"t_reminder_tk_src\":\"string\",\"t_self_generated_ticket_call_final_state\":\"string\",\"t_self_generated_ticket_type\":\"string\",\"t_state_last_update\":\"2019-08-24T14:15:22Z\",\"ticket_time_accounting\":[\"string\"],\"ticket_time_accounting_ids\":[0],\"time_unit\":0,\"title\":\"string\",\"type\":\"string\",\"update_diff_in_min\":0,\"update_escalation_at\":\"2019-08-24T14:15:22Z\",\"update_in_min\":0,\"updated_at\":\"2019-08-24T14:15:22Z\",\"updated_by\":\"string\",\"updated_by_id\":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({
"article": {
"attachments": [
{
"data": "string",
"filename": "string",
"id": 0,
"mime-type": "string",
"preferences": {
"property1": "string",
"property2": "string"
},
"size": "string"
}
],
"body": "string",
"cc": "string",
"content_type": "string",
"created_at": "2019-08-24T14:15:22Z",
"created_by": "string",
"created_by_id": 0,
"from": "string",
"id": 0,
"in_reply_to": "string",
"internal": true,
"message_id": "string",
"message_id_md5": "string",
"origin_by": "string",
"origin_by_id": 0,
"preferences": {
"property1": {},
"property2": {}
},
"references": "string",
"reply_to": "string",
"sender": "Agent",
"sender_id": 0,
"subject": "string",
"ticket_id": 0,
"time_unit": 0,
"to": "string",
"type": "email",
"type_id": 0,
"updated_at": "2019-08-24T14:15:22Z",
"updated_by": "string",
"updated_by_id": 0
},
"article_count": 0,
"article_ids": [
0
],
"articles": [
{
"attachments": [
{
"data": "string",
"filename": "string",
"id": 0,
"mime-type": "string",
"preferences": {
"property1": "string",
"property2": "string"
},
"size": "string"
}
],
"body": "string",
"cc": "string",
"content_type": "string",
"created_at": "2019-08-24T14:15:22Z",
"created_by": "string",
"created_by_id": 0,
"from": "string",
"id": 0,
"in_reply_to": "string",
"internal": true,
"message_id": "string",
"message_id_md5": "string",
"origin_by": "string",
"origin_by_id": 0,
"preferences": {
"property1": {},
"property2": {}
},
"references": "string",
"reply_to": "string",
"sender": "Agent",
"sender_id": 0,
"subject": "string",
"ticket_id": 0,
"time_unit": 0,
"to": "string",
"type": "email",
"type_id": 0,
"updated_at": "2019-08-24T14:15:22Z",
"updated_by": "string",
"updated_by_id": 0
}
],
"attachments": [
{
"mimeType": "string",
"name": "string",
"uuid": "string"
}
],
"close_at": "2019-08-24T14:15:22Z",
"close_diff_in_min": 0,
"close_escalation_at": "2019-08-24T14:15:22Z",
"close_in_min": 0,
"create_article_sender": "string",
"create_article_sender_id": 0,
"create_article_type": "string",
"create_article_type_id": 0,
"created_at": "2019-08-24T14:15:22Z",
"created_by": "string",
"created_by_id": 0,
"customer": "string",
"customerContact": {
"type": "USER",
"uid": "string",
"username": "string",
"value": "string"
},
"customer_id": "string",
"escalation_at": "2019-08-24T14:15:22Z",
"first_response_at": "2019-08-24T14:15:22Z",
"first_response_diff_in_min": 0,
"first_response_escalation_at": "2019-08-24T14:15:22Z",
"first_response_in_min": 0,
"group": "string",
"group_id": 0,
"id": 0,
"last_contact_agent_at": "2019-08-24T14:15:22Z",
"last_contact_at": "2019-08-24T14:15:22Z",
"last_contact_customer_at": "2019-08-24T14:15:22Z",
"last_owner_update_at": "2019-08-24T14:15:22Z",
"note": "string",
"number": "string",
"organization": "string",
"organization_id": 0,
"owner": "string",
"ownerContact": {
"type": "USER",
"uid": "string",
"username": "string",
"value": "string"
},
"owner_id": 0,
"pending_time": "2019-08-24T14:15:22Z",
"priority": "1 low",
"priority_id": 0,
"state": "new",
"state_id": 0,
"t_agent_close_date": "2019-08-24T14:15:22Z",
"t_agent_get_date": "2019-08-24T14:15:22Z",
"t_call_link": "string",
"t_create_call_uid": "string",
"t_custom_01": "string",
"t_custom_02": "string",
"t_custom_03": "string",
"t_custom_04": "string",
"t_custom_05": "string",
"t_custom_06": "string",
"t_custom_07": "string",
"t_custom_08": "string",
"t_custom_09": "string",
"t_custom_10": "string",
"t_custom_11": "string",
"t_custom_12": "string",
"t_custom_13": "string",
"t_custom_14": "string",
"t_custom_15": "string",
"t_custom_16": "string",
"t_custom_17": "string",
"t_custom_18": "string",
"t_custom_19": "string",
"t_custom_20": "string",
"t_custom_21": "string",
"t_custom_22": "string",
"t_custom_23": "string",
"t_custom_24": "string",
"t_custom_25": "string",
"t_custom_26": "string",
"t_custom_27": "string",
"t_custom_28": "string",
"t_custom_29": "string",
"t_custom_30": "string",
"t_custom_31": "string",
"t_custom_32": "string",
"t_custom_33": "string",
"t_custom_34": "string",
"t_custom_35": "string",
"t_custom_36": "string",
"t_custom_37": "string",
"t_custom_38": "string",
"t_custom_39": "string",
"t_custom_40": "string",
"t_custom_41": "string",
"t_custom_42": "string",
"t_custom_43": "string",
"t_custom_44": "string",
"t_custom_45": "string",
"t_custom_46": "string",
"t_custom_47": "string",
"t_custom_48": "string",
"t_custom_49": "string",
"t_custom_50": "string",
"t_custom_51": "string",
"t_custom_52": "string",
"t_custom_53": "string",
"t_custom_54": "string",
"t_custom_55": "string",
"t_custom_56": "string",
"t_custom_57": "string",
"t_custom_58": "string",
"t_custom_59": "string",
"t_custom_60": "string",
"t_custom_61": "string",
"t_custom_62": "string",
"t_custom_63": "string",
"t_custom_64": "string",
"t_custom_65": "string",
"t_custom_66": "string",
"t_custom_67": "string",
"t_custom_68": "string",
"t_custom_69": "string",
"t_custom_70": "string",
"t_custom_71": "string",
"t_custom_72": "string",
"t_custom_73": "string",
"t_custom_74": "string",
"t_custom_75": "string",
"t_custom_76": "string",
"t_custom_77": "string",
"t_custom_78": "string",
"t_custom_79": "string",
"t_custom_80": "string",
"t_custom_81": "string",
"t_custom_82": "string",
"t_custom_83": "string",
"t_custom_84": "string",
"t_custom_85": "string",
"t_custom_86": "string",
"t_custom_87": "string",
"t_custom_88": "string",
"t_custom_89": "string",
"t_custom_90": "string",
"t_custom_91": "string",
"t_custom_92": "string",
"t_custom_93": "string",
"t_custom_94": "string",
"t_custom_95": "string",
"t_custom_96": "string",
"t_custom_97": "string",
"t_custom_98": "string",
"t_custom_99": "string",
"t_custom_date_01": "2019-08-24T14:15:22Z",
"t_custom_date_02": "2019-08-24T14:15:22Z",
"t_custom_date_03": "2019-08-24T14:15:22Z",
"t_custom_date_04": "2019-08-24T14:15:22Z",
"t_custom_date_05": "2019-08-24T14:15:22Z",
"t_custom_date_06": "2019-08-24T14:15:22Z",
"t_custom_date_07": "2019-08-24T14:15:22Z",
"t_custom_date_08": "2019-08-24T14:15:22Z",
"t_custom_date_09": "2019-08-24T14:15:22Z",
"t_custom_date_10": "2019-08-24T14:15:22Z",
"t_custom_date_11": "2019-08-24T14:15:22Z",
"t_custom_date_12": "2019-08-24T14:15:22Z",
"t_custom_date_13": "2019-08-24T14:15:22Z",
"t_custom_date_14": "2019-08-24T14:15:22Z",
"t_custom_date_15": "2019-08-24T14:15:22Z",
"t_custom_date_16": "2019-08-24T14:15:22Z",
"t_custom_date_17": "2019-08-24T14:15:22Z",
"t_custom_date_18": "2019-08-24T14:15:22Z",
"t_custom_date_19": "2019-08-24T14:15:22Z",
"t_custom_date_20": "2019-08-24T14:15:22Z",
"t_custom_date_21": "2019-08-24T14:15:22Z",
"t_custom_date_22": "2019-08-24T14:15:22Z",
"t_custom_date_23": "2019-08-24T14:15:22Z",
"t_custom_date_24": "2019-08-24T14:15:22Z",
"t_custom_date_25": "2019-08-24T14:15:22Z",
"t_custom_date_26": "2019-08-24T14:15:22Z",
"t_custom_date_27": "2019-08-24T14:15:22Z",
"t_custom_date_28": "2019-08-24T14:15:22Z",
"t_custom_date_29": "2019-08-24T14:15:22Z",
"t_custom_date_30": "2019-08-24T14:15:22Z",
"t_custom_date_31": "2019-08-24T14:15:22Z",
"t_custom_date_32": "2019-08-24T14:15:22Z",
"t_custom_date_33": "2019-08-24T14:15:22Z",
"t_custom_date_34": "2019-08-24T14:15:22Z",
"t_custom_date_35": "2019-08-24T14:15:22Z",
"t_custom_date_36": "2019-08-24T14:15:22Z",
"t_custom_date_37": "2019-08-24T14:15:22Z",
"t_custom_date_38": "2019-08-24T14:15:22Z",
"t_custom_date_39": "2019-08-24T14:15:22Z",
"t_custom_date_40": "2019-08-24T14:15:22Z",
"t_custom_date_41": "2019-08-24T14:15:22Z",
"t_custom_date_42": "2019-08-24T14:15:22Z",
"t_custom_date_43": "2019-08-24T14:15:22Z",
"t_custom_date_44": "2019-08-24T14:15:22Z",
"t_custom_date_45": "2019-08-24T14:15:22Z",
"t_custom_date_46": "2019-08-24T14:15:22Z",
"t_custom_date_47": "2019-08-24T14:15:22Z",
"t_custom_date_48": "2019-08-24T14:15:22Z",
"t_custom_date_49": "2019-08-24T14:15:22Z",
"t_external_ticketing_add": true,
"t_external_ticketing_link": "string",
"t_forgot_article_count": 0,
"t_forgot_time_unit": 0,
"t_is_child_link": true,
"t_is_forgot_ticket": true,
"t_is_normal_link": true,
"t_is_parent_link": true,
"t_is_view_by_owner": true,
"t_knowledge_base_answer_link": "string",
"t_knowledge_base_answer_uid": "string",
"t_knowledge_base_category_link": "string",
"t_knowledge_base_category_uid": "string",
"t_knowledge_base_id_answer": "string",
"t_knowledge_base_id_category": "string",
"t_last_link_child_update": "string",
"t_last_link_normal_update": "string",
"t_last_link_with": "string",
"t_last_merge_with": "string",
"t_last_owner_view_at": "2019-08-24T14:15:22Z",
"t_queue_type": "string",
"t_reminder_cp_last_time": "2019-08-24T14:15:22Z",
"t_reminder_cp_num": 0,
"t_reminder_tk_last_time": "2019-08-24T14:15:22Z",
"t_reminder_tk_num": 0,
"t_reminder_tk_src": "string",
"t_self_generated_ticket_call_final_state": "string",
"t_self_generated_ticket_type": "string",
"t_state_last_update": "2019-08-24T14:15:22Z",
"ticket_time_accounting": [
"string"
],
"ticket_time_accounting_ids": [
0
],
"time_unit": 0,
"title": "string",
"type": "string",
"update_diff_in_min": 0,
"update_escalation_at": "2019-08-24T14:15:22Z",
"update_in_min": 0,
"updated_at": "2019-08-24T14:15:22Z",
"updated_by": "string",
"updated_by_id": 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/support/ticket/IVR");
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/support/ticket/IVR",
"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({
article: {
attachments: [
{
data: 'string',
filename: 'string',
id: 0,
'mime-type': 'string',
preferences: {property1: 'string', property2: 'string'},
size: 'string'
}
],
body: 'string',
cc: 'string',
content_type: 'string',
created_at: '2019-08-24T14:15:22Z',
created_by: 'string',
created_by_id: 0,
from: 'string',
id: 0,
in_reply_to: 'string',
internal: true,
message_id: 'string',
message_id_md5: 'string',
origin_by: 'string',
origin_by_id: 0,
preferences: {property1: {}, property2: {}},
references: 'string',
reply_to: 'string',
sender: 'Agent',
sender_id: 0,
subject: 'string',
ticket_id: 0,
time_unit: 0,
to: 'string',
type: 'email',
type_id: 0,
updated_at: '2019-08-24T14:15:22Z',
updated_by: 'string',
updated_by_id: 0
},
article_count: 0,
article_ids: [0],
articles: [
{
attachments: [
{
data: 'string',
filename: 'string',
id: 0,
'mime-type': 'string',
preferences: {property1: 'string', property2: 'string'},
size: 'string'
}
],
body: 'string',
cc: 'string',
content_type: 'string',
created_at: '2019-08-24T14:15:22Z',
created_by: 'string',
created_by_id: 0,
from: 'string',
id: 0,
in_reply_to: 'string',
internal: true,
message_id: 'string',
message_id_md5: 'string',
origin_by: 'string',
origin_by_id: 0,
preferences: {property1: {}, property2: {}},
references: 'string',
reply_to: 'string',
sender: 'Agent',
sender_id: 0,
subject: 'string',
ticket_id: 0,
time_unit: 0,
to: 'string',
type: 'email',
type_id: 0,
updated_at: '2019-08-24T14:15:22Z',
updated_by: 'string',
updated_by_id: 0
}
],
attachments: [{mimeType: 'string', name: 'string', uuid: 'string'}],
close_at: '2019-08-24T14:15:22Z',
close_diff_in_min: 0,
close_escalation_at: '2019-08-24T14:15:22Z',
close_in_min: 0,
create_article_sender: 'string',
create_article_sender_id: 0,
create_article_type: 'string',
create_article_type_id: 0,
created_at: '2019-08-24T14:15:22Z',
created_by: 'string',
created_by_id: 0,
customer: 'string',
customerContact: {type: 'USER', uid: 'string', username: 'string', value: 'string'},
customer_id: 'string',
escalation_at: '2019-08-24T14:15:22Z',
first_response_at: '2019-08-24T14:15:22Z',
first_response_diff_in_min: 0,
first_response_escalation_at: '2019-08-24T14:15:22Z',
first_response_in_min: 0,
group: 'string',
group_id: 0,
id: 0,
last_contact_agent_at: '2019-08-24T14:15:22Z',
last_contact_at: '2019-08-24T14:15:22Z',
last_contact_customer_at: '2019-08-24T14:15:22Z',
last_owner_update_at: '2019-08-24T14:15:22Z',
note: 'string',
number: 'string',
organization: 'string',
organization_id: 0,
owner: 'string',
ownerContact: {type: 'USER', uid: 'string', username: 'string', value: 'string'},
owner_id: 0,
pending_time: '2019-08-24T14:15:22Z',
priority: '1 low',
priority_id: 0,
state: 'new',
state_id: 0,
t_agent_close_date: '2019-08-24T14:15:22Z',
t_agent_get_date: '2019-08-24T14:15:22Z',
t_call_link: 'string',
t_create_call_uid: 'string',
t_custom_01: 'string',
t_custom_02: 'string',
t_custom_03: 'string',
t_custom_04: 'string',
t_custom_05: 'string',
t_custom_06: 'string',
t_custom_07: 'string',
t_custom_08: 'string',
t_custom_09: 'string',
t_custom_10: 'string',
t_custom_11: 'string',
t_custom_12: 'string',
t_custom_13: 'string',
t_custom_14: 'string',
t_custom_15: 'string',
t_custom_16: 'string',
t_custom_17: 'string',
t_custom_18: 'string',
t_custom_19: 'string',
t_custom_20: 'string',
t_custom_21: 'string',
t_custom_22: 'string',
t_custom_23: 'string',
t_custom_24: 'string',
t_custom_25: 'string',
t_custom_26: 'string',
t_custom_27: 'string',
t_custom_28: 'string',
t_custom_29: 'string',
t_custom_30: 'string',
t_custom_31: 'string',
t_custom_32: 'string',
t_custom_33: 'string',
t_custom_34: 'string',
t_custom_35: 'string',
t_custom_36: 'string',
t_custom_37: 'string',
t_custom_38: 'string',
t_custom_39: 'string',
t_custom_40: 'string',
t_custom_41: 'string',
t_custom_42: 'string',
t_custom_43: 'string',
t_custom_44: 'string',
t_custom_45: 'string',
t_custom_46: 'string',
t_custom_47: 'string',
t_custom_48: 'string',
t_custom_49: 'string',
t_custom_50: 'string',
t_custom_51: 'string',
t_custom_52: 'string',
t_custom_53: 'string',
t_custom_54: 'string',
t_custom_55: 'string',
t_custom_56: 'string',
t_custom_57: 'string',
t_custom_58: 'string',
t_custom_59: 'string',
t_custom_60: 'string',
t_custom_61: 'string',
t_custom_62: 'string',
t_custom_63: 'string',
t_custom_64: 'string',
t_custom_65: 'string',
t_custom_66: 'string',
t_custom_67: 'string',
t_custom_68: 'string',
t_custom_69: 'string',
t_custom_70: 'string',
t_custom_71: 'string',
t_custom_72: 'string',
t_custom_73: 'string',
t_custom_74: 'string',
t_custom_75: 'string',
t_custom_76: 'string',
t_custom_77: 'string',
t_custom_78: 'string',
t_custom_79: 'string',
t_custom_80: 'string',
t_custom_81: 'string',
t_custom_82: 'string',
t_custom_83: 'string',
t_custom_84: 'string',
t_custom_85: 'string',
t_custom_86: 'string',
t_custom_87: 'string',
t_custom_88: 'string',
t_custom_89: 'string',
t_custom_90: 'string',
t_custom_91: 'string',
t_custom_92: 'string',
t_custom_93: 'string',
t_custom_94: 'string',
t_custom_95: 'string',
t_custom_96: 'string',
t_custom_97: 'string',
t_custom_98: 'string',
t_custom_99: 'string',
t_custom_date_01: '2019-08-24T14:15:22Z',
t_custom_date_02: '2019-08-24T14:15:22Z',
t_custom_date_03: '2019-08-24T14:15:22Z',
t_custom_date_04: '2019-08-24T14:15:22Z',
t_custom_date_05: '2019-08-24T14:15:22Z',
t_custom_date_06: '2019-08-24T14:15:22Z',
t_custom_date_07: '2019-08-24T14:15:22Z',
t_custom_date_08: '2019-08-24T14:15:22Z',
t_custom_date_09: '2019-08-24T14:15:22Z',
t_custom_date_10: '2019-08-24T14:15:22Z',
t_custom_date_11: '2019-08-24T14:15:22Z',
t_custom_date_12: '2019-08-24T14:15:22Z',
t_custom_date_13: '2019-08-24T14:15:22Z',
t_custom_date_14: '2019-08-24T14:15:22Z',
t_custom_date_15: '2019-08-24T14:15:22Z',
t_custom_date_16: '2019-08-24T14:15:22Z',
t_custom_date_17: '2019-08-24T14:15:22Z',
t_custom_date_18: '2019-08-24T14:15:22Z',
t_custom_date_19: '2019-08-24T14:15:22Z',
t_custom_date_20: '2019-08-24T14:15:22Z',
t_custom_date_21: '2019-08-24T14:15:22Z',
t_custom_date_22: '2019-08-24T14:15:22Z',
t_custom_date_23: '2019-08-24T14:15:22Z',
t_custom_date_24: '2019-08-24T14:15:22Z',
t_custom_date_25: '2019-08-24T14:15:22Z',
t_custom_date_26: '2019-08-24T14:15:22Z',
t_custom_date_27: '2019-08-24T14:15:22Z',
t_custom_date_28: '2019-08-24T14:15:22Z',
t_custom_date_29: '2019-08-24T14:15:22Z',
t_custom_date_30: '2019-08-24T14:15:22Z',
t_custom_date_31: '2019-08-24T14:15:22Z',
t_custom_date_32: '2019-08-24T14:15:22Z',
t_custom_date_33: '2019-08-24T14:15:22Z',
t_custom_date_34: '2019-08-24T14:15:22Z',
t_custom_date_35: '2019-08-24T14:15:22Z',
t_custom_date_36: '2019-08-24T14:15:22Z',
t_custom_date_37: '2019-08-24T14:15:22Z',
t_custom_date_38: '2019-08-24T14:15:22Z',
t_custom_date_39: '2019-08-24T14:15:22Z',
t_custom_date_40: '2019-08-24T14:15:22Z',
t_custom_date_41: '2019-08-24T14:15:22Z',
t_custom_date_42: '2019-08-24T14:15:22Z',
t_custom_date_43: '2019-08-24T14:15:22Z',
t_custom_date_44: '2019-08-24T14:15:22Z',
t_custom_date_45: '2019-08-24T14:15:22Z',
t_custom_date_46: '2019-08-24T14:15:22Z',
t_custom_date_47: '2019-08-24T14:15:22Z',
t_custom_date_48: '2019-08-24T14:15:22Z',
t_custom_date_49: '2019-08-24T14:15:22Z',
t_external_ticketing_add: true,
t_external_ticketing_link: 'string',
t_forgot_article_count: 0,
t_forgot_time_unit: 0,
t_is_child_link: true,
t_is_forgot_ticket: true,
t_is_normal_link: true,
t_is_parent_link: true,
t_is_view_by_owner: true,
t_knowledge_base_answer_link: 'string',
t_knowledge_base_answer_uid: 'string',
t_knowledge_base_category_link: 'string',
t_knowledge_base_category_uid: 'string',
t_knowledge_base_id_answer: 'string',
t_knowledge_base_id_category: 'string',
t_last_link_child_update: 'string',
t_last_link_normal_update: 'string',
t_last_link_with: 'string',
t_last_merge_with: 'string',
t_last_owner_view_at: '2019-08-24T14:15:22Z',
t_queue_type: 'string',
t_reminder_cp_last_time: '2019-08-24T14:15:22Z',
t_reminder_cp_num: 0,
t_reminder_tk_last_time: '2019-08-24T14:15:22Z',
t_reminder_tk_num: 0,
t_reminder_tk_src: 'string',
t_self_generated_ticket_call_final_state: 'string',
t_self_generated_ticket_type: 'string',
t_state_last_update: '2019-08-24T14:15:22Z',
ticket_time_accounting: ['string'],
ticket_time_accounting_ids: [0],
time_unit: 0,
title: 'string',
type: 'string',
update_diff_in_min: 0,
update_escalation_at: '2019-08-24T14:15:22Z',
update_in_min: 0,
updated_at: '2019-08-24T14:15:22Z',
updated_by: 'string',
updated_by_id: 0
}));
req.end();
import http.client
conn = http.client.HTTPSConnection("tvox_host")
payload = "{\"article\":{\"attachments\":[{\"data\":\"string\",\"filename\":\"string\",\"id\":0,\"mime-type\":\"string\",\"preferences\":{\"property1\":\"string\",\"property2\":\"string\"},\"size\":\"string\"}],\"body\":\"string\",\"cc\":\"string\",\"content_type\":\"string\",\"created_at\":\"2019-08-24T14:15:22Z\",\"created_by\":\"string\",\"created_by_id\":0,\"from\":\"string\",\"id\":0,\"in_reply_to\":\"string\",\"internal\":true,\"message_id\":\"string\",\"message_id_md5\":\"string\",\"origin_by\":\"string\",\"origin_by_id\":0,\"preferences\":{\"property1\":{},\"property2\":{}},\"references\":\"string\",\"reply_to\":\"string\",\"sender\":\"Agent\",\"sender_id\":0,\"subject\":\"string\",\"ticket_id\":0,\"time_unit\":0,\"to\":\"string\",\"type\":\"email\",\"type_id\":0,\"updated_at\":\"2019-08-24T14:15:22Z\",\"updated_by\":\"string\",\"updated_by_id\":0},\"article_count\":0,\"article_ids\":[0],\"articles\":[{\"attachments\":[{\"data\":\"string\",\"filename\":\"string\",\"id\":0,\"mime-type\":\"string\",\"preferences\":{\"property1\":\"string\",\"property2\":\"string\"},\"size\":\"string\"}],\"body\":\"string\",\"cc\":\"string\",\"content_type\":\"string\",\"created_at\":\"2019-08-24T14:15:22Z\",\"created_by\":\"string\",\"created_by_id\":0,\"from\":\"string\",\"id\":0,\"in_reply_to\":\"string\",\"internal\":true,\"message_id\":\"string\",\"message_id_md5\":\"string\",\"origin_by\":\"string\",\"origin_by_id\":0,\"preferences\":{\"property1\":{},\"property2\":{}},\"references\":\"string\",\"reply_to\":\"string\",\"sender\":\"Agent\",\"sender_id\":0,\"subject\":\"string\",\"ticket_id\":0,\"time_unit\":0,\"to\":\"string\",\"type\":\"email\",\"type_id\":0,\"updated_at\":\"2019-08-24T14:15:22Z\",\"updated_by\":\"string\",\"updated_by_id\":0}],\"attachments\":[{\"mimeType\":\"string\",\"name\":\"string\",\"uuid\":\"string\"}],\"close_at\":\"2019-08-24T14:15:22Z\",\"close_diff_in_min\":0,\"close_escalation_at\":\"2019-08-24T14:15:22Z\",\"close_in_min\":0,\"create_article_sender\":\"string\",\"create_article_sender_id\":0,\"create_article_type\":\"string\",\"create_article_type_id\":0,\"created_at\":\"2019-08-24T14:15:22Z\",\"created_by\":\"string\",\"created_by_id\":0,\"customer\":\"string\",\"customerContact\":{\"type\":\"USER\",\"uid\":\"string\",\"username\":\"string\",\"value\":\"string\"},\"customer_id\":\"string\",\"escalation_at\":\"2019-08-24T14:15:22Z\",\"first_response_at\":\"2019-08-24T14:15:22Z\",\"first_response_diff_in_min\":0,\"first_response_escalation_at\":\"2019-08-24T14:15:22Z\",\"first_response_in_min\":0,\"group\":\"string\",\"group_id\":0,\"id\":0,\"last_contact_agent_at\":\"2019-08-24T14:15:22Z\",\"last_contact_at\":\"2019-08-24T14:15:22Z\",\"last_contact_customer_at\":\"2019-08-24T14:15:22Z\",\"last_owner_update_at\":\"2019-08-24T14:15:22Z\",\"note\":\"string\",\"number\":\"string\",\"organization\":\"string\",\"organization_id\":0,\"owner\":\"string\",\"ownerContact\":{\"type\":\"USER\",\"uid\":\"string\",\"username\":\"string\",\"value\":\"string\"},\"owner_id\":0,\"pending_time\":\"2019-08-24T14:15:22Z\",\"priority\":\"1 low\",\"priority_id\":0,\"state\":\"new\",\"state_id\":0,\"t_agent_close_date\":\"2019-08-24T14:15:22Z\",\"t_agent_get_date\":\"2019-08-24T14:15:22Z\",\"t_call_link\":\"string\",\"t_create_call_uid\":\"string\",\"t_custom_01\":\"string\",\"t_custom_02\":\"string\",\"t_custom_03\":\"string\",\"t_custom_04\":\"string\",\"t_custom_05\":\"string\",\"t_custom_06\":\"string\",\"t_custom_07\":\"string\",\"t_custom_08\":\"string\",\"t_custom_09\":\"string\",\"t_custom_10\":\"string\",\"t_custom_11\":\"string\",\"t_custom_12\":\"string\",\"t_custom_13\":\"string\",\"t_custom_14\":\"string\",\"t_custom_15\":\"string\",\"t_custom_16\":\"string\",\"t_custom_17\":\"string\",\"t_custom_18\":\"string\",\"t_custom_19\":\"string\",\"t_custom_20\":\"string\",\"t_custom_21\":\"string\",\"t_custom_22\":\"string\",\"t_custom_23\":\"string\",\"t_custom_24\":\"string\",\"t_custom_25\":\"string\",\"t_custom_26\":\"string\",\"t_custom_27\":\"string\",\"t_custom_28\":\"string\",\"t_custom_29\":\"string\",\"t_custom_30\":\"string\",\"t_custom_31\":\"string\",\"t_custom_32\":\"string\",\"t_custom_33\":\"string\",\"t_custom_34\":\"string\",\"t_custom_35\":\"string\",\"t_custom_36\":\"string\",\"t_custom_37\":\"string\",\"t_custom_38\":\"string\",\"t_custom_39\":\"string\",\"t_custom_40\":\"string\",\"t_custom_41\":\"string\",\"t_custom_42\":\"string\",\"t_custom_43\":\"string\",\"t_custom_44\":\"string\",\"t_custom_45\":\"string\",\"t_custom_46\":\"string\",\"t_custom_47\":\"string\",\"t_custom_48\":\"string\",\"t_custom_49\":\"string\",\"t_custom_50\":\"string\",\"t_custom_51\":\"string\",\"t_custom_52\":\"string\",\"t_custom_53\":\"string\",\"t_custom_54\":\"string\",\"t_custom_55\":\"string\",\"t_custom_56\":\"string\",\"t_custom_57\":\"string\",\"t_custom_58\":\"string\",\"t_custom_59\":\"string\",\"t_custom_60\":\"string\",\"t_custom_61\":\"string\",\"t_custom_62\":\"string\",\"t_custom_63\":\"string\",\"t_custom_64\":\"string\",\"t_custom_65\":\"string\",\"t_custom_66\":\"string\",\"t_custom_67\":\"string\",\"t_custom_68\":\"string\",\"t_custom_69\":\"string\",\"t_custom_70\":\"string\",\"t_custom_71\":\"string\",\"t_custom_72\":\"string\",\"t_custom_73\":\"string\",\"t_custom_74\":\"string\",\"t_custom_75\":\"string\",\"t_custom_76\":\"string\",\"t_custom_77\":\"string\",\"t_custom_78\":\"string\",\"t_custom_79\":\"string\",\"t_custom_80\":\"string\",\"t_custom_81\":\"string\",\"t_custom_82\":\"string\",\"t_custom_83\":\"string\",\"t_custom_84\":\"string\",\"t_custom_85\":\"string\",\"t_custom_86\":\"string\",\"t_custom_87\":\"string\",\"t_custom_88\":\"string\",\"t_custom_89\":\"string\",\"t_custom_90\":\"string\",\"t_custom_91\":\"string\",\"t_custom_92\":\"string\",\"t_custom_93\":\"string\",\"t_custom_94\":\"string\",\"t_custom_95\":\"string\",\"t_custom_96\":\"string\",\"t_custom_97\":\"string\",\"t_custom_98\":\"string\",\"t_custom_99\":\"string\",\"t_custom_date_01\":\"2019-08-24T14:15:22Z\",\"t_custom_date_02\":\"2019-08-24T14:15:22Z\",\"t_custom_date_03\":\"2019-08-24T14:15:22Z\",\"t_custom_date_04\":\"2019-08-24T14:15:22Z\",\"t_custom_date_05\":\"2019-08-24T14:15:22Z\",\"t_custom_date_06\":\"2019-08-24T14:15:22Z\",\"t_custom_date_07\":\"2019-08-24T14:15:22Z\",\"t_custom_date_08\":\"2019-08-24T14:15:22Z\",\"t_custom_date_09\":\"2019-08-24T14:15:22Z\",\"t_custom_date_10\":\"2019-08-24T14:15:22Z\",\"t_custom_date_11\":\"2019-08-24T14:15:22Z\",\"t_custom_date_12\":\"2019-08-24T14:15:22Z\",\"t_custom_date_13\":\"2019-08-24T14:15:22Z\",\"t_custom_date_14\":\"2019-08-24T14:15:22Z\",\"t_custom_date_15\":\"2019-08-24T14:15:22Z\",\"t_custom_date_16\":\"2019-08-24T14:15:22Z\",\"t_custom_date_17\":\"2019-08-24T14:15:22Z\",\"t_custom_date_18\":\"2019-08-24T14:15:22Z\",\"t_custom_date_19\":\"2019-08-24T14:15:22Z\",\"t_custom_date_20\":\"2019-08-24T14:15:22Z\",\"t_custom_date_21\":\"2019-08-24T14:15:22Z\",\"t_custom_date_22\":\"2019-08-24T14:15:22Z\",\"t_custom_date_23\":\"2019-08-24T14:15:22Z\",\"t_custom_date_24\":\"2019-08-24T14:15:22Z\",\"t_custom_date_25\":\"2019-08-24T14:15:22Z\",\"t_custom_date_26\":\"2019-08-24T14:15:22Z\",\"t_custom_date_27\":\"2019-08-24T14:15:22Z\",\"t_custom_date_28\":\"2019-08-24T14:15:22Z\",\"t_custom_date_29\":\"2019-08-24T14:15:22Z\",\"t_custom_date_30\":\"2019-08-24T14:15:22Z\",\"t_custom_date_31\":\"2019-08-24T14:15:22Z\",\"t_custom_date_32\":\"2019-08-24T14:15:22Z\",\"t_custom_date_33\":\"2019-08-24T14:15:22Z\",\"t_custom_date_34\":\"2019-08-24T14:15:22Z\",\"t_custom_date_35\":\"2019-08-24T14:15:22Z\",\"t_custom_date_36\":\"2019-08-24T14:15:22Z\",\"t_custom_date_37\":\"2019-08-24T14:15:22Z\",\"t_custom_date_38\":\"2019-08-24T14:15:22Z\",\"t_custom_date_39\":\"2019-08-24T14:15:22Z\",\"t_custom_date_40\":\"2019-08-24T14:15:22Z\",\"t_custom_date_41\":\"2019-08-24T14:15:22Z\",\"t_custom_date_42\":\"2019-08-24T14:15:22Z\",\"t_custom_date_43\":\"2019-08-24T14:15:22Z\",\"t_custom_date_44\":\"2019-08-24T14:15:22Z\",\"t_custom_date_45\":\"2019-08-24T14:15:22Z\",\"t_custom_date_46\":\"2019-08-24T14:15:22Z\",\"t_custom_date_47\":\"2019-08-24T14:15:22Z\",\"t_custom_date_48\":\"2019-08-24T14:15:22Z\",\"t_custom_date_49\":\"2019-08-24T14:15:22Z\",\"t_external_ticketing_add\":true,\"t_external_ticketing_link\":\"string\",\"t_forgot_article_count\":0,\"t_forgot_time_unit\":0,\"t_is_child_link\":true,\"t_is_forgot_ticket\":true,\"t_is_normal_link\":true,\"t_is_parent_link\":true,\"t_is_view_by_owner\":true,\"t_knowledge_base_answer_link\":\"string\",\"t_knowledge_base_answer_uid\":\"string\",\"t_knowledge_base_category_link\":\"string\",\"t_knowledge_base_category_uid\":\"string\",\"t_knowledge_base_id_answer\":\"string\",\"t_knowledge_base_id_category\":\"string\",\"t_last_link_child_update\":\"string\",\"t_last_link_normal_update\":\"string\",\"t_last_link_with\":\"string\",\"t_last_merge_with\":\"string\",\"t_last_owner_view_at\":\"2019-08-24T14:15:22Z\",\"t_queue_type\":\"string\",\"t_reminder_cp_last_time\":\"2019-08-24T14:15:22Z\",\"t_reminder_cp_num\":0,\"t_reminder_tk_last_time\":\"2019-08-24T14:15:22Z\",\"t_reminder_tk_num\":0,\"t_reminder_tk_src\":\"string\",\"t_self_generated_ticket_call_final_state\":\"string\",\"t_self_generated_ticket_type\":\"string\",\"t_state_last_update\":\"2019-08-24T14:15:22Z\",\"ticket_time_accounting\":[\"string\"],\"ticket_time_accounting_ids\":[0],\"time_unit\":0,\"title\":\"string\",\"type\":\"string\",\"update_diff_in_min\":0,\"update_escalation_at\":\"2019-08-24T14:15:22Z\",\"update_in_min\":0,\"updated_at\":\"2019-08-24T14:15:22Z\",\"updated_by\":\"string\",\"updated_by_id\":0}"
headers = {
'Content-Type': "application/json",
'Accept': "application/json",
'Cookie': "JSESSIONID=SESSION_ID"
}
conn.request("POST", "/tvox/rest/support/ticket/IVR", 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/support/ticket/IVR")
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 = "{\"article\":{\"attachments\":[{\"data\":\"string\",\"filename\":\"string\",\"id\":0,\"mime-type\":\"string\",\"preferences\":{\"property1\":\"string\",\"property2\":\"string\"},\"size\":\"string\"}],\"body\":\"string\",\"cc\":\"string\",\"content_type\":\"string\",\"created_at\":\"2019-08-24T14:15:22Z\",\"created_by\":\"string\",\"created_by_id\":0,\"from\":\"string\",\"id\":0,\"in_reply_to\":\"string\",\"internal\":true,\"message_id\":\"string\",\"message_id_md5\":\"string\",\"origin_by\":\"string\",\"origin_by_id\":0,\"preferences\":{\"property1\":{},\"property2\":{}},\"references\":\"string\",\"reply_to\":\"string\",\"sender\":\"Agent\",\"sender_id\":0,\"subject\":\"string\",\"ticket_id\":0,\"time_unit\":0,\"to\":\"string\",\"type\":\"email\",\"type_id\":0,\"updated_at\":\"2019-08-24T14:15:22Z\",\"updated_by\":\"string\",\"updated_by_id\":0},\"article_count\":0,\"article_ids\":[0],\"articles\":[{\"attachments\":[{\"data\":\"string\",\"filename\":\"string\",\"id\":0,\"mime-type\":\"string\",\"preferences\":{\"property1\":\"string\",\"property2\":\"string\"},\"size\":\"string\"}],\"body\":\"string\",\"cc\":\"string\",\"content_type\":\"string\",\"created_at\":\"2019-08-24T14:15:22Z\",\"created_by\":\"string\",\"created_by_id\":0,\"from\":\"string\",\"id\":0,\"in_reply_to\":\"string\",\"internal\":true,\"message_id\":\"string\",\"message_id_md5\":\"string\",\"origin_by\":\"string\",\"origin_by_id\":0,\"preferences\":{\"property1\":{},\"property2\":{}},\"references\":\"string\",\"reply_to\":\"string\",\"sender\":\"Agent\",\"sender_id\":0,\"subject\":\"string\",\"ticket_id\":0,\"time_unit\":0,\"to\":\"string\",\"type\":\"email\",\"type_id\":0,\"updated_at\":\"2019-08-24T14:15:22Z\",\"updated_by\":\"string\",\"updated_by_id\":0}],\"attachments\":[{\"mimeType\":\"string\",\"name\":\"string\",\"uuid\":\"string\"}],\"close_at\":\"2019-08-24T14:15:22Z\",\"close_diff_in_min\":0,\"close_escalation_at\":\"2019-08-24T14:15:22Z\",\"close_in_min\":0,\"create_article_sender\":\"string\",\"create_article_sender_id\":0,\"create_article_type\":\"string\",\"create_article_type_id\":0,\"created_at\":\"2019-08-24T14:15:22Z\",\"created_by\":\"string\",\"created_by_id\":0,\"customer\":\"string\",\"customerContact\":{\"type\":\"USER\",\"uid\":\"string\",\"username\":\"string\",\"value\":\"string\"},\"customer_id\":\"string\",\"escalation_at\":\"2019-08-24T14:15:22Z\",\"first_response_at\":\"2019-08-24T14:15:22Z\",\"first_response_diff_in_min\":0,\"first_response_escalation_at\":\"2019-08-24T14:15:22Z\",\"first_response_in_min\":0,\"group\":\"string\",\"group_id\":0,\"id\":0,\"last_contact_agent_at\":\"2019-08-24T14:15:22Z\",\"last_contact_at\":\"2019-08-24T14:15:22Z\",\"last_contact_customer_at\":\"2019-08-24T14:15:22Z\",\"last_owner_update_at\":\"2019-08-24T14:15:22Z\",\"note\":\"string\",\"number\":\"string\",\"organization\":\"string\",\"organization_id\":0,\"owner\":\"string\",\"ownerContact\":{\"type\":\"USER\",\"uid\":\"string\",\"username\":\"string\",\"value\":\"string\"},\"owner_id\":0,\"pending_time\":\"2019-08-24T14:15:22Z\",\"priority\":\"1 low\",\"priority_id\":0,\"state\":\"new\",\"state_id\":0,\"t_agent_close_date\":\"2019-08-24T14:15:22Z\",\"t_agent_get_date\":\"2019-08-24T14:15:22Z\",\"t_call_link\":\"string\",\"t_create_call_uid\":\"string\",\"t_custom_01\":\"string\",\"t_custom_02\":\"string\",\"t_custom_03\":\"string\",\"t_custom_04\":\"string\",\"t_custom_05\":\"string\",\"t_custom_06\":\"string\",\"t_custom_07\":\"string\",\"t_custom_08\":\"string\",\"t_custom_09\":\"string\",\"t_custom_10\":\"string\",\"t_custom_11\":\"string\",\"t_custom_12\":\"string\",\"t_custom_13\":\"string\",\"t_custom_14\":\"string\",\"t_custom_15\":\"string\",\"t_custom_16\":\"string\",\"t_custom_17\":\"string\",\"t_custom_18\":\"string\",\"t_custom_19\":\"string\",\"t_custom_20\":\"string\",\"t_custom_21\":\"string\",\"t_custom_22\":\"string\",\"t_custom_23\":\"string\",\"t_custom_24\":\"string\",\"t_custom_25\":\"string\",\"t_custom_26\":\"string\",\"t_custom_27\":\"string\",\"t_custom_28\":\"string\",\"t_custom_29\":\"string\",\"t_custom_30\":\"string\",\"t_custom_31\":\"string\",\"t_custom_32\":\"string\",\"t_custom_33\":\"string\",\"t_custom_34\":\"string\",\"t_custom_35\":\"string\",\"t_custom_36\":\"string\",\"t_custom_37\":\"string\",\"t_custom_38\":\"string\",\"t_custom_39\":\"string\",\"t_custom_40\":\"string\",\"t_custom_41\":\"string\",\"t_custom_42\":\"string\",\"t_custom_43\":\"string\",\"t_custom_44\":\"string\",\"t_custom_45\":\"string\",\"t_custom_46\":\"string\",\"t_custom_47\":\"string\",\"t_custom_48\":\"string\",\"t_custom_49\":\"string\",\"t_custom_50\":\"string\",\"t_custom_51\":\"string\",\"t_custom_52\":\"string\",\"t_custom_53\":\"string\",\"t_custom_54\":\"string\",\"t_custom_55\":\"string\",\"t_custom_56\":\"string\",\"t_custom_57\":\"string\",\"t_custom_58\":\"string\",\"t_custom_59\":\"string\",\"t_custom_60\":\"string\",\"t_custom_61\":\"string\",\"t_custom_62\":\"string\",\"t_custom_63\":\"string\",\"t_custom_64\":\"string\",\"t_custom_65\":\"string\",\"t_custom_66\":\"string\",\"t_custom_67\":\"string\",\"t_custom_68\":\"string\",\"t_custom_69\":\"string\",\"t_custom_70\":\"string\",\"t_custom_71\":\"string\",\"t_custom_72\":\"string\",\"t_custom_73\":\"string\",\"t_custom_74\":\"string\",\"t_custom_75\":\"string\",\"t_custom_76\":\"string\",\"t_custom_77\":\"string\",\"t_custom_78\":\"string\",\"t_custom_79\":\"string\",\"t_custom_80\":\"string\",\"t_custom_81\":\"string\",\"t_custom_82\":\"string\",\"t_custom_83\":\"string\",\"t_custom_84\":\"string\",\"t_custom_85\":\"string\",\"t_custom_86\":\"string\",\"t_custom_87\":\"string\",\"t_custom_88\":\"string\",\"t_custom_89\":\"string\",\"t_custom_90\":\"string\",\"t_custom_91\":\"string\",\"t_custom_92\":\"string\",\"t_custom_93\":\"string\",\"t_custom_94\":\"string\",\"t_custom_95\":\"string\",\"t_custom_96\":\"string\",\"t_custom_97\":\"string\",\"t_custom_98\":\"string\",\"t_custom_99\":\"string\",\"t_custom_date_01\":\"2019-08-24T14:15:22Z\",\"t_custom_date_02\":\"2019-08-24T14:15:22Z\",\"t_custom_date_03\":\"2019-08-24T14:15:22Z\",\"t_custom_date_04\":\"2019-08-24T14:15:22Z\",\"t_custom_date_05\":\"2019-08-24T14:15:22Z\",\"t_custom_date_06\":\"2019-08-24T14:15:22Z\",\"t_custom_date_07\":\"2019-08-24T14:15:22Z\",\"t_custom_date_08\":\"2019-08-24T14:15:22Z\",\"t_custom_date_09\":\"2019-08-24T14:15:22Z\",\"t_custom_date_10\":\"2019-08-24T14:15:22Z\",\"t_custom_date_11\":\"2019-08-24T14:15:22Z\",\"t_custom_date_12\":\"2019-08-24T14:15:22Z\",\"t_custom_date_13\":\"2019-08-24T14:15:22Z\",\"t_custom_date_14\":\"2019-08-24T14:15:22Z\",\"t_custom_date_15\":\"2019-08-24T14:15:22Z\",\"t_custom_date_16\":\"2019-08-24T14:15:22Z\",\"t_custom_date_17\":\"2019-08-24T14:15:22Z\",\"t_custom_date_18\":\"2019-08-24T14:15:22Z\",\"t_custom_date_19\":\"2019-08-24T14:15:22Z\",\"t_custom_date_20\":\"2019-08-24T14:15:22Z\",\"t_custom_date_21\":\"2019-08-24T14:15:22Z\",\"t_custom_date_22\":\"2019-08-24T14:15:22Z\",\"t_custom_date_23\":\"2019-08-24T14:15:22Z\",\"t_custom_date_24\":\"2019-08-24T14:15:22Z\",\"t_custom_date_25\":\"2019-08-24T14:15:22Z\",\"t_custom_date_26\":\"2019-08-24T14:15:22Z\",\"t_custom_date_27\":\"2019-08-24T14:15:22Z\",\"t_custom_date_28\":\"2019-08-24T14:15:22Z\",\"t_custom_date_29\":\"2019-08-24T14:15:22Z\",\"t_custom_date_30\":\"2019-08-24T14:15:22Z\",\"t_custom_date_31\":\"2019-08-24T14:15:22Z\",\"t_custom_date_32\":\"2019-08-24T14:15:22Z\",\"t_custom_date_33\":\"2019-08-24T14:15:22Z\",\"t_custom_date_34\":\"2019-08-24T14:15:22Z\",\"t_custom_date_35\":\"2019-08-24T14:15:22Z\",\"t_custom_date_36\":\"2019-08-24T14:15:22Z\",\"t_custom_date_37\":\"2019-08-24T14:15:22Z\",\"t_custom_date_38\":\"2019-08-24T14:15:22Z\",\"t_custom_date_39\":\"2019-08-24T14:15:22Z\",\"t_custom_date_40\":\"2019-08-24T14:15:22Z\",\"t_custom_date_41\":\"2019-08-24T14:15:22Z\",\"t_custom_date_42\":\"2019-08-24T14:15:22Z\",\"t_custom_date_43\":\"2019-08-24T14:15:22Z\",\"t_custom_date_44\":\"2019-08-24T14:15:22Z\",\"t_custom_date_45\":\"2019-08-24T14:15:22Z\",\"t_custom_date_46\":\"2019-08-24T14:15:22Z\",\"t_custom_date_47\":\"2019-08-24T14:15:22Z\",\"t_custom_date_48\":\"2019-08-24T14:15:22Z\",\"t_custom_date_49\":\"2019-08-24T14:15:22Z\",\"t_external_ticketing_add\":true,\"t_external_ticketing_link\":\"string\",\"t_forgot_article_count\":0,\"t_forgot_time_unit\":0,\"t_is_child_link\":true,\"t_is_forgot_ticket\":true,\"t_is_normal_link\":true,\"t_is_parent_link\":true,\"t_is_view_by_owner\":true,\"t_knowledge_base_answer_link\":\"string\",\"t_knowledge_base_answer_uid\":\"string\",\"t_knowledge_base_category_link\":\"string\",\"t_knowledge_base_category_uid\":\"string\",\"t_knowledge_base_id_answer\":\"string\",\"t_knowledge_base_id_category\":\"string\",\"t_last_link_child_update\":\"string\",\"t_last_link_normal_update\":\"string\",\"t_last_link_with\":\"string\",\"t_last_merge_with\":\"string\",\"t_last_owner_view_at\":\"2019-08-24T14:15:22Z\",\"t_queue_type\":\"string\",\"t_reminder_cp_last_time\":\"2019-08-24T14:15:22Z\",\"t_reminder_cp_num\":0,\"t_reminder_tk_last_time\":\"2019-08-24T14:15:22Z\",\"t_reminder_tk_num\":0,\"t_reminder_tk_src\":\"string\",\"t_self_generated_ticket_call_final_state\":\"string\",\"t_self_generated_ticket_type\":\"string\",\"t_state_last_update\":\"2019-08-24T14:15:22Z\",\"ticket_time_accounting\":[\"string\"],\"ticket_time_accounting_ids\":[0],\"time_unit\":0,\"title\":\"string\",\"type\":\"string\",\"update_diff_in_min\":0,\"update_escalation_at\":\"2019-08-24T14:15:22Z\",\"update_in_min\":0,\"updated_at\":\"2019-08-24T14:15:22Z\",\"updated_by\":\"string\",\"updated_by_id\":0}"
response = http.request(request)
puts response.read_body
POST /rest/support/ticket/{context}
Create a new ticket by choosing the appropriate context and providing contact information in addition to the ticket details
Parameters
Body parameter
{
"article": {
"attachments": [
{
"data": "string",
"filename": "string",
"id": 0,
"mime-type": "string",
"preferences": {
"property1": "string",
"property2": "string"
},
"size": "string"
}
],
"body": "string",
"cc": "string",
"content_type": "string",
"created_at": "2019-08-24T14:15:22Z",
"created_by": "string",
"created_by_id": 0,
"from": "string",
"id": 0,
"in_reply_to": "string",
"internal": true,
"message_id": "string",
"message_id_md5": "string",
"origin_by": "string",
"origin_by_id": 0,
"preferences": {
"property1": {},
"property2": {}
},
"references": "string",
"reply_to": "string",
"sender": "Agent",
"sender_id": 0,
"subject": "string",
"ticket_id": 0,
"time_unit": 0,
"to": "string",
"type": "email",
"type_id": 0,
"updated_at": "2019-08-24T14:15:22Z",
"updated_by": "string",
"updated_by_id": 0
},
"article_count": 0,
"article_ids": [
0
],
"articles": [
{
"attachments": [
{
"data": "string",
"filename": "string",
"id": 0,
"mime-type": "string",
"preferences": {
"property1": "string",
"property2": "string"
},
"size": "string"
}
],
"body": "string",
"cc": "string",
"content_type": "string",
"created_at": "2019-08-24T14:15:22Z",
"created_by": "string",
"created_by_id": 0,
"from": "string",
"id": 0,
"in_reply_to": "string",
"internal": true,
"message_id": "string",
"message_id_md5": "string",
"origin_by": "string",
"origin_by_id": 0,
"preferences": {
"property1": {},
"property2": {}
},
"references": "string",
"reply_to": "string",
"sender": "Agent",
"sender_id": 0,
"subject": "string",
"ticket_id": 0,
"time_unit": 0,
"to": "string",
"type": "email",
"type_id": 0,
"updated_at": "2019-08-24T14:15:22Z",
"updated_by": "string",
"updated_by_id": 0
}
],
"attachments": [
{
"mimeType": "string",
"name": "string",
"uuid": "string"
}
],
"close_at": "2019-08-24T14:15:22Z",
"close_diff_in_min": 0,
"close_escalation_at": "2019-08-24T14:15:22Z",
"close_in_min": 0,
"create_article_sender": "string",
"create_article_sender_id": 0,
"create_article_type": "string",
"create_article_type_id": 0,
"created_at": "2019-08-24T14:15:22Z",
"created_by": "string",
"created_by_id": 0,
"customer": "string",
"customerContact": {
"type": "USER",
"uid": "string",
"username": "string",
"value": "string"
},
"customer_id": "string",
"escalation_at": "2019-08-24T14:15:22Z",
"first_response_at": "2019-08-24T14:15:22Z",
"first_response_diff_in_min": 0,
"first_response_escalation_at": "2019-08-24T14:15:22Z",
"first_response_in_min": 0,
"group": "string",
"group_id": 0,
"id": 0,
"last_contact_agent_at": "2019-08-24T14:15:22Z",
"last_contact_at": "2019-08-24T14:15:22Z",
"last_contact_customer_at": "2019-08-24T14:15:22Z",
"last_owner_update_at": "2019-08-24T14:15:22Z",
"note": "string",
"number": "string",
"organization": "string",
"organization_id": 0,
"owner": "string",
"ownerContact": {
"type": "USER",
"uid": "string",
"username": "string",
"value": "string"
},
"owner_id": 0,
"pending_time": "2019-08-24T14:15:22Z",
"priority": "1 low",
"priority_id": 0,
"state": "new",
"state_id": 0,
"t_agent_close_date": "2019-08-24T14:15:22Z",
"t_agent_get_date": "2019-08-24T14:15:22Z",
"t_call_link": "string",
"t_create_call_uid": "string",
"t_custom_01": "string",
"t_custom_02": "string",
"t_custom_03": "string",
"t_custom_04": "string",
"t_custom_05": "string",
"t_custom_06": "string",
"t_custom_07": "string",
"t_custom_08": "string",
"t_custom_09": "string",
"t_custom_10": "string",
"t_custom_11": "string",
"t_custom_12": "string",
"t_custom_13": "string",
"t_custom_14": "string",
"t_custom_15": "string",
"t_custom_16": "string",
"t_custom_17": "string",
"t_custom_18": "string",
"t_custom_19": "string",
"t_custom_20": "string",
"t_custom_21": "string",
"t_custom_22": "string",
"t_custom_23": "string",
"t_custom_24": "string",
"t_custom_25": "string",
"t_custom_26": "string",
"t_custom_27": "string",
"t_custom_28": "string",
"t_custom_29": "string",
"t_custom_30": "string",
"t_custom_31": "string",
"t_custom_32": "string",
"t_custom_33": "string",
"t_custom_34": "string",
"t_custom_35": "string",
"t_custom_36": "string",
"t_custom_37": "string",
"t_custom_38": "string",
"t_custom_39": "string",
"t_custom_40": "string",
"t_custom_41": "string",
"t_custom_42": "string",
"t_custom_43": "string",
"t_custom_44": "string",
"t_custom_45": "string",
"t_custom_46": "string",
"t_custom_47": "string",
"t_custom_48": "string",
"t_custom_49": "string",
"t_custom_50": "string",
"t_custom_51": "string",
"t_custom_52": "string",
"t_custom_53": "string",
"t_custom_54": "string",
"t_custom_55": "string",
"t_custom_56": "string",
"t_custom_57": "string",
"t_custom_58": "string",
"t_custom_59": "string",
"t_custom_60": "string",
"t_custom_61": "string",
"t_custom_62": "string",
"t_custom_63": "string",
"t_custom_64": "string",
"t_custom_65": "string",
"t_custom_66": "string",
"t_custom_67": "string",
"t_custom_68": "string",
"t_custom_69": "string",
"t_custom_70": "string",
"t_custom_71": "string",
"t_custom_72": "string",
"t_custom_73": "string",
"t_custom_74": "string",
"t_custom_75": "string",
"t_custom_76": "string",
"t_custom_77": "string",
"t_custom_78": "string",
"t_custom_79": "string",
"t_custom_80": "string",
"t_custom_81": "string",
"t_custom_82": "string",
"t_custom_83": "string",
"t_custom_84": "string",
"t_custom_85": "string",
"t_custom_86": "string",
"t_custom_87": "string",
"t_custom_88": "string",
"t_custom_89": "string",
"t_custom_90": "string",
"t_custom_91": "string",
"t_custom_92": "string",
"t_custom_93": "string",
"t_custom_94": "string",
"t_custom_95": "string",
"t_custom_96": "string",
"t_custom_97": "string",
"t_custom_98": "string",
"t_custom_99": "string",
"t_custom_date_01": "2019-08-24T14:15:22Z",
"t_custom_date_02": "2019-08-24T14:15:22Z",
"t_custom_date_03": "2019-08-24T14:15:22Z",
"t_custom_date_04": "2019-08-24T14:15:22Z",
"t_custom_date_05": "2019-08-24T14:15:22Z",
"t_custom_date_06": "2019-08-24T14:15:22Z",
"t_custom_date_07": "2019-08-24T14:15:22Z",
"t_custom_date_08": "2019-08-24T14:15:22Z",
"t_custom_date_09": "2019-08-24T14:15:22Z",
"t_custom_date_10": "2019-08-24T14:15:22Z",
"t_custom_date_11": "2019-08-24T14:15:22Z",
"t_custom_date_12": "2019-08-24T14:15:22Z",
"t_custom_date_13": "2019-08-24T14:15:22Z",
"t_custom_date_14": "2019-08-24T14:15:22Z",
"t_custom_date_15": "2019-08-24T14:15:22Z",
"t_custom_date_16": "2019-08-24T14:15:22Z",
"t_custom_date_17": "2019-08-24T14:15:22Z",
"t_custom_date_18": "2019-08-24T14:15:22Z",
"t_custom_date_19": "2019-08-24T14:15:22Z",
"t_custom_date_20": "2019-08-24T14:15:22Z",
"t_custom_date_21": "2019-08-24T14:15:22Z",
"t_custom_date_22": "2019-08-24T14:15:22Z",
"t_custom_date_23": "2019-08-24T14:15:22Z",
"t_custom_date_24": "2019-08-24T14:15:22Z",
"t_custom_date_25": "2019-08-24T14:15:22Z",
"t_custom_date_26": "2019-08-24T14:15:22Z",
"t_custom_date_27": "2019-08-24T14:15:22Z",
"t_custom_date_28": "2019-08-24T14:15:22Z",
"t_custom_date_29": "2019-08-24T14:15:22Z",
"t_custom_date_30": "2019-08-24T14:15:22Z",
"t_custom_date_31": "2019-08-24T14:15:22Z",
"t_custom_date_32": "2019-08-24T14:15:22Z",
"t_custom_date_33": "2019-08-24T14:15:22Z",
"t_custom_date_34": "2019-08-24T14:15:22Z",
"t_custom_date_35": "2019-08-24T14:15:22Z",
"t_custom_date_36": "2019-08-24T14:15:22Z",
"t_custom_date_37": "2019-08-24T14:15:22Z",
"t_custom_date_38": "2019-08-24T14:15:22Z",
"t_custom_date_39": "2019-08-24T14:15:22Z",
"t_custom_date_40": "2019-08-24T14:15:22Z",
"t_custom_date_41": "2019-08-24T14:15:22Z",
"t_custom_date_42": "2019-08-24T14:15:22Z",
"t_custom_date_43": "2019-08-24T14:15:22Z",
"t_custom_date_44": "2019-08-24T14:15:22Z",
"t_custom_date_45": "2019-08-24T14:15:22Z",
"t_custom_date_46": "2019-08-24T14:15:22Z",
"t_custom_date_47": "2019-08-24T14:15:22Z",
"t_custom_date_48": "2019-08-24T14:15:22Z",
"t_custom_date_49": "2019-08-24T14:15:22Z",
"t_external_ticketing_add": true,
"t_external_ticketing_link": "string",
"t_forgot_article_count": 0,
"t_forgot_time_unit": 0,
"t_is_child_link": true,
"t_is_forgot_ticket": true,
"t_is_normal_link": true,
"t_is_parent_link": true,
"t_is_view_by_owner": true,
"t_knowledge_base_answer_link": "string",
"t_knowledge_base_answer_uid": "string",
"t_knowledge_base_category_link": "string",
"t_knowledge_base_category_uid": "string",
"t_knowledge_base_id_answer": "string",
"t_knowledge_base_id_category": "string",
"t_last_link_child_update": "string",
"t_last_link_normal_update": "string",
"t_last_link_with": "string",
"t_last_merge_with": "string",
"t_last_owner_view_at": "2019-08-24T14:15:22Z",
"t_queue_type": "string",
"t_reminder_cp_last_time": "2019-08-24T14:15:22Z",
"t_reminder_cp_num": 0,
"t_reminder_tk_last_time": "2019-08-24T14:15:22Z",
"t_reminder_tk_num": 0,
"t_reminder_tk_src": "string",
"t_self_generated_ticket_call_final_state": "string",
"t_self_generated_ticket_type": "string",
"t_state_last_update": "2019-08-24T14:15:22Z",
"ticket_time_accounting": [
"string"
],
"ticket_time_accounting_ids": [
0
],
"time_unit": 0,
"title": "string",
"type": "string",
"update_diff_in_min": 0,
"update_escalation_at": "2019-08-24T14:15:22Z",
"update_in_min": 0,
"updated_at": "2019-08-24T14:15:22Z",
"updated_by": "string",
"updated_by_id": 0
}
Name | In | Type | Required | Description |
---|---|---|---|---|
context | path | string | true | Ticket context |
submitterId | query | string | false | Sender |
body | body | TicketWithCustomer | true | Ticket to create |
Enumerated Values
Parameter | Value |
---|---|
context | IVR |
context | SURVEY |
context | GENERIC |
context | AGENT |
context | CUSTOMER |
Responses
Example responses
default Response
{
"article": {
"attachments": [
{
"data": "string",
"filename": "string",
"id": 0,
"mime-type": "string",
"preferences": {
"property1": "string",
"property2": "string"
},
"size": "string"
}
],
"body": "string",
"cc": "string",
"content_type": "string",
"created_at": "2019-08-24T14:15:22Z",
"created_by": "string",
"created_by_id": 0,
"from": "string",
"id": 0,
"in_reply_to": "string",
"internal": true,
"message_id": "string",
"message_id_md5": "string",
"origin_by": "string",
"origin_by_id": 0,
"preferences": {
"property1": {},
"property2": {}
},
"references": "string",
"reply_to": "string",
"sender": "Agent",
"sender_id": 0,
"subject": "string",
"ticket_id": 0,
"time_unit": 0,
"to": "string",
"type": "email",
"type_id": 0,
"updated_at": "2019-08-24T14:15:22Z",
"updated_by": "string",
"updated_by_id": 0
},
"article_count": 0,
"article_ids": [
0
],
"articles": [
{
"attachments": [
{
"data": "string",
"filename": "string",
"id": 0,
"mime-type": "string",
"preferences": {
"property1": "string",
"property2": "string"
},
"size": "string"
}
],
"body": "string",
"cc": "string",
"content_type": "string",
"created_at": "2019-08-24T14:15:22Z",
"created_by": "string",
"created_by_id": 0,
"from": "string",
"id": 0,
"in_reply_to": "string",
"internal": true,
"message_id": "string",
"message_id_md5": "string",
"origin_by": "string",
"origin_by_id": 0,
"preferences": {
"property1": {},
"property2": {}
},
"references": "string",
"reply_to": "string",
"sender": "Agent",
"sender_id": 0,
"subject": "string",
"ticket_id": 0,
"time_unit": 0,
"to": "string",
"type": "email",
"type_id": 0,
"updated_at": "2019-08-24T14:15:22Z",
"updated_by": "string",
"updated_by_id": 0
}
],
"attachments": [
{
"mimeType": "string",
"name": "string",
"uuid": "string"
}
],
"close_at": "2019-08-24T14:15:22Z",
"close_diff_in_min": 0,
"close_escalation_at": "2019-08-24T14:15:22Z",
"close_in_min": 0,
"create_article_sender": "string",
"create_article_sender_id": 0,
"create_article_type": "string",
"create_article_type_id": 0,
"created_at": "2019-08-24T14:15:22Z",
"created_by": "string",
"created_by_id": 0,
"customer": "string",
"customerContact": {
"type": "USER",
"uid": "string",
"username": "string",
"value": "string"
},
"customer_id": "string",
"escalation_at": "2019-08-24T14:15:22Z",
"first_response_at": "2019-08-24T14:15:22Z",
"first_response_diff_in_min": 0,
"first_response_escalation_at": "2019-08-24T14:15:22Z",
"first_response_in_min": 0,
"group": "string",
"group_id": 0,
"id": 0,
"last_contact_agent_at": "2019-08-24T14:15:22Z",
"last_contact_at": "2019-08-24T14:15:22Z",
"last_contact_customer_at": "2019-08-24T14:15:22Z",
"last_owner_update_at": "2019-08-24T14:15:22Z",
"note": "string",
"number": "string",
"organization": "string",
"organization_id": 0,
"owner": "string",
"ownerContact": {
"type": "USER",
"uid": "string",
"username": "string",
"value": "string"
},
"owner_id": 0,
"pending_time": "2019-08-24T14:15:22Z",
"priority": "1 low",
"priority_id": 0,
"state": "new",
"state_id": 0,
"t_agent_close_date": "2019-08-24T14:15:22Z",
"t_agent_get_date": "2019-08-24T14:15:22Z",
"t_call_link": "string",
"t_create_call_uid": "string",
"t_custom_01": "string",
"t_custom_02": "string",
"t_custom_03": "string",
"t_custom_04": "string",
"t_custom_05": "string",
"t_custom_06": "string",
"t_custom_07": "string",
"t_custom_08": "string",
"t_custom_09": "string",
"t_custom_10": "string",
"t_custom_11": "string",
"t_custom_12": "string",
"t_custom_13": "string",
"t_custom_14": "string",
"t_custom_15": "string",
"t_custom_16": "string",
"t_custom_17": "string",
"t_custom_18": "string",
"t_custom_19": "string",
"t_custom_20": "string",
"t_custom_21": "string",
"t_custom_22": "string",
"t_custom_23": "string",
"t_custom_24": "string",
"t_custom_25": "string",
"t_custom_26": "string",
"t_custom_27": "string",
"t_custom_28": "string",
"t_custom_29": "string",
"t_custom_30": "string",
"t_custom_31": "string",
"t_custom_32": "string",
"t_custom_33": "string",
"t_custom_34": "string",
"t_custom_35": "string",
"t_custom_36": "string",
"t_custom_37": "string",
"t_custom_38": "string",
"t_custom_39": "string",
"t_custom_40": "string",
"t_custom_41": "string",
"t_custom_42": "string",
"t_custom_43": "string",
"t_custom_44": "string",
"t_custom_45": "string",
"t_custom_46": "string",
"t_custom_47": "string",
"t_custom_48": "string",
"t_custom_49": "string",
"t_custom_50": "string",
"t_custom_51": "string",
"t_custom_52": "string",
"t_custom_53": "string",
"t_custom_54": "string",
"t_custom_55": "string",
"t_custom_56": "string",
"t_custom_57": "string",
"t_custom_58": "string",
"t_custom_59": "string",
"t_custom_60": "string",
"t_custom_61": "string",
"t_custom_62": "string",
"t_custom_63": "string",
"t_custom_64": "string",
"t_custom_65": "string",
"t_custom_66": "string",
"t_custom_67": "string",
"t_custom_68": "string",
"t_custom_69": "string",
"t_custom_70": "string",
"t_custom_71": "string",
"t_custom_72": "string",
"t_custom_73": "string",
"t_custom_74": "string",
"t_custom_75": "string",
"t_custom_76": "string",
"t_custom_77": "string",
"t_custom_78": "string",
"t_custom_79": "string",
"t_custom_80": "string",
"t_custom_81": "string",
"t_custom_82": "string",
"t_custom_83": "string",
"t_custom_84": "string",
"t_custom_85": "string",
"t_custom_86": "string",
"t_custom_87": "string",
"t_custom_88": "string",
"t_custom_89": "string",
"t_custom_90": "string",
"t_custom_91": "string",
"t_custom_92": "string",
"t_custom_93": "string",
"t_custom_94": "string",
"t_custom_95": "string",
"t_custom_96": "string",
"t_custom_97": "string",
"t_custom_98": "string",
"t_custom_99": "string",
"t_custom_date_01": "2019-08-24T14:15:22Z",
"t_custom_date_02": "2019-08-24T14:15:22Z",
"t_custom_date_03": "2019-08-24T14:15:22Z",
"t_custom_date_04": "2019-08-24T14:15:22Z",
"t_custom_date_05": "2019-08-24T14:15:22Z",
"t_custom_date_06": "2019-08-24T14:15:22Z",
"t_custom_date_07": "2019-08-24T14:15:22Z",
"t_custom_date_08": "2019-08-24T14:15:22Z",
"t_custom_date_09": "2019-08-24T14:15:22Z",
"t_custom_date_10": "2019-08-24T14:15:22Z",
"t_custom_date_11": "2019-08-24T14:15:22Z",
"t_custom_date_12": "2019-08-24T14:15:22Z",
"t_custom_date_13": "2019-08-24T14:15:22Z",
"t_custom_date_14": "2019-08-24T14:15:22Z",
"t_custom_date_15": "2019-08-24T14:15:22Z",
"t_custom_date_16": "2019-08-24T14:15:22Z",
"t_custom_date_17": "2019-08-24T14:15:22Z",
"t_custom_date_18": "2019-08-24T14:15:22Z",
"t_custom_date_19": "2019-08-24T14:15:22Z",
"t_custom_date_20": "2019-08-24T14:15:22Z",
"t_custom_date_21": "2019-08-24T14:15:22Z",
"t_custom_date_22": "2019-08-24T14:15:22Z",
"t_custom_date_23": "2019-08-24T14:15:22Z",
"t_custom_date_24": "2019-08-24T14:15:22Z",
"t_custom_date_25": "2019-08-24T14:15:22Z",
"t_custom_date_26": "2019-08-24T14:15:22Z",
"t_custom_date_27": "2019-08-24T14:15:22Z",
"t_custom_date_28": "2019-08-24T14:15:22Z",
"t_custom_date_29": "2019-08-24T14:15:22Z",
"t_custom_date_30": "2019-08-24T14:15:22Z",
"t_custom_date_31": "2019-08-24T14:15:22Z",
"t_custom_date_32": "2019-08-24T14:15:22Z",
"t_custom_date_33": "2019-08-24T14:15:22Z",
"t_custom_date_34": "2019-08-24T14:15:22Z",
"t_custom_date_35": "2019-08-24T14:15:22Z",
"t_custom_date_36": "2019-08-24T14:15:22Z",
"t_custom_date_37": "2019-08-24T14:15:22Z",
"t_custom_date_38": "2019-08-24T14:15:22Z",
"t_custom_date_39": "2019-08-24T14:15:22Z",
"t_custom_date_40": "2019-08-24T14:15:22Z",
"t_custom_date_41": "2019-08-24T14:15:22Z",
"t_custom_date_42": "2019-08-24T14:15:22Z",
"t_custom_date_43": "2019-08-24T14:15:22Z",
"t_custom_date_44": "2019-08-24T14:15:22Z",
"t_custom_date_45": "2019-08-24T14:15:22Z",
"t_custom_date_46": "2019-08-24T14:15:22Z",
"t_custom_date_47": "2019-08-24T14:15:22Z",
"t_custom_date_48": "2019-08-24T14:15:22Z",
"t_custom_date_49": "2019-08-24T14:15:22Z",
"t_external_ticketing_add": true,
"t_external_ticketing_link": "string",
"t_forgot_article_count": 0,
"t_forgot_time_unit": 0,
"t_is_child_link": true,
"t_is_forgot_ticket": true,
"t_is_normal_link": true,
"t_is_parent_link": true,
"t_is_view_by_owner": true,
"t_knowledge_base_answer_link": "string",
"t_knowledge_base_answer_uid": "string",
"t_knowledge_base_category_link": "string",
"t_knowledge_base_category_uid": "string",
"t_knowledge_base_id_answer": "string",
"t_knowledge_base_id_category": "string",
"t_last_link_child_update": "string",
"t_last_link_normal_update": "string",
"t_last_link_with": "string",
"t_last_merge_with": "string",
"t_last_owner_view_at": "2019-08-24T14:15:22Z",
"t_queue_type": "string",
"t_reminder_cp_last_time": "2019-08-24T14:15:22Z",
"t_reminder_cp_num": 0,
"t_reminder_tk_last_time": "2019-08-24T14:15:22Z",
"t_reminder_tk_num": 0,
"t_reminder_tk_src": "string",
"t_self_generated_ticket_call_final_state": "string",
"t_self_generated_ticket_type": "string",
"t_state_last_update": "2019-08-24T14:15:22Z",
"ticket_time_accounting": [
"string"
],
"ticket_time_accounting_ids": [
0
],
"time_unit": 0,
"title": "string",
"type": "string",
"update_diff_in_min": 0,
"update_escalation_at": "2019-08-24T14:15:22Z",
"update_in_min": 0,
"updated_at": "2019-08-24T14:15:22Z",
"updated_by": "string",
"updated_by_id": 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 |
510 | Unknown | Error: Invalid license or license not found. | None |
default | Default | Created ticket | TicketWithCustomer |
Get ticket
Code samples
GET /tvox/rest/support/ticket/IVR/string 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/support/ticket/IVR/string",
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/support/ticket/IVR/string \
--header 'Accept: application/json' \
--header 'Cookie: JSESSIONID=SESSION_ID'
HttpResponse<String> response = Unirest.get("https://tvox_host/tvox/rest/support/ticket/IVR/string")
.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/support/ticket/IVR/string"
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/support/ticket/IVR/string");
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/support/ticket/IVR/string",
"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/support/ticket/IVR/string", 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/support/ticket/IVR/string")
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/support/ticket/{context}/{ticketId}
Get a ticket by choosing the appropriate context and providing ticket id
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
context | path | string | true | Ticket context |
ticketId | path | string | true | Ticket id |
submitterId | query | string | false | Sender |
Enumerated Values
Parameter | Value |
---|---|
context | IVR |
context | SURVEY |
context | GENERIC |
context | AGENT |
context | CUSTOMER |
Responses
Example responses
default Response
{
"article": {
"attachments": [
{
"data": "string",
"filename": "string",
"id": 0,
"mime-type": "string",
"preferences": {
"property1": "string",
"property2": "string"
},
"size": "string"
}
],
"body": "string",
"cc": "string",
"content_type": "string",
"created_at": "2019-08-24T14:15:22Z",
"created_by": "string",
"created_by_id": 0,
"from": "string",
"id": 0,
"in_reply_to": "string",
"internal": true,
"message_id": "string",
"message_id_md5": "string",
"origin_by": "string",
"origin_by_id": 0,
"preferences": {
"property1": {},
"property2": {}
},
"references": "string",
"reply_to": "string",
"sender": "Agent",
"sender_id": 0,
"subject": "string",
"ticket_id": 0,
"time_unit": 0,
"to": "string",
"type": "email",
"type_id": 0,
"updated_at": "2019-08-24T14:15:22Z",
"updated_by": "string",
"updated_by_id": 0
},
"article_count": 0,
"article_ids": [
0
],
"articles": [
{
"attachments": [
{
"data": "string",
"filename": "string",
"id": 0,
"mime-type": "string",
"preferences": {
"property1": "string",
"property2": "string"
},
"size": "string"
}
],
"body": "string",
"cc": "string",
"content_type": "string",
"created_at": "2019-08-24T14:15:22Z",
"created_by": "string",
"created_by_id": 0,
"from": "string",
"id": 0,
"in_reply_to": "string",
"internal": true,
"message_id": "string",
"message_id_md5": "string",
"origin_by": "string",
"origin_by_id": 0,
"preferences": {
"property1": {},
"property2": {}
},
"references": "string",
"reply_to": "string",
"sender": "Agent",
"sender_id": 0,
"subject": "string",
"ticket_id": 0,
"time_unit": 0,
"to": "string",
"type": "email",
"type_id": 0,
"updated_at": "2019-08-24T14:15:22Z",
"updated_by": "string",
"updated_by_id": 0
}
],
"attachments": [
{
"mimeType": "string",
"name": "string",
"uuid": "string"
}
],
"close_at": "2019-08-24T14:15:22Z",
"close_diff_in_min": 0,
"close_escalation_at": "2019-08-24T14:15:22Z",
"close_in_min": 0,
"create_article_sender": "string",
"create_article_sender_id": 0,
"create_article_type": "string",
"create_article_type_id": 0,
"created_at": "2019-08-24T14:15:22Z",
"created_by": "string",
"created_by_id": 0,
"customer": "string",
"customerContact": {
"type": "USER",
"uid": "string",
"username": "string",
"value": "string"
},
"customer_id": "string",
"escalation_at": "2019-08-24T14:15:22Z",
"first_response_at": "2019-08-24T14:15:22Z",
"first_response_diff_in_min": 0,
"first_response_escalation_at": "2019-08-24T14:15:22Z",
"first_response_in_min": 0,
"group": "string",
"group_id": 0,
"id": 0,
"last_contact_agent_at": "2019-08-24T14:15:22Z",
"last_contact_at": "2019-08-24T14:15:22Z",
"last_contact_customer_at": "2019-08-24T14:15:22Z",
"last_owner_update_at": "2019-08-24T14:15:22Z",
"note": "string",
"number": "string",
"organization": "string",
"organization_id": 0,
"owner": "string",
"ownerContact": {
"type": "USER",
"uid": "string",
"username": "string",
"value": "string"
},
"owner_id": 0,
"pending_time": "2019-08-24T14:15:22Z",
"priority": "1 low",
"priority_id": 0,
"state": "new",
"state_id": 0,
"t_agent_close_date": "2019-08-24T14:15:22Z",
"t_agent_get_date": "2019-08-24T14:15:22Z",
"t_call_link": "string",
"t_create_call_uid": "string",
"t_custom_01": "string",
"t_custom_02": "string",
"t_custom_03": "string",
"t_custom_04": "string",
"t_custom_05": "string",
"t_custom_06": "string",
"t_custom_07": "string",
"t_custom_08": "string",
"t_custom_09": "string",
"t_custom_10": "string",
"t_custom_11": "string",
"t_custom_12": "string",
"t_custom_13": "string",
"t_custom_14": "string",
"t_custom_15": "string",
"t_custom_16": "string",
"t_custom_17": "string",
"t_custom_18": "string",
"t_custom_19": "string",
"t_custom_20": "string",
"t_custom_21": "string",
"t_custom_22": "string",
"t_custom_23": "string",
"t_custom_24": "string",
"t_custom_25": "string",
"t_custom_26": "string",
"t_custom_27": "string",
"t_custom_28": "string",
"t_custom_29": "string",
"t_custom_30": "string",
"t_custom_31": "string",
"t_custom_32": "string",
"t_custom_33": "string",
"t_custom_34": "string",
"t_custom_35": "string",
"t_custom_36": "string",
"t_custom_37": "string",
"t_custom_38": "string",
"t_custom_39": "string",
"t_custom_40": "string",
"t_custom_41": "string",
"t_custom_42": "string",
"t_custom_43": "string",
"t_custom_44": "string",
"t_custom_45": "string",
"t_custom_46": "string",
"t_custom_47": "string",
"t_custom_48": "string",
"t_custom_49": "string",
"t_custom_50": "string",
"t_custom_51": "string",
"t_custom_52": "string",
"t_custom_53": "string",
"t_custom_54": "string",
"t_custom_55": "string",
"t_custom_56": "string",
"t_custom_57": "string",
"t_custom_58": "string",
"t_custom_59": "string",
"t_custom_60": "string",
"t_custom_61": "string",
"t_custom_62": "string",
"t_custom_63": "string",
"t_custom_64": "string",
"t_custom_65": "string",
"t_custom_66": "string",
"t_custom_67": "string",
"t_custom_68": "string",
"t_custom_69": "string",
"t_custom_70": "string",
"t_custom_71": "string",
"t_custom_72": "string",
"t_custom_73": "string",
"t_custom_74": "string",
"t_custom_75": "string",
"t_custom_76": "string",
"t_custom_77": "string",
"t_custom_78": "string",
"t_custom_79": "string",
"t_custom_80": "string",
"t_custom_81": "string",
"t_custom_82": "string",
"t_custom_83": "string",
"t_custom_84": "string",
"t_custom_85": "string",
"t_custom_86": "string",
"t_custom_87": "string",
"t_custom_88": "string",
"t_custom_89": "string",
"t_custom_90": "string",
"t_custom_91": "string",
"t_custom_92": "string",
"t_custom_93": "string",
"t_custom_94": "string",
"t_custom_95": "string",
"t_custom_96": "string",
"t_custom_97": "string",
"t_custom_98": "string",
"t_custom_99": "string",
"t_custom_date_01": "2019-08-24T14:15:22Z",
"t_custom_date_02": "2019-08-24T14:15:22Z",
"t_custom_date_03": "2019-08-24T14:15:22Z",
"t_custom_date_04": "2019-08-24T14:15:22Z",
"t_custom_date_05": "2019-08-24T14:15:22Z",
"t_custom_date_06": "2019-08-24T14:15:22Z",
"t_custom_date_07": "2019-08-24T14:15:22Z",
"t_custom_date_08": "2019-08-24T14:15:22Z",
"t_custom_date_09": "2019-08-24T14:15:22Z",
"t_custom_date_10": "2019-08-24T14:15:22Z",
"t_custom_date_11": "2019-08-24T14:15:22Z",
"t_custom_date_12": "2019-08-24T14:15:22Z",
"t_custom_date_13": "2019-08-24T14:15:22Z",
"t_custom_date_14": "2019-08-24T14:15:22Z",
"t_custom_date_15": "2019-08-24T14:15:22Z",
"t_custom_date_16": "2019-08-24T14:15:22Z",
"t_custom_date_17": "2019-08-24T14:15:22Z",
"t_custom_date_18": "2019-08-24T14:15:22Z",
"t_custom_date_19": "2019-08-24T14:15:22Z",
"t_custom_date_20": "2019-08-24T14:15:22Z",
"t_custom_date_21": "2019-08-24T14:15:22Z",
"t_custom_date_22": "2019-08-24T14:15:22Z",
"t_custom_date_23": "2019-08-24T14:15:22Z",
"t_custom_date_24": "2019-08-24T14:15:22Z",
"t_custom_date_25": "2019-08-24T14:15:22Z",
"t_custom_date_26": "2019-08-24T14:15:22Z",
"t_custom_date_27": "2019-08-24T14:15:22Z",
"t_custom_date_28": "2019-08-24T14:15:22Z",
"t_custom_date_29": "2019-08-24T14:15:22Z",
"t_custom_date_30": "2019-08-24T14:15:22Z",
"t_custom_date_31": "2019-08-24T14:15:22Z",
"t_custom_date_32": "2019-08-24T14:15:22Z",
"t_custom_date_33": "2019-08-24T14:15:22Z",
"t_custom_date_34": "2019-08-24T14:15:22Z",
"t_custom_date_35": "2019-08-24T14:15:22Z",
"t_custom_date_36": "2019-08-24T14:15:22Z",
"t_custom_date_37": "2019-08-24T14:15:22Z",
"t_custom_date_38": "2019-08-24T14:15:22Z",
"t_custom_date_39": "2019-08-24T14:15:22Z",
"t_custom_date_40": "2019-08-24T14:15:22Z",
"t_custom_date_41": "2019-08-24T14:15:22Z",
"t_custom_date_42": "2019-08-24T14:15:22Z",
"t_custom_date_43": "2019-08-24T14:15:22Z",
"t_custom_date_44": "2019-08-24T14:15:22Z",
"t_custom_date_45": "2019-08-24T14:15:22Z",
"t_custom_date_46": "2019-08-24T14:15:22Z",
"t_custom_date_47": "2019-08-24T14:15:22Z",
"t_custom_date_48": "2019-08-24T14:15:22Z",
"t_custom_date_49": "2019-08-24T14:15:22Z",
"t_external_ticketing_add": true,
"t_external_ticketing_link": "string",
"t_forgot_article_count": 0,
"t_forgot_time_unit": 0,
"t_is_child_link": true,
"t_is_forgot_ticket": true,
"t_is_normal_link": true,
"t_is_parent_link": true,
"t_is_view_by_owner": true,
"t_knowledge_base_answer_link": "string",
"t_knowledge_base_answer_uid": "string",
"t_knowledge_base_category_link": "string",
"t_knowledge_base_category_uid": "string",
"t_knowledge_base_id_answer": "string",
"t_knowledge_base_id_category": "string",
"t_last_link_child_update": "string",
"t_last_link_normal_update": "string",
"t_last_link_with": "string",
"t_last_merge_with": "string",
"t_last_owner_view_at": "2019-08-24T14:15:22Z",
"t_queue_type": "string",
"t_reminder_cp_last_time": "2019-08-24T14:15:22Z",
"t_reminder_cp_num": 0,
"t_reminder_tk_last_time": "2019-08-24T14:15:22Z",
"t_reminder_tk_num": 0,
"t_reminder_tk_src": "string",
"t_self_generated_ticket_call_final_state": "string",
"t_self_generated_ticket_type": "string",
"t_state_last_update": "2019-08-24T14:15:22Z",
"ticket_time_accounting": [
"string"
],
"ticket_time_accounting_ids": [
0
],
"time_unit": 0,
"title": "string",
"type": "string",
"update_diff_in_min": 0,
"update_escalation_at": "2019-08-24T14:15:22Z",
"update_in_min": 0,
"updated_at": "2019-08-24T14:15:22Z",
"updated_by": "string",
"updated_by_id": 0
}
Status | Meaning | Description | Schema |
---|---|---|---|
401 | Unauthorized | Error: Authorization required. Request is not authenticated or current user session is expired | None |
406 | Not Acceptable | Error: Invalid argument. | None |
412 | Precondition Failed | Error: Object required. A required field is missing or empty | None |
default | Default | Get ticket | TicketWithCustomer |
Add ticket note
Code samples
POST /tvox/rest/support/ticket/IVR/string/add-article-note HTTP/1.1
Content-Type: application/json
Accept: application/json
Cookie: JSESSIONID=SESSION_ID
Host: tvox_host
Content-Length: 103
{"attachments":[{"mimeType":"string","name":"string","uuid":"string"}],"body":"string","internal":true}
<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://tvox_host/tvox/rest/support/ticket/IVR/string/add-article-note",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => "{\"attachments\":[{\"mimeType\":\"string\",\"name\":\"string\",\"uuid\":\"string\"}],\"body\":\"string\",\"internal\":true}",
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/support/ticket/IVR/string/add-article-note \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--header 'Cookie: JSESSIONID=SESSION_ID' \
--data '{"attachments":[{"mimeType":"string","name":"string","uuid":"string"}],"body":"string","internal":true}'
HttpResponse<String> response = Unirest.post("https://tvox_host/tvox/rest/support/ticket/IVR/string/add-article-note")
.header("Content-Type", "application/json")
.header("Accept", "application/json")
.header("Cookie", "JSESSIONID=SESSION_ID")
.body("{\"attachments\":[{\"mimeType\":\"string\",\"name\":\"string\",\"uuid\":\"string\"}],\"body\":\"string\",\"internal\":true}")
.asString();
package main
import (
"fmt"
"strings"
"net/http"
"io/ioutil"
)
func main() {
url := "https://tvox_host/tvox/rest/support/ticket/IVR/string/add-article-note"
payload := strings.NewReader("{\"attachments\":[{\"mimeType\":\"string\",\"name\":\"string\",\"uuid\":\"string\"}],\"body\":\"string\",\"internal\":true}")
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({
"attachments": [
{
"mimeType": "string",
"name": "string",
"uuid": "string"
}
],
"body": "string",
"internal": true
});
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/support/ticket/IVR/string/add-article-note");
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/support/ticket/IVR/string/add-article-note",
"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({
attachments: [{mimeType: 'string', name: 'string', uuid: 'string'}],
body: 'string',
internal: true
}));
req.end();
import http.client
conn = http.client.HTTPSConnection("tvox_host")
payload = "{\"attachments\":[{\"mimeType\":\"string\",\"name\":\"string\",\"uuid\":\"string\"}],\"body\":\"string\",\"internal\":true}"
headers = {
'Content-Type': "application/json",
'Accept': "application/json",
'Cookie': "JSESSIONID=SESSION_ID"
}
conn.request("POST", "/tvox/rest/support/ticket/IVR/string/add-article-note", 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/support/ticket/IVR/string/add-article-note")
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 = "{\"attachments\":[{\"mimeType\":\"string\",\"name\":\"string\",\"uuid\":\"string\"}],\"body\":\"string\",\"internal\":true}"
response = http.request(request)
puts response.read_body
POST /rest/support/ticket/{context}/{ticketId}/add-article-note
Add notes on a ticket by choosing the appropriate context and providing ticket id
Parameters
Body parameter
{
"attachments": [
{
"mimeType": "string",
"name": "string",
"uuid": "string"
}
],
"body": "string",
"internal": true
}
Name | In | Type | Required | Description |
---|---|---|---|---|
context | path | string | true | Ticket context |
ticketId | path | string | true | Ticket id |
submitterId | query | string | false | Sender |
body | body | TicketAddArticleNoteRequest | false | Ticket article |
Enumerated Values
Parameter | Value |
---|---|
context | IVR |
context | SURVEY |
context | GENERIC |
context | AGENT |
context | CUSTOMER |
Responses
Example responses
default Response
{
"attachments": [
{
"data": "string",
"filename": "string",
"id": 0,
"mime-type": "string",
"preferences": {
"property1": "string",
"property2": "string"
},
"size": "string"
}
],
"body": "string",
"cc": "string",
"content_type": "string",
"created_at": "2019-08-24T14:15:22Z",
"created_by": "string",
"created_by_id": 0,
"from": "string",
"id": 0,
"in_reply_to": "string",
"internal": true,
"message_id": "string",
"message_id_md5": "string",
"origin_by": "string",
"origin_by_id": 0,
"preferences": {
"property1": {},
"property2": {}
},
"references": "string",
"reply_to": "string",
"sender": "Agent",
"sender_id": 0,
"subject": "string",
"ticket_id": 0,
"time_unit": 0,
"to": "string",
"type": "email",
"type_id": 0,
"updated_at": "2019-08-24T14:15:22Z",
"updated_by": "string",
"updated_by_id": 0
}
Status | Meaning | Description | Schema |
---|---|---|---|
401 | Unauthorized | Error: Authorization required. Request is not authenticated or current user session is expired | None |
406 | Not Acceptable | Error: Invalid argument. | None |
412 | Precondition Failed | Error: Object required. A required field is missing or empty | None |
510 | Unknown | Error: Invalid license or license not found. | None |
default | Default | Add ticket note | TicketArticle |
Get ticket articles
Code samples
GET /tvox/rest/support/ticket/IVR/string/articles 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/support/ticket/IVR/string/articles",
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/support/ticket/IVR/string/articles \
--header 'Accept: application/json' \
--header 'Cookie: JSESSIONID=SESSION_ID'
HttpResponse<String> response = Unirest.get("https://tvox_host/tvox/rest/support/ticket/IVR/string/articles")
.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/support/ticket/IVR/string/articles"
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/support/ticket/IVR/string/articles");
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/support/ticket/IVR/string/articles",
"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/support/ticket/IVR/string/articles", 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/support/ticket/IVR/string/articles")
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/support/ticket/{context}/{ticketId}/articles
Get ticket articles by choosing the appropriate context and providing ticket id
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
context | path | string | true | Ticket context |
ticketId | path | string | true | Ticket id |
submitterId | query | string | false | Sender |
Enumerated Values
Parameter | Value |
---|---|
context | IVR |
context | SURVEY |
context | GENERIC |
context | AGENT |
context | CUSTOMER |
Responses
Example responses
default Response
{
"attachments": [
{
"data": "string",
"filename": "string",
"id": 0,
"mime-type": "string",
"preferences": {
"property1": "string",
"property2": "string"
},
"size": "string"
}
],
"body": "string",
"cc": "string",
"content_type": "string",
"created_at": "2019-08-24T14:15:22Z",
"created_by": "string",
"created_by_id": 0,
"from": "string",
"id": 0,
"in_reply_to": "string",
"internal": true,
"message_id": "string",
"message_id_md5": "string",
"origin_by": "string",
"origin_by_id": 0,
"preferences": {
"property1": {},
"property2": {}
},
"references": "string",
"reply_to": "string",
"sender": "Agent",
"sender_id": 0,
"subject": "string",
"ticket_id": 0,
"time_unit": 0,
"to": "string",
"type": "email",
"type_id": 0,
"updated_at": "2019-08-24T14:15:22Z",
"updated_by": "string",
"updated_by_id": 0
}
Status | Meaning | Description | Schema |
---|---|---|---|
401 | Unauthorized | Error: Authorization required. Request is not authenticated or current user session is expired | None |
406 | Not Acceptable | Error: Invalid argument. | None |
412 | Precondition Failed | Error: Object required. A required field is missing or empty | None |
default | Default | Get ticket articles | [TicketArticle] |
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 |
Abilitazione
Enabling for outgoing calls
Properties
{
"descrizione": "string",
"id": 0
}
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
descrizione | string | true | none | Enabling description |
id | integer(int32) | true | none | Enabling ID |
AddressbookContactCustom
List of contact custom fields
Properties
{
"key": "CUSTOM_01",
"value": "string"
}
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
key | string | false | none | none |
value | string | false | none | none |
Enumerated Values
Property | Value |
---|---|
key | CUSTOM_01 |
key | CUSTOM_02 |
key | CUSTOM_03 |
key | CUSTOM_04 |
key | CUSTOM_05 |
key | CUSTOM_06 |
key | CUSTOM_07 |
key | CUSTOM_08 |
key | CUSTOM_09 |
key | CUSTOM_10 |
AddressbookContactEmail
List of contact emails (max: 10)
Properties
{
"type": "INTERNET_WORK",
"value": "string"
}
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
type | string | false | none | none |
value | string | false | none | none |
Enumerated Values
Property | Value |
---|---|
type | INTERNET_WORK |
type | INTERNET_HOME |
AddressbookContactExternal
External addressbook contact
Properties
{
"addressbookBackendId": "string",
"agentNote": "string",
"cap": "string",
"categories": [
"string"
],
"city": "string",
"company": "string",
"country": "string",
"customFields": [
{
"key": "CUSTOM_01",
"value": "string"
}
],
"department": "string",
"district": "string",
"emails": [
{
"type": "INTERNET_WORK",
"value": "string"
}
],
"id": "string",
"name": "string",
"note": "string",
"numbers": [
{
"type": "FAX",
"value": "string"
}
],
"otherName": "string",
"role": "string",
"street": "string",
"surname": "string",
"vip": true,
"webSites": [
{
"type": "WORK",
"value": "string"
}
]
}
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
addressbookBackendId | string | false | none | Addressbook backend id in which to create or update the contact. If not specified, the external addressbook default backend is used. |
agentNote | string | false | none | Contact agent note |
cap | string | false | none | Contact cap |
categories | [string] | false | none | List of contact categories |
city | string | false | none | Contact city |
company | string | false | none | Contact company (one of name, surname or company must be specified) |
country | string | false | none | Contact country |
customFields | [AddressbookContactCustom] | false | none | List of contact custom fields |
department | string | false | none | Contact department |
district | string | false | none | Contact district |
emails | [AddressbookContactEmail] | false | none | List of contact emails (max: 10) |
id | string | false | none | Contact id |
name | string | false | none | Contact name (one of name, surname or company must be specified) |
note | string | false | none | Contact note |
numbers | [AddressbookContactNumber] | false | none | List of contact numbers (max: 10) |
otherName | string | false | none | Contact other name |
role | string | false | none | Contact role |
street | string | false | none | Contact street |
surname | string | false | none | Contact surname (one of name, surname or company must be specified) |
vip | boolean | true | none | Contact vip |
webSites | [AddressbookContactWebSite] | false | none | List of contact web sites (max: 3) |
AddressbookContactNumber
List of contact numbers (max: 10)
Properties
{
"type": "FAX",
"value": "string"
}
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
type | string | false | none | none |
value | string | false | none | none |
Enumerated Values
Property | Value |
---|---|
type | FAX |
type | HOME |
type | CELL |
type | WORK |
type | CELL_WORK |
type | FAX_WORK |
type | FAX_HOME |
type | CELL_HOME |
type | MAIN |
type | OTHER |
AddressbookContactWebSite
List of contact web sites (max: 3)
Properties
{
"type": "WORK",
"value": "string"
}
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
type | string | false | none | none |
value | string | false | none | none |
Enumerated Values
Property | Value |
---|---|
type | WORK |
type | HOME |
Attachment
Attachment
Properties
{
"data": "string",
"filename": "string",
"id": 0,
"mime-type": "string",
"preferences": {
"property1": "string",
"property2": "string"
},
"size": "string"
}
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
data | string | false | none | Base64 of file to update |
filename | string | false | none | File name |
id | integer(int32) | false | none | Attachment id |
mime-type | string | false | none | File type |
preferences | object | false | none | Hash for additional information |
» additionalProperties | string | false | none | Hash for additional information |
size | string | false | none | Size of attachment |
ChatContactIdentifier
Chat contact identifier
Properties
{
"displayName": "string",
"name": "string",
"surname": "string",
"type": "USER",
"uid": "string",
"username": "string",
"value": "string"
}
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
displayName | string | false | none | Display name |
name | string | false | none | Name |
surname | string | false | none | Surname |
type | string | false | none | Contact type |
uid | string | false | none | Uid - unique id from T4You |
username | string | false | none | If type USER - username |
value | string | false | none | Contact value if no ids are present |
Enumerated Values
Property | Value |
---|---|
type | USER |
type | SERVICE |
type | SERVICE_CODE |
type | SHORT_NUMBER |
type | EXTERNAL_ITEM |
type | EXTERNAL_ORGANIZATION |
type | PERSONAL_ITEM |
type | UNKNOWN |
type | MULTIPLE |
type | MEETING |
type | ERROR |
type | DELAYED |
type | ANONYMOUS |
ChatHistoryMessage
Chat history message
Properties
{
"agent": {
"displayName": "string",
"name": "string",
"surname": "string",
"type": "USER",
"uid": "string",
"username": "string",
"value": "string"
},
"attachment": {
"file": "string",
"fileName": "string",
"mimeType": "string"
},
"channelType": "WIDGET",
"customer": {
"displayName": "string",
"name": "string",
"surname": "string",
"type": "USER",
"uid": "string",
"username": "string",
"value": "string"
},
"id": "string",
"insertTime": "2019-08-24T14:15:22Z",
"message": "string",
"messageId": "string",
"messageType": "OPEN_SESSION",
"readTime": "2019-08-24T14:15:22Z",
"receivedTime": "2019-08-24T14:15:22Z",
"sender": "AGENT",
"service": {
"bpmProcessId": 0,
"code": "string",
"exten": "string",
"name": "string",
"registration": "DISABLED",
"type": "IVR"
},
"sessionId": "string",
"updateTime": "2019-08-24T14:15:22Z"
}
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
agent | ChatContactIdentifier | false | none | Chat contact identifier |
attachment | ChatHistoryMessageAttachment | false | none | Chat message attachment |
channelType | string | true | none | Message channel type (WIDGET or WHATSAPP_TWILIO) |
customer | ChatContactIdentifier | false | none | Chat contact identifier |
id | string | true | none | Internal id |
insertTime | string(date-time) | false | none | Message insert time |
message | string | false | none | Message |
messageId | string | true | none | Message id |
messageType | string | true | none | Message type (one of OPEN_SESSION, MESSAGE, CLOSED_SESSION |
readTime | string(date-time) | false | none | Message read time |
receivedTime | string(date-time) | false | none | Message received time |
sender | string | true | none | Message sender type (AGENT or CUSTOMER) |
service | ServiceBase | true | none | Service |
sessionId | string | true | none | Session id |
updateTime | string(date-time) | false | none | Message update time |
Enumerated Values
Property | Value |
---|---|
channelType | WIDGET |
channelType | WHATSAPP_TWILIO |
messageType | OPEN_SESSION |
messageType | MESSAGE |
messageType | CLOSED_SESSION |
sender | AGENT |
sender | CUSTOMER |
ChatHistoryMessageAttachment
Chat message attachment
Properties
{
"file": "string",
"fileName": "string",
"mimeType": "string"
}
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
file | string | false | none | Attachment file path. File can be downloaded from url: https://TVOX_IP/im/ |
fileName | string | false | none | Attachment file name |
mimeType | string | false | none | Attachment file MIME type |
ContactIdentifier
Contact identifier - used on interaction and note
Properties
{
"type": "USER",
"uid": "string",
"username": "string",
"value": "string"
}
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
type | string | false | none | Contact type |
uid | string | false | none | Uid - unique id from T4You |
username | string | false | none | If type USER - username |
value | string | false | none | Contact value if no ids are present |
Enumerated Values
Property | Value |
---|---|
type | USER |
type | SERVICE |
type | SERVICE_CODE |
type | SHORT_NUMBER |
type | EXTERNAL_ITEM |
type | EXTERNAL_ORGANIZATION |
type | PERSONAL_ITEM |
type | UNKNOWN |
type | MULTIPLE |
type | MEETING |
type | ERROR |
type | DELAYED |
type | ANONYMOUS |
ContactIdentifierWithUserInformations
Result list
Properties
{
"displayName": "string",
"email": "string",
"language": "IT",
"name": "string",
"publicUsername": "string",
"serviceCodes": [
"string"
],
"surname": "string",
"type": "USER",
"uid": "string",
"userIdMc1002": 0,
"username": "string",
"value": "string"
}
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
displayName | string | false | none | Display name |
string | false | none | none | |
language | Language | false | none | none |
name | string | false | none | none |
publicUsername | string | false | none | none |
serviceCodes | [string] | false | none | none |
surname | string | false | none | none |
type | string | false | none | Contact type |
uid | string | false | none | Uid - unique id from T4You |
userIdMc1002 | integer(int32) | false | none | none |
username | string | false | none | If type USER - username |
value | string | false | none | Contact value if no ids are present |
Enumerated Values
Property | Value |
---|---|
type | USER |
type | SERVICE |
type | SERVICE_CODE |
type | SHORT_NUMBER |
type | EXTERNAL_ITEM |
type | EXTERNAL_ORGANIZATION |
type | PERSONAL_ITEM |
type | UNKNOWN |
type | MULTIPLE |
type | MEETING |
type | ERROR |
type | DELAYED |
type | ANONYMOUS |
FileUpload
Attachments
Properties
{
"mimeType": "string",
"name": "string",
"uuid": "string"
}
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
mimeType | string | false | none | none |
name | string | false | none | none |
uuid | string | false | none | none |
GenericFile
Properties
{
"body": "string",
"name": "string",
"size": 0,
"type": "string"
}
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
body | string | false | none | none |
name | string | false | none | none |
size | integer(int64) | false | none | none |
type | string | false | none | none |
Language
Properties
"IT"
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
anonymous | string | false | none | none |
Enumerated Values
Property | Value |
---|---|
anonymous | IT |
anonymous | it_IT |
anonymous | EN |
anonymous | en_US |
anonymous | FR |
anonymous | fr_FR |
anonymous | NL |
anonymous | nl_NL |
LoginByAccessTokenRequest
Login with access token request
Properties
{
"accessToken": "string",
"version": "string"
}
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
accessToken | string | true | none | Access Token |
version | string | true | none | API version |
LoginProfile
Logged user profile
Properties
{
"accessToken": "string",
"anonymous": true,
"chatAuthToken": "string",
"chatUri": "string",
"chatUserId": "string",
"customProperties": {
"property1": {},
"property2": {}
},
"isCloudPlatform": true,
"language": "IT",
"logged": true,
"name": "string",
"profileRoles": [
"string"
],
"publicUsername": "string",
"pwdChangeable": true,
"sessionId": "string",
"status": "UNKNOWN",
"supportAuthToken": "string",
"surname": "string",
"userPermissions": [
"SUPERUSER"
],
"username": "string"
}
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
accessToken | string | true | none | Access Token |
anonymous | boolean | true | none | Anonymous user |
chatAuthToken | string | false | none | Chat auth token |
chatUri | string | false | none | Chat URI |
chatUserId | string | false | none | Chat user ID |
customProperties | object | false | none | Custom properties |
» additionalProperties | object | false | none | Custom properties |
isCloudPlatform | boolean | false | none | Is a cloud platform or a classic installation |
language | Language | false | none | none |
logged | boolean | true | none | Logged |
name | string | false | none | none |
profileRoles | [string] | false | none | User roles |
publicUsername | string | true | none | Public username |
pwdChangeable | boolean | true | none | Password changeable |
sessionId | string | true | none | Session ID |
status | string | true | none | Login status |
supportAuthToken | string | false | none | Support auth token |
surname | string | false | none | none |
userPermissions | [UserPermission] | false | none | User permissions |
username | string | true | none | Username |
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 |
LoginRequest
Login with credentials request
Properties
{
"password": "string",
"username": "string",
"version": "string"
}
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
password | string | true | none | Password |
username | string | true | none | Username |
version | string | true | none | API version |
PDCampaign
Power Dialer Campaign
The campaign can be of the following types:
- Call (property
type
= "CALL", classPDCampaign
) - Instant messaging (property
type
= "INSTANT_MESSAGING", classPDCampaignInstantMessaging
)
Properties
{
"abilitazioneId": 0,
"busyChannels": 400,
"busyChannelsType": "PRESENT",
"enabled": true,
"endDate": "2019-08-24T14:15:22Z",
"id": 0,
"lists": [
{
"enabled": true,
"listId": 0,
"priority": 0
}
],
"name": "string",
"priority": 1,
"reservedChannels": 100,
"serviceCode": "string",
"startDate": "2019-08-24T14:15:22Z",
"type": "CALL"
}
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
abilitazioneId | integer(int32) | false | none | Enable outgoing calls to which the campaign is assigned. If not specified, the global one is used. |
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. |
enabled | boolean | true | none | Campaign enabled |
endDate | string(date-time) | true | none | Campaign end date |
id | integer(int32) | true | none | Campaing id |
lists | [PDCampaignList] | false | none | Campaign lists. Not required for instant messaging campaigns |
name | string | false | none | Campaign name |
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. |
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). |
serviceCode | string | false | none | Power Dialer service for the campaign |
startDate | string(date-time) | true | none | Campaign start date |
type | string | true | none | Power Dialer Campaign type |
Enumerated Values
Property | Value |
---|---|
busyChannelsType | PRESENT |
busyChannelsType | AVAILABLE |
type | CALL |
type | INSTANT_MESSAGING |
PDCampaignInstantMessaging
Power Dialer Campaign for Instant Messaging.
Property type
must be "INSTANT_MESSAGING".
Properties
{
"abilitazioneId": 0,
"busyChannels": 400,
"busyChannelsType": "PRESENT",
"enabled": true,
"endDate": "2019-08-24T14:15:22Z",
"id": 0,
"lists": [
{
"enabled": true,
"listId": 0,
"priority": 0
}
],
"name": "string",
"priority": 1,
"reservedChannels": 100,
"serviceCode": "string",
"startDate": "2019-08-24T14:15:22Z",
"type": "CALL",
"useDefaultWhatsAppAccount": true,
"whatsAppAccountId": "string",
"whatsAppMessagesLimit": 0,
"whatsAppTemplate": "string"
}
allOf - discriminator: PDCampaign.type
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
anonymous | PDCampaign | false | none | Power Dialer Campaign The campaign can be of the following types:
|
and
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
anonymous | object | false | none | none |
» useDefaultWhatsAppAccount | boolean | false | none | Use default WhatsApp account |
» whatsAppAccountId | string | false | none | WhatsApp Account ID (only if the default is not used) |
» whatsAppMessagesLimit | integer(int32) | false | none | WhatsApp maximum limit of messages that can be sent by the campaign |
» whatsAppTemplate | string | false | none | WhatsApp Template |
PDCampaignList
Power Dialer Campaign List
Properties
{
"enabled": true,
"listId": 0,
"priority": 0
}
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
enabled | boolean | false | none | Enable the contact list for the current campaign |
listId | integer(int32) | false | none | List id |
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. |
PDCampaignRun
Power Dialer Campaign Run
Properties
{
"campaignId": 0,
"endDate": "2019-08-24T14:15:22Z",
"id": 0,
"instantMessagingEndDate": "2019-08-24T14:15:22Z",
"instantMessagingRunStatus": "DISABLE",
"instantMessagingStartDate": "2019-08-24T14:15:22Z",
"listId": 0,
"name": "string",
"runStatus": "DISABLE",
"scheduledEndDate": "2019-08-24T14:15:22Z",
"scheduledStartDate": "2019-08-24T14:15:22Z",
"startDate": "2019-08-24T14:15:22Z"
}
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
campaignId | integer(int32) | false | none | Run campaign id |
endDate | string(date-time) | false | none | Run end date |
id | integer(int32) | false | none | Run id |
instantMessagingEndDate | string(date-time) | false | none | Run instant messaging end date |
instantMessagingRunStatus | string | false | none | Power Dialer Campaign Run status |
instantMessagingStartDate | string(date-time) | false | none | Run instant messaging start date |
listId | integer(int32) | false | none | Run list id |
name | string | false | none | Run name |
runStatus | string | false | none | Power Dialer Campaign Run status |
scheduledEndDate | string(date-time) | false | none | Run scheduled end date |
scheduledStartDate | string(date-time) | false | none | Run scheduled start date |
startDate | string(date-time) | false | none | Run start date |
Enumerated Values
Property | Value |
---|---|
instantMessagingRunStatus | DISABLE |
instantMessagingRunStatus | SCHEDULED |
instantMessagingRunStatus | ACTIVE |
instantMessagingRunStatus | ACTIVE_QUEUED |
instantMessagingRunStatus | EVALUATING_RESULT |
instantMessagingRunStatus | PENDING |
instantMessagingRunStatus | STOPPING |
instantMessagingRunStatus | STOPPED |
instantMessagingRunStatus | END |
instantMessagingRunStatus | ERROR |
runStatus | DISABLE |
runStatus | SCHEDULED |
runStatus | ACTIVE |
runStatus | ACTIVE_QUEUED |
runStatus | EVALUATING_RESULT |
runStatus | PENDING |
runStatus | STOPPING |
runStatus | STOPPED |
runStatus | END |
runStatus | ERROR |
PDConf
Power Dialer general settings
Properties
{
"abilitazione": {
"descrizione": "string",
"id": 0
},
"enabled": true,
"maxChannels": 0,
"ringTimeout": 0
}
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
abilitazione | Abilitazione | false | none | Enabling for outgoing calls |
enabled | boolean | false | none | Power Dialing enabled |
maxChannels | integer(int32) | false | none | Maximum available channels |
ringTimeout | integer(int32) | false | none | Maximum ring time (seconds) |
PDContactInfo
Power Dialer List Item contact info
Properties
{
"addressbookBackendIds": [
"string"
],
"cap": "string",
"city": "string",
"company": "string",
"country": "string",
"department": "string",
"district": "string",
"id": "string",
"name": "string",
"organization": true,
"otherName": "string",
"street": "string",
"surname": "string",
"vip": true
}
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
addressbookBackendIds | [string] | false | none | List of addressbook ids in which to create or update the contact. If not specified, the addressbooks associated with the campaign service are used. |
cap | string | false | none | Contact cap |
city | string | false | none | Contact city |
company | string | false | none | Contact company (one of name, surname or company must be specified) |
country | string | false | none | Contact country |
department | string | false | none | Contact department |
district | string | false | none | Contact district |
id | string | false | none | Contact id |
name | string | false | none | Contact name (one of name, surname or company must be specified) |
organization | boolean | true | none | Contact is an organization |
otherName | string | false | none | Contact other name |
street | string | false | none | Contact street |
surname | string | false | none | Contact surname (one of name, surname or company must be specified) |
vip | boolean | true | none | Contact vip |
PDInterfaceItem
Power Dialer List Item (contact) for call channel
Properties
{
"campaignId": 0,
"contactInfo": {
"addressbookBackendIds": [
"string"
],
"cap": "string",
"city": "string",
"company": "string",
"country": "string",
"department": "string",
"district": "string",
"id": "string",
"name": "string",
"organization": true,
"otherName": "string",
"street": "string",
"surname": "string",
"vip": true
},
"data": [
"string"
],
"id": 0,
"itemNumber": 0,
"listId": 0,
"phoneNumber": "string",
"scheduledDate": "2019-08-24T14:15:22Z"
}
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
campaignId | integer(int32) | true | none | Campaign id |
contactInfo | PDContactInfo | false | none | Power Dialer List Item contact info |
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. |
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. |
listId | integer(int32) | false | none | List id |
phoneNumber | string | true | none | Item (contact) phone number |
scheduledDate | string(date-time) | false | none | Scheduled date from which the contact is to be called |
PDList
Power Dialer List
Properties
{
"busyAttempts": 0,
"busyTimeout": 0,
"cancelAttempts": 0,
"cancelTimeout": 0,
"congestionAttempts": 0,
"congestionTimeout": 0,
"id": 0,
"name": "string",
"noAnswerAttempts": 0,
"noAnswerTimeout": 0,
"tvoxClosedAttempts": 0,
"tvoxClosedTimeout": 0,
"voicemailAttempts": 0,
"voicemailEnabled": true,
"voicemailTimeout": 0
}
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
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 |
id | integer(int32) | true | none | List id |
name | string | false | none | List name |
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 |
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 |
voicemailAttempts | integer(int32) | true | none | Attempts: the contact has active an answering machine or another auto responder |
voicemailEnabled | boolean | true | none | Enable voicemail (answering machine or another auto responder) detection (AMD) |
voicemailTimeout | integer(int32) | true | none | Timeout between attempts: the contact has active an answering machine or another auto responder |
PDMcInterfaceItem
Power Dialer List Item (contact) for multi-channel
Properties
{
"campaignId": 0,
"customFields": {
"property1": "string",
"property2": "string"
},
"id": "string",
"itemContactType": "T4YOU",
"itemNumber": 0,
"templateLanguage": "IT",
"value": "string"
}
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
campaignId | integer(int32) | true | none | Campaign id |
customFields | object | false | none | Map of item (contact) custom fields for multi-channel campaigns (e.g. instant messaging). Keys must belong to the following range of strings: CUSTOM_01 , CUSTOM_02 , ..., CUSTOM_28 , CUSTOM_29 |
» additionalProperties | string | false | none | Map of item (contact) custom fields for multi-channel campaigns (e.g. instant messaging). Keys must belong to the following range of strings: CUSTOM_01 , CUSTOM_02 , ..., CUSTOM_28 , CUSTOM_29 |
id | string | true | none | Item (contact) id. If the UUID of the contact in TVox addressbook is specified, his Customer Journey will be populated with the interactions generated by the multi-channel campaign (e.g. instant messaging) |
itemContactType | string | true | none | Power Dialer List Item (contact) type between T4YOU (contact in TVox addressbook) or EXTERNAL (contact NOT in TVox addressbook) |
itemNumber | integer(int32) | true | none | Item (contact) value id. Uniquely identifies in case an item (contact) has more than one value. |
templateLanguage | Language | false | none | none |
value | string | true | none | Item (contact) value (e.g. phone number for instant messaging) |
Enumerated Values
Property | Value |
---|---|
itemContactType | T4YOU |
itemContactType | EXTERNAL |
SearchResultChatHistoryMessage
Generic search result
Properties
{
"result": [
{
"agent": {
"displayName": "string",
"name": "string",
"surname": "string",
"type": "USER",
"uid": "string",
"username": "string",
"value": "string"
},
"attachment": {
"file": "string",
"fileName": "string",
"mimeType": "string"
},
"channelType": "WIDGET",
"customer": {
"displayName": "string",
"name": "string",
"surname": "string",
"type": "USER",
"uid": "string",
"username": "string",
"value": "string"
},
"id": "string",
"insertTime": "2019-08-24T14:15:22Z",
"message": "string",
"messageId": "string",
"messageType": "OPEN_SESSION",
"readTime": "2019-08-24T14:15:22Z",
"receivedTime": "2019-08-24T14:15:22Z",
"sender": "AGENT",
"service": {
"bpmProcessId": 0,
"code": "string",
"exten": "string",
"name": "string",
"registration": "DISABLED",
"type": "IVR"
},
"sessionId": "string",
"updateTime": "2019-08-24T14:15:22Z"
}
],
"tot": 0
}
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
result | [ChatHistoryMessage] | false | none | Result list |
tot | integer(int32) | false | none | Result total size |
SearchResultContactIdentifierWithUserInformations
Generic search result
Properties
{
"result": [
{
"displayName": "string",
"email": "string",
"language": "IT",
"name": "string",
"publicUsername": "string",
"serviceCodes": [
"string"
],
"surname": "string",
"type": "USER",
"uid": "string",
"userIdMc1002": 0,
"username": "string",
"value": "string"
}
],
"tot": 0
}
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
result | [ContactIdentifierWithUserInformations] | false | none | Result list |
tot | integer(int32) | false | none | Result total size |
SearchResultPDCampaign
Generic search result
Properties
{
"result": [
{
"abilitazioneId": 0,
"busyChannels": 400,
"busyChannelsType": "PRESENT",
"enabled": true,
"endDate": "2019-08-24T14:15:22Z",
"id": 0,
"lists": [
{
"enabled": true,
"listId": 0,
"priority": 0
}
],
"name": "string",
"priority": 1,
"reservedChannels": 100,
"serviceCode": "string",
"startDate": "2019-08-24T14:15:22Z",
"type": "CALL"
}
],
"tot": 0
}
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
result | [PDCampaign] | false | none | Result list |
tot | integer(int32) | false | none | Result total size |
SearchResultPDCampaignRun
Generic search result
Properties
{
"result": [
{
"campaignId": 0,
"endDate": "2019-08-24T14:15:22Z",
"id": 0,
"instantMessagingEndDate": "2019-08-24T14:15:22Z",
"instantMessagingRunStatus": "DISABLE",
"instantMessagingStartDate": "2019-08-24T14:15:22Z",
"listId": 0,
"name": "string",
"runStatus": "DISABLE",
"scheduledEndDate": "2019-08-24T14:15:22Z",
"scheduledStartDate": "2019-08-24T14:15:22Z",
"startDate": "2019-08-24T14:15:22Z"
}
],
"tot": 0
}
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
result | [PDCampaignRun] | false | none | Result list |
tot | integer(int32) | false | none | Result total size |
SearchResultPDList
Generic search result
Properties
{
"result": [
{
"busyAttempts": 0,
"busyTimeout": 0,
"cancelAttempts": 0,
"cancelTimeout": 0,
"congestionAttempts": 0,
"congestionTimeout": 0,
"id": 0,
"name": "string",
"noAnswerAttempts": 0,
"noAnswerTimeout": 0,
"tvoxClosedAttempts": 0,
"tvoxClosedTimeout": 0,
"voicemailAttempts": 0,
"voicemailEnabled": true,
"voicemailTimeout": 0
}
],
"tot": 0
}
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
result | [PDList] | false | none | Result list |
tot | integer(int32) | false | none | Result total size |
ServiceBase
Service
Properties
{
"bpmProcessId": 0,
"code": "string",
"exten": "string",
"name": "string",
"registration": "DISABLED",
"type": "IVR"
}
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
bpmProcessId | integer(int32) | false | none | BPM process id |
code | string | false | none | Code |
exten | string | false | none | Exten |
name | string | false | none | Name |
registration | string | false | none | none |
type | ServiceType | false | none | Type |
Enumerated Values
Property | Value |
---|---|
registration | DISABLED |
registration | ENABLED |
registration | CUSTOMIZABLE |
ServiceType
Type
Properties
"IVR"
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
anonymous | string | false | none | Type |
Enumerated Values
Property | Value |
---|---|
anonymous | IVR |
anonymous | HUNT |
anonymous | CALLCENTER |
anonymous | POWER_DIALER |
anonymous | TQM |
anonymous | BPM |
SmsSendRequest
SMS send request
Properties
{
"accountId": 0,
"message": "string",
"phoneNumber": "string",
"username": "string"
}
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
accountId | integer(int32) | false | none | SMS Account id to use for sending |
message | string | true | none | Message to send in SMS |
phoneNumber | string | true | none | Phone number to send SMS |
username | string | true | none | Username of user sending SMS |
TicketAddArticleNoteRequest
Properties
{
"attachments": [
{
"mimeType": "string",
"name": "string",
"uuid": "string"
}
],
"body": "string",
"internal": true
}
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
attachments | [FileUpload] | false | none | [Attachments] |
body | string | false | none | none |
internal | boolean | false | none | none |
TicketArticle
Ticket article
Properties
{
"attachments": [
{
"data": "string",
"filename": "string",
"id": 0,
"mime-type": "string",
"preferences": {
"property1": "string",
"property2": "string"
},
"size": "string"
}
],
"body": "string",
"cc": "string",
"content_type": "string",
"created_at": "2019-08-24T14:15:22Z",
"created_by": "string",
"created_by_id": 0,
"from": "string",
"id": 0,
"in_reply_to": "string",
"internal": true,
"message_id": "string",
"message_id_md5": "string",
"origin_by": "string",
"origin_by_id": 0,
"preferences": {
"property1": {},
"property2": {}
},
"references": "string",
"reply_to": "string",
"sender": "Agent",
"sender_id": 0,
"subject": "string",
"ticket_id": 0,
"time_unit": 0,
"to": "string",
"type": "email",
"type_id": 0,
"updated_at": "2019-08-24T14:15:22Z",
"updated_by": "string",
"updated_by_id": 0
}
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
attachments | [Attachment] | false | none | Attachments |
body | string | false | none | Content of the article |
cc | string | false | none | Sender |
content_type | string | false | none | Content type |
created_at | string(date-time) | false | none | Article create date (DateTime, UTC) |
created_by | string | false | none | Who has created the article |
created_by_id | integer(int32) | false | none | Who (UserID) has created the article |
from | string | false | none | Sender address of the article |
id | integer(int32) | false | none | Article id |
in_reply_to | string | false | none | Content of reply to field |
internal | boolean | false | none | Is article visible for customer |
message_id | string | false | none | Message ID (if article was an email) |
message_id_md5 | string | false | none | Internal message id MD5 Checksum |
origin_by | string | false | none | For which real user the article creation has been done. For example the customer which was calling on the phone |
origin_by_id | integer(int32) | false | none | For which real user (UserID) the article creation has been done. For example the customer which was calling on the phone |
preferences | object | false | none | Hash for additional information |
» additionalProperties | object | false | none | Hash for additional information |
references | string | false | none | Email references header |
reply_to | string | false | none | Content of the reply to field |
sender | string | false | none | Who is the sender (Customer, Agent) |
sender_id | integer(int32) | false | none | Which type of user has created the article (Agent, Customer) |
subject | string | false | none | Article subject |
ticket_id | integer(int32) | false | none | Referencing ticket ID |
time_unit | number(float) | false | none | Time accounting on article |
to | string | false | none | Receiver |
type | string | false | none | Article type (phone, email, web…) |
type_id | integer(int32) | false | none | Article type id (phone, email, web…) |
updated_at | string(date-time) | false | none | Update time of the article (DateTime, UTC) |
updated_by | string | false | none | Who has updated the article |
updated_by_id | integer(int32) | false | none | Who (UserID) has updated the article |
Enumerated Values
Property | Value |
---|---|
sender | Agent |
sender | Customer |
sender | System |
type | |
type | sms |
type | chat |
type | fax |
type | phone |
type | twitter status |
type | twitter direct-message |
type | facebook feed post |
type | facebook feed comment |
type | note |
type | web |
type | telegram personal-message |
TicketSearchRequest
Properties
{
"context": "IVR",
"customFields": {
"property1": [
"string"
],
"property2": [
"string"
]
},
"customerId": [
"string"
],
"ownerId": [
"string"
],
"pageNumber": 0,
"pageSize": 0,
"serviceCode": [
"string"
],
"stateId": [
"string"
],
"submitterId": "string"
}
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
context | string | false | none | Ticket context |
customFields | object | false | none | Map of item (contact) custom fields. Keys must belong to the following range of strings: t_custom_01, t_custom_02, ..., t_custom_28, t_custom_29 |
» additionalProperties | [string] | false | none | Map of item (contact) custom fields. Keys must belong to the following range of strings: t_custom_01, t_custom_02, ..., t_custom_28, t_custom_29 |
customerId | [string] | false | none | Customer id |
ownerId | [string] | false | none | Owner id |
pageNumber | integer(int32) | false | none | Page number |
pageSize | integer(int32) | false | none | Page size |
serviceCode | [string] | false | none | Service code |
stateId | [string] | false | none | Ticket state id for available ticket states (new, open…) |
submitterId | string | false | none | Sender |
Enumerated Values
Property | Value |
---|---|
context | IVR |
context | SURVEY |
context | GENERIC |
context | AGENT |
context | CUSTOMER |
TicketWithCustomer
Ticket with customer
Properties
{
"article": {
"attachments": [
{
"data": "string",
"filename": "string",
"id": 0,
"mime-type": "string",
"preferences": {
"property1": "string",
"property2": "string"
},
"size": "string"
}
],
"body": "string",
"cc": "string",
"content_type": "string",
"created_at": "2019-08-24T14:15:22Z",
"created_by": "string",
"created_by_id": 0,
"from": "string",
"id": 0,
"in_reply_to": "string",
"internal": true,
"message_id": "string",
"message_id_md5": "string",
"origin_by": "string",
"origin_by_id": 0,
"preferences": {
"property1": {},
"property2": {}
},
"references": "string",
"reply_to": "string",
"sender": "Agent",
"sender_id": 0,
"subject": "string",
"ticket_id": 0,
"time_unit": 0,
"to": "string",
"type": "email",
"type_id": 0,
"updated_at": "2019-08-24T14:15:22Z",
"updated_by": "string",
"updated_by_id": 0
},
"article_count": 0,
"article_ids": [
0
],
"articles": [
{
"attachments": [
{
"data": "string",
"filename": "string",
"id": 0,
"mime-type": "string",
"preferences": {
"property1": "string",
"property2": "string"
},
"size": "string"
}
],
"body": "string",
"cc": "string",
"content_type": "string",
"created_at": "2019-08-24T14:15:22Z",
"created_by": "string",
"created_by_id": 0,
"from": "string",
"id": 0,
"in_reply_to": "string",
"internal": true,
"message_id": "string",
"message_id_md5": "string",
"origin_by": "string",
"origin_by_id": 0,
"preferences": {
"property1": {},
"property2": {}
},
"references": "string",
"reply_to": "string",
"sender": "Agent",
"sender_id": 0,
"subject": "string",
"ticket_id": 0,
"time_unit": 0,
"to": "string",
"type": "email",
"type_id": 0,
"updated_at": "2019-08-24T14:15:22Z",
"updated_by": "string",
"updated_by_id": 0
}
],
"attachments": [
{
"mimeType": "string",
"name": "string",
"uuid": "string"
}
],
"close_at": "2019-08-24T14:15:22Z",
"close_diff_in_min": 0,
"close_escalation_at": "2019-08-24T14:15:22Z",
"close_in_min": 0,
"create_article_sender": "string",
"create_article_sender_id": 0,
"create_article_type": "string",
"create_article_type_id": 0,
"created_at": "2019-08-24T14:15:22Z",
"created_by": "string",
"created_by_id": 0,
"customer": "string",
"customerContact": {
"type": "USER",
"uid": "string",
"username": "string",
"value": "string"
},
"customer_id": "string",
"escalation_at": "2019-08-24T14:15:22Z",
"first_response_at": "2019-08-24T14:15:22Z",
"first_response_diff_in_min": 0,
"first_response_escalation_at": "2019-08-24T14:15:22Z",
"first_response_in_min": 0,
"group": "string",
"group_id": 0,
"id": 0,
"last_contact_agent_at": "2019-08-24T14:15:22Z",
"last_contact_at": "2019-08-24T14:15:22Z",
"last_contact_customer_at": "2019-08-24T14:15:22Z",
"last_owner_update_at": "2019-08-24T14:15:22Z",
"note": "string",
"number": "string",
"organization": "string",
"organization_id": 0,
"owner": "string",
"ownerContact": {
"type": "USER",
"uid": "string",
"username": "string",
"value": "string"
},
"owner_id": 0,
"pending_time": "2019-08-24T14:15:22Z",
"priority": "1 low",
"priority_id": 0,
"state": "new",
"state_id": 0,
"t_agent_close_date": "2019-08-24T14:15:22Z",
"t_agent_get_date": "2019-08-24T14:15:22Z",
"t_call_link": "string",
"t_create_call_uid": "string",
"t_custom_01": "string",
"t_custom_02": "string",
"t_custom_03": "string",
"t_custom_04": "string",
"t_custom_05": "string",
"t_custom_06": "string",
"t_custom_07": "string",
"t_custom_08": "string",
"t_custom_09": "string",
"t_custom_10": "string",
"t_custom_11": "string",
"t_custom_12": "string",
"t_custom_13": "string",
"t_custom_14": "string",
"t_custom_15": "string",
"t_custom_16": "string",
"t_custom_17": "string",
"t_custom_18": "string",
"t_custom_19": "string",
"t_custom_20": "string",
"t_custom_21": "string",
"t_custom_22": "string",
"t_custom_23": "string",
"t_custom_24": "string",
"t_custom_25": "string",
"t_custom_26": "string",
"t_custom_27": "string",
"t_custom_28": "string",
"t_custom_29": "string",
"t_custom_30": "string",
"t_custom_31": "string",
"t_custom_32": "string",
"t_custom_33": "string",
"t_custom_34": "string",
"t_custom_35": "string",
"t_custom_36": "string",
"t_custom_37": "string",
"t_custom_38": "string",
"t_custom_39": "string",
"t_custom_40": "string",
"t_custom_41": "string",
"t_custom_42": "string",
"t_custom_43": "string",
"t_custom_44": "string",
"t_custom_45": "string",
"t_custom_46": "string",
"t_custom_47": "string",
"t_custom_48": "string",
"t_custom_49": "string",
"t_custom_50": "string",
"t_custom_51": "string",
"t_custom_52": "string",
"t_custom_53": "string",
"t_custom_54": "string",
"t_custom_55": "string",
"t_custom_56": "string",
"t_custom_57": "string",
"t_custom_58": "string",
"t_custom_59": "string",
"t_custom_60": "string",
"t_custom_61": "string",
"t_custom_62": "string",
"t_custom_63": "string",
"t_custom_64": "string",
"t_custom_65": "string",
"t_custom_66": "string",
"t_custom_67": "string",
"t_custom_68": "string",
"t_custom_69": "string",
"t_custom_70": "string",
"t_custom_71": "string",
"t_custom_72": "string",
"t_custom_73": "string",
"t_custom_74": "string",
"t_custom_75": "string",
"t_custom_76": "string",
"t_custom_77": "string",
"t_custom_78": "string",
"t_custom_79": "string",
"t_custom_80": "string",
"t_custom_81": "string",
"t_custom_82": "string",
"t_custom_83": "string",
"t_custom_84": "string",
"t_custom_85": "string",
"t_custom_86": "string",
"t_custom_87": "string",
"t_custom_88": "string",
"t_custom_89": "string",
"t_custom_90": "string",
"t_custom_91": "string",
"t_custom_92": "string",
"t_custom_93": "string",
"t_custom_94": "string",
"t_custom_95": "string",
"t_custom_96": "string",
"t_custom_97": "string",
"t_custom_98": "string",
"t_custom_99": "string",
"t_custom_date_01": "2019-08-24T14:15:22Z",
"t_custom_date_02": "2019-08-24T14:15:22Z",
"t_custom_date_03": "2019-08-24T14:15:22Z",
"t_custom_date_04": "2019-08-24T14:15:22Z",
"t_custom_date_05": "2019-08-24T14:15:22Z",
"t_custom_date_06": "2019-08-24T14:15:22Z",
"t_custom_date_07": "2019-08-24T14:15:22Z",
"t_custom_date_08": "2019-08-24T14:15:22Z",
"t_custom_date_09": "2019-08-24T14:15:22Z",
"t_custom_date_10": "2019-08-24T14:15:22Z",
"t_custom_date_11": "2019-08-24T14:15:22Z",
"t_custom_date_12": "2019-08-24T14:15:22Z",
"t_custom_date_13": "2019-08-24T14:15:22Z",
"t_custom_date_14": "2019-08-24T14:15:22Z",
"t_custom_date_15": "2019-08-24T14:15:22Z",
"t_custom_date_16": "2019-08-24T14:15:22Z",
"t_custom_date_17": "2019-08-24T14:15:22Z",
"t_custom_date_18": "2019-08-24T14:15:22Z",
"t_custom_date_19": "2019-08-24T14:15:22Z",
"t_custom_date_20": "2019-08-24T14:15:22Z",
"t_custom_date_21": "2019-08-24T14:15:22Z",
"t_custom_date_22": "2019-08-24T14:15:22Z",
"t_custom_date_23": "2019-08-24T14:15:22Z",
"t_custom_date_24": "2019-08-24T14:15:22Z",
"t_custom_date_25": "2019-08-24T14:15:22Z",
"t_custom_date_26": "2019-08-24T14:15:22Z",
"t_custom_date_27": "2019-08-24T14:15:22Z",
"t_custom_date_28": "2019-08-24T14:15:22Z",
"t_custom_date_29": "2019-08-24T14:15:22Z",
"t_custom_date_30": "2019-08-24T14:15:22Z",
"t_custom_date_31": "2019-08-24T14:15:22Z",
"t_custom_date_32": "2019-08-24T14:15:22Z",
"t_custom_date_33": "2019-08-24T14:15:22Z",
"t_custom_date_34": "2019-08-24T14:15:22Z",
"t_custom_date_35": "2019-08-24T14:15:22Z",
"t_custom_date_36": "2019-08-24T14:15:22Z",
"t_custom_date_37": "2019-08-24T14:15:22Z",
"t_custom_date_38": "2019-08-24T14:15:22Z",
"t_custom_date_39": "2019-08-24T14:15:22Z",
"t_custom_date_40": "2019-08-24T14:15:22Z",
"t_custom_date_41": "2019-08-24T14:15:22Z",
"t_custom_date_42": "2019-08-24T14:15:22Z",
"t_custom_date_43": "2019-08-24T14:15:22Z",
"t_custom_date_44": "2019-08-24T14:15:22Z",
"t_custom_date_45": "2019-08-24T14:15:22Z",
"t_custom_date_46": "2019-08-24T14:15:22Z",
"t_custom_date_47": "2019-08-24T14:15:22Z",
"t_custom_date_48": "2019-08-24T14:15:22Z",
"t_custom_date_49": "2019-08-24T14:15:22Z",
"t_external_ticketing_add": true,
"t_external_ticketing_link": "string",
"t_forgot_article_count": 0,
"t_forgot_time_unit": 0,
"t_is_child_link": true,
"t_is_forgot_ticket": true,
"t_is_normal_link": true,
"t_is_parent_link": true,
"t_is_view_by_owner": true,
"t_knowledge_base_answer_link": "string",
"t_knowledge_base_answer_uid": "string",
"t_knowledge_base_category_link": "string",
"t_knowledge_base_category_uid": "string",
"t_knowledge_base_id_answer": "string",
"t_knowledge_base_id_category": "string",
"t_last_link_child_update": "string",
"t_last_link_normal_update": "string",
"t_last_link_with": "string",
"t_last_merge_with": "string",
"t_last_owner_view_at": "2019-08-24T14:15:22Z",
"t_queue_type": "string",
"t_reminder_cp_last_time": "2019-08-24T14:15:22Z",
"t_reminder_cp_num": 0,
"t_reminder_tk_last_time": "2019-08-24T14:15:22Z",
"t_reminder_tk_num": 0,
"t_reminder_tk_src": "string",
"t_self_generated_ticket_call_final_state": "string",
"t_self_generated_ticket_type": "string",
"t_state_last_update": "2019-08-24T14:15:22Z",
"ticket_time_accounting": [
"string"
],
"ticket_time_accounting_ids": [
0
],
"time_unit": 0,
"title": "string",
"type": "string",
"update_diff_in_min": 0,
"update_escalation_at": "2019-08-24T14:15:22Z",
"update_in_min": 0,
"updated_at": "2019-08-24T14:15:22Z",
"updated_by": "string",
"updated_by_id": 0
}
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
article | TicketArticle | false | none | Ticket article |
article_count | integer(int32) | false | none | Count of articles |
article_ids | [integer] | false | none | Articles' ids |
articles | [TicketArticle] | false | none | Articles |
attachments | [FileUpload] | false | none | Attachments |
close_at | string(date-time) | false | none | First close time, after create |
close_diff_in_min | integer(int32) | false | none | Business hours in minutes within or above the specified SLA for closing the ticket |
close_escalation_at | string(date-time) | false | none | Time stamp of the escalation if the SLA of the closing time has been violated. (DateTime, UTC) |
close_in_min | integer(int32) | false | none | Business hours in minutes it took to close the ticket |
create_article_sender | string | false | none | Who has created the first article (Agent,Customer) |
create_article_sender_id | integer(int32) | false | none | Sender id of the first article (Agent |
create_article_type | string | false | none | Article type for the first article (note, email, phone…) |
create_article_type_id | integer(int32) | false | none | Article type ID for the first article (note, email, phone…) |
created_at | string(date-time) | false | none | Created timestamp (DateTime, UTC) |
created_by | string | false | none | User details of the user who created the ticket |
created_by_id | integer(int32) | false | none | User id of user who created the ticket |
customer | string | false | none | Customer details |
customerContact | ContactIdentifier | true | none | Contact identifier - used on interaction and note |
customer_id | string | false | none | User id of the current customer (assigned to ticket) |
escalation_at | string(date-time) | false | none | Next first escalation date (nearest close_escalation_at, first_response_escalation_at or update_escalation_at (DateTime, UTC) |
first_response_at | string(date-time) | false | none | Time stamp of the first reaction to the customer (DateTime, UTC) |
first_response_diff_in_min | integer(int32) | false | none | Business hours in minutes within or above the specified SLA for the first reaction to the customer |
first_response_escalation_at | string(date-time) | false | none | Time stamp of the escalation if the SLA of the first reaction time has been violated. (DateTime, UTC) |
first_response_in_min | integer(int32) | false | none | Business hours in minutes it took to send inital response to customer |
group | string | false | none | Current ticket group (Sales, Support…) |
group_id | integer(int32) | false | none | Current ticket group id |
id | integer(int32) | false | none | Ticket id |
last_contact_agent_at | string(date-time) | false | none | Last contact to customer from agent, timestamp (DateTime, UTC) |
last_contact_at | string(date-time) | false | none | Last contact timestamp (DateTime, UTC) |
last_contact_customer_at | string(date-time) | false | none | Last contact from a customer, timestamp (DateTime, UTC) |
last_owner_update_at | string(date-time) | false | none | Last owner update |
note | string | false | none | Internal note for ticket |
number | string | false | none | The unique ticket number |
organization | string | false | none | Name of the organization of a given customer |
organization_id | integer(int32) | false | none | Id of the organization of a given customer |
owner | string | false | none | Current owner (agent) |
ownerContact | ContactIdentifier | false | none | Contact identifier - used on interaction and note |
owner_id | integer(int32) | false | none | User id of owner |
pending_time | string(date-time) | false | none | Current pending time (DateTime, UTC) |
priority | string | false | none | Ticket priority |
priority_id | integer(int32) | false | none | ID of the currently set priority |
state | string | false | none | Ticket state (new, open…) |
state_id | integer(int32) | false | none | Ticket state id for available ticket states (new, open…) |
t_agent_close_date | string(date-time) | false | none | Date an agent closed the ticket (yyyy-MM-dd'T'HH:mm:ss.SSSXXX ) |
t_agent_get_date | string(date-time) | false | none | Date an agent took charge of the ticket (yyyy-MM-dd'T'HH:mm:ss.SSSXXX ) |
t_call_link | string | false | none | Link of the call associated with the ticket |
t_create_call_uid | string | false | none | In ticket of type call: TVox call Id of the call that generated the ticket |
t_custom_01 | string | false | none | Telenia custom text field 1 |
t_custom_02 | string | false | none | Telenia custom text field 2 |
t_custom_03 | string | false | none | Telenia custom text field 3 |
t_custom_04 | string | false | none | Telenia custom text field 4 |
t_custom_05 | string | false | none | Telenia custom text field 5 |
t_custom_06 | string | false | none | Telenia custom text field 6 |
t_custom_07 | string | false | none | Telenia custom text field 7 |
t_custom_08 | string | false | none | Telenia custom text field 8 |
t_custom_09 | string | false | none | Telenia custom text field 9 |
t_custom_10 | string | false | none | Telenia custom text field 10 |
t_custom_11 | string | false | none | Telenia custom text field 11 |
t_custom_12 | string | false | none | Telenia custom text field 12 |
t_custom_13 | string | false | none | Telenia custom text field 13 |
t_custom_14 | string | false | none | Telenia custom text field 14 |
t_custom_15 | string | false | none | Telenia custom text field 15 |
t_custom_16 | string | false | none | Telenia custom text field 16 |
t_custom_17 | string | false | none | Telenia custom text field 17 |
t_custom_18 | string | false | none | Telenia custom text field 18 |
t_custom_19 | string | false | none | Telenia custom text field 19 |
t_custom_20 | string | false | none | Telenia custom text field 20 |
t_custom_21 | string | false | none | Telenia custom text field 21 |
t_custom_22 | string | false | none | Telenia custom text field 22 |
t_custom_23 | string | false | none | Telenia custom text field 23 |
t_custom_24 | string | false | none | Telenia custom text field 24 |
t_custom_25 | string | false | none | Telenia custom text field 25 |
t_custom_26 | string | false | none | Telenia custom text field 26 |
t_custom_27 | string | false | none | Telenia custom text field 27 |
t_custom_28 | string | false | none | Telenia custom text field 28 |
t_custom_29 | string | false | none | Telenia custom text field 29 |
t_custom_30 | string | false | none | Telenia custom text field 30 |
t_custom_31 | string | false | none | Telenia custom text field 31 |
t_custom_32 | string | false | none | Telenia custom text field 32 |
t_custom_33 | string | false | none | Telenia custom text field 33 |
t_custom_34 | string | false | none | Telenia custom text field 34 |
t_custom_35 | string | false | none | Telenia custom text field 35 |
t_custom_36 | string | false | none | Telenia custom text field 36 |
t_custom_37 | string | false | none | Telenia custom text field 37 |
t_custom_38 | string | false | none | Telenia custom text field 38 |
t_custom_39 | string | false | none | Telenia custom text field 39 |
t_custom_40 | string | false | none | Telenia custom text field 40 |
t_custom_41 | string | false | none | Telenia custom text field 41 |
t_custom_42 | string | false | none | Telenia custom text field 42 |
t_custom_43 | string | false | none | Telenia custom text field 43 |
t_custom_44 | string | false | none | Telenia custom text field 44 |
t_custom_45 | string | false | none | Telenia custom text field 45 |
t_custom_46 | string | false | none | Telenia custom text field 46 |
t_custom_47 | string | false | none | Telenia custom text field 47 |
t_custom_48 | string | false | none | Telenia custom text field 48 |
t_custom_49 | string | false | none | Telenia custom text field 49 |
t_custom_50 | string | false | none | Telenia custom text field 50 |
t_custom_51 | string | false | none | Telenia custom text field 51 |
t_custom_52 | string | false | none | Telenia custom text field 52 |
t_custom_53 | string | false | none | Telenia custom text field 53 |
t_custom_54 | string | false | none | Telenia custom text field 54 |
t_custom_55 | string | false | none | Telenia custom text field 55 |
t_custom_56 | string | false | none | Telenia custom text field 56 |
t_custom_57 | string | false | none | Telenia custom text field 57 |
t_custom_58 | string | false | none | Telenia custom text field 58 |
t_custom_59 | string | false | none | Telenia custom text field 59 |
t_custom_60 | string | false | none | Telenia custom text field 60 |
t_custom_61 | string | false | none | Telenia custom text field 61 |
t_custom_62 | string | false | none | Telenia custom text field 62 |
t_custom_63 | string | false | none | Telenia custom text field 63 |
t_custom_64 | string | false | none | Telenia custom text field 64 |
t_custom_65 | string | false | none | Telenia custom text field 65 |
t_custom_66 | string | false | none | Telenia custom text field 66 |
t_custom_67 | string | false | none | Telenia custom text field 67 |
t_custom_68 | string | false | none | Telenia custom text field 68 |
t_custom_69 | string | false | none | Telenia custom text field 69 |
t_custom_70 | string | false | none | Telenia custom text field 70 |
t_custom_71 | string | false | none | Telenia custom text field 71 |
t_custom_72 | string | false | none | Telenia custom text field 72 |
t_custom_73 | string | false | none | Telenia custom text field 73 |
t_custom_74 | string | false | none | Telenia custom text field 74 |
t_custom_75 | string | false | none | Telenia custom text field 75 |
t_custom_76 | string | false | none | Telenia custom text field 76 |
t_custom_77 | string | false | none | Telenia custom text field 77 |
t_custom_78 | string | false | none | Telenia custom text field 78 |
t_custom_79 | string | false | none | Telenia custom text field 79 |
t_custom_80 | string | false | none | Telenia custom text field 80 |
t_custom_81 | string | false | none | Telenia custom text field 81 |
t_custom_82 | string | false | none | Telenia custom text field 82 |
t_custom_83 | string | false | none | Telenia custom text field 83 |
t_custom_84 | string | false | none | Telenia custom text field 84 |
t_custom_85 | string | false | none | Telenia custom text field 85 |
t_custom_86 | string | false | none | Telenia custom text field 86 |
t_custom_87 | string | false | none | Telenia custom text field 87 |
t_custom_88 | string | false | none | Telenia custom text field 88 |
t_custom_89 | string | false | none | Telenia custom text field 89 |
t_custom_90 | string | false | none | Telenia custom text field 90 |
t_custom_91 | string | false | none | Telenia custom text field 91 |
t_custom_92 | string | false | none | Telenia custom text field 92 |
t_custom_93 | string | false | none | Telenia custom text field 93 |
t_custom_94 | string | false | none | Telenia custom text field 94 |
t_custom_95 | string | false | none | Telenia custom text field 95 |
t_custom_96 | string | false | none | Telenia custom text field 96 |
t_custom_97 | string | false | none | Telenia custom text field 97 |
t_custom_98 | string | false | none | Telenia custom text field 98 |
t_custom_99 | string | false | none | Telenia custom text field 99 |
t_custom_date_01 | string(date-time) | false | none | Telenia custom date field 1 (yyyy-MM-dd'T'HH:mm:ss.SSSXXX ) |
t_custom_date_02 | string(date-time) | false | none | Telenia custom date field 2 (yyyy-MM-dd'T'HH:mm:ss.SSSXXX ) |
t_custom_date_03 | string(date-time) | false | none | Telenia custom date field 3 (yyyy-MM-dd'T'HH:mm:ss.SSSXXX ) |
t_custom_date_04 | string(date-time) | false | none | Telenia custom date field 4 (yyyy-MM-dd'T'HH:mm:ss.SSSXXX ) |
t_custom_date_05 | string(date-time) | false | none | Telenia custom date field 5 (yyyy-MM-dd'T'HH:mm:ss.SSSXXX ) |
t_custom_date_06 | string(date-time) | false | none | Telenia custom date field 6 (yyyy-MM-dd'T'HH:mm:ss.SSSXXX ) |
t_custom_date_07 | string(date-time) | false | none | Telenia custom date field 7 (yyyy-MM-dd'T'HH:mm:ss.SSSXXX ) |
t_custom_date_08 | string(date-time) | false | none | Telenia custom date field 8 (yyyy-MM-dd'T'HH:mm:ss.SSSXXX ) |
t_custom_date_09 | string(date-time) | false | none | Telenia custom date field 9 (yyyy-MM-dd'T'HH:mm:ss.SSSXXX ) |
t_custom_date_10 | string(date-time) | false | none | Telenia custom date field 10 (yyyy-MM-dd'T'HH:mm:ss.SSSXXX ) |
t_custom_date_11 | string(date-time) | false | none | Telenia custom date field 11 (yyyy-MM-dd'T'HH:mm:ss.SSSXXX ) |
t_custom_date_12 | string(date-time) | false | none | Telenia custom date field 12 (yyyy-MM-dd'T'HH:mm:ss.SSSXXX ) |
t_custom_date_13 | string(date-time) | false | none | Telenia custom date field 13 (yyyy-MM-dd'T'HH:mm:ss.SSSXXX ) |
t_custom_date_14 | string(date-time) | false | none | Telenia custom date field 14 (yyyy-MM-dd'T'HH:mm:ss.SSSXXX ) |
t_custom_date_15 | string(date-time) | false | none | Telenia custom date field 15 (yyyy-MM-dd'T'HH:mm:ss.SSSXXX ) |
t_custom_date_16 | string(date-time) | false | none | Telenia custom date field 16 (yyyy-MM-dd'T'HH:mm:ss.SSSXXX ) |
t_custom_date_17 | string(date-time) | false | none | Telenia custom date field 17 (yyyy-MM-dd'T'HH:mm:ss.SSSXXX ) |
t_custom_date_18 | string(date-time) | false | none | Telenia custom date field 18 (yyyy-MM-dd'T'HH:mm:ss.SSSXXX ) |
t_custom_date_19 | string(date-time) | false | none | Telenia custom date field 19 (yyyy-MM-dd'T'HH:mm:ss.SSSXXX ) |
t_custom_date_20 | string(date-time) | false | none | Telenia custom date field 20 (yyyy-MM-dd'T'HH:mm:ss.SSSXXX ) |
t_custom_date_21 | string(date-time) | false | none | Telenia custom date field 21 (yyyy-MM-dd'T'HH:mm:ss.SSSXXX ) |
t_custom_date_22 | string(date-time) | false | none | Telenia custom date field 22 (yyyy-MM-dd'T'HH:mm:ss.SSSXXX ) |
t_custom_date_23 | string(date-time) | false | none | Telenia custom date field 23 (yyyy-MM-dd'T'HH:mm:ss.SSSXXX ) |
t_custom_date_24 | string(date-time) | false | none | Telenia custom date field 24 (yyyy-MM-dd'T'HH:mm:ss.SSSXXX ) |
t_custom_date_25 | string(date-time) | false | none | Telenia custom date field 25 (yyyy-MM-dd'T'HH:mm:ss.SSSXXX ) |
t_custom_date_26 | string(date-time) | false | none | Telenia custom date field 26 (yyyy-MM-dd'T'HH:mm:ss.SSSXXX ) |
t_custom_date_27 | string(date-time) | false | none | Telenia custom date field 27 (yyyy-MM-dd'T'HH:mm:ss.SSSXXX ) |
t_custom_date_28 | string(date-time) | false | none | Telenia custom date field 28 (yyyy-MM-dd'T'HH:mm:ss.SSSXXX ) |
t_custom_date_29 | string(date-time) | false | none | Telenia custom date field 29 (yyyy-MM-dd'T'HH:mm:ss.SSSXXX ) |
t_custom_date_30 | string(date-time) | false | none | Telenia custom date field 30 (yyyy-MM-dd'T'HH:mm:ss.SSSXXX ) |
t_custom_date_31 | string(date-time) | false | none | Telenia custom date field 31 (yyyy-MM-dd'T'HH:mm:ss.SSSXXX ) |
t_custom_date_32 | string(date-time) | false | none | Telenia custom date field 32 (yyyy-MM-dd'T'HH:mm:ss.SSSXXX ) |
t_custom_date_33 | string(date-time) | false | none | Telenia custom date field 33 (yyyy-MM-dd'T'HH:mm:ss.SSSXXX ) |
t_custom_date_34 | string(date-time) | false | none | Telenia custom date field 34 (yyyy-MM-dd'T'HH:mm:ss.SSSXXX ) |
t_custom_date_35 | string(date-time) | false | none | Telenia custom date field 35 (yyyy-MM-dd'T'HH:mm:ss.SSSXXX ) |
t_custom_date_36 | string(date-time) | false | none | Telenia custom date field 36 (yyyy-MM-dd'T'HH:mm:ss.SSSXXX ) |
t_custom_date_37 | string(date-time) | false | none | Telenia custom date field 37 (yyyy-MM-dd'T'HH:mm:ss.SSSXXX ) |
t_custom_date_38 | string(date-time) | false | none | Telenia custom date field 38 (yyyy-MM-dd'T'HH:mm:ss.SSSXXX ) |
t_custom_date_39 | string(date-time) | false | none | Telenia custom date field 39 (yyyy-MM-dd'T'HH:mm:ss.SSSXXX ) |
t_custom_date_40 | string(date-time) | false | none | Telenia custom date field 40 (yyyy-MM-dd'T'HH:mm:ss.SSSXXX ) |
t_custom_date_41 | string(date-time) | false | none | Telenia custom date field 41 (yyyy-MM-dd'T'HH:mm:ss.SSSXXX ) |
t_custom_date_42 | string(date-time) | false | none | Telenia custom date field 42 (yyyy-MM-dd'T'HH:mm:ss.SSSXXX ) |
t_custom_date_43 | string(date-time) | false | none | Telenia custom date field 43 (yyyy-MM-dd'T'HH:mm:ss.SSSXXX ) |
t_custom_date_44 | string(date-time) | false | none | Telenia custom date field 44 (yyyy-MM-dd'T'HH:mm:ss.SSSXXX ) |
t_custom_date_45 | string(date-time) | false | none | Telenia custom date field 45 (yyyy-MM-dd'T'HH:mm:ss.SSSXXX ) |
t_custom_date_46 | string(date-time) | false | none | Telenia custom date field 46 (yyyy-MM-dd'T'HH:mm:ss.SSSXXX ) |
t_custom_date_47 | string(date-time) | false | none | Telenia custom date field 47 (yyyy-MM-dd'T'HH:mm:ss.SSSXXX ) |
t_custom_date_48 | string(date-time) | false | none | Telenia custom date field 48 (yyyy-MM-dd'T'HH:mm:ss.SSSXXX ) |
t_custom_date_49 | string(date-time) | false | none | Telenia custom date field 49 (yyyy-MM-dd'T'HH:mm:ss.SSSXXX ) |
t_external_ticketing_add | boolean | false | none | Enable ADD to external ticketing (SuiteCRM) |
t_external_ticketing_link | string | false | none | Link to ticket on External ticketing (SuiteCRM) |
t_forgot_article_count | integer(int32) | false | none | Copy of article count before "Oblio" procedure |
t_forgot_time_unit | integer(int32) | false | none | Copy of time_unit*100 before "Oblio" procedure |
t_is_child_link | boolean | false | none | Indicates whether the ticket is linked as a child of another ticket |
t_is_forgot_ticket | boolean | false | none | Field to flag if the ticket is forgotten by "Oblio" |
t_is_normal_link | boolean | false | none | Indicates whether the ticket is linked as a normal of another ticket |
t_is_parent_link | boolean | false | none | Indicates whether the ticket is linked as the parent of another ticket |
t_is_view_by_owner | boolean | false | none | Flag to mark ticket as view by owner |
t_knowledge_base_answer_link | string | false | none | Link to the KnowledgeBase response associated with the ticket |
t_knowledge_base_answer_uid | string | false | none | uid of the KnowledgeBase response associated with the ticket |
t_knowledge_base_category_link | string | false | none | Link of the KnowledgeBase category associated with the ticket |
t_knowledge_base_category_uid | string | false | none | uid of the KnowledgeBase category associated with the ticket |
t_knowledge_base_id_answer | string | false | none | Knowledge Base Id for the answer associated with the ticket |
t_knowledge_base_id_category | string | false | none | Knowledge Base Id for the category associated with the ticket |
t_last_link_child_update | string | false | none | Indicates the number of the last child ticket that has undergone changes |
t_last_link_normal_update | string | false | none | Indicates the number of the last related ticket that has undergone changes |
t_last_link_with | string | false | none | Ticket number with which the last link was executed/canceled |
t_last_merge_with | string | false | none | Ticket number with which the last merge was performed |
t_last_owner_view_at | string(date-time) | false | none | Last owner view of ticket (yyyy-MM-dd'T'HH:mm:ss.SSSXXX ) |
t_queue_type | string | false | none | Queue type ACD or PICKUP |
t_reminder_cp_last_time | string(date-time) | false | none | Datetime of last reminder from Customer Portal (yyyy-MM-dd'T'HH:mm:ss.SSSXXX ) |
t_reminder_cp_num | integer(int32) | false | none | Number of reminder from Customer Portal |
t_reminder_tk_last_time | string(date-time) | false | none | Datetime of last reminder from Call/Ticket (yyyy-MM-dd'T'HH:mm:ss.SSSXXX ) |
t_reminder_tk_num | integer(int32) | false | none | Number of reminder by ticket ( ticket generati da chiamata o altri ticket) |
t_reminder_tk_src | string | false | none | Numero e id del ticket di cui il ticket funge da sollecito nel fomrmato [num_id] |
t_self_generated_ticket_call_final_state | string | false | none | Final state of call that generated ticket. |
t_self_generated_ticket_type | string | false | none | Type of self generated ticket. Valori possibili: null (default) = non è un autogenerato (ticket classico), R_CALL = Reminder by CALL, R_CP = Reminder by CP, R_AGENT = Reminder by Agent, R_NS = Ticket non significativo |
t_state_last_update | string(date-time) | false | none | Datetime of last state update (yyyy-MM-dd'T'HH:mm:ss.SSSXXX ) |
ticket_time_accounting | [string] | false | none | Ticket time accounting |
ticket_time_accounting_ids | [integer] | false | none | Ticket time accounting ids |
time_unit | number(float) | false | none | Accounted time units for this ticket |
title | string | false | none | Ticket title |
type | string | false | none | Ticket Type (deprecated) |
update_diff_in_min | integer(int32) | false | none | Business hours in minutes within or above the specified SLA for updating the ticket |
update_escalation_at | string(date-time) | false | none | Time stamp of the last update reaction to the customer (DateTime, UTC) |
update_in_min | integer(int32) | false | none | Business hours in minutes it took to send the last update response to customer |
updated_at | string(date-time) | false | none | Last update timestamp (DateTime, UTC) |
updated_by | string | false | none | User who updated the ticket |
updated_by_id | integer(int32) | false | none | User id of user who updated the ticket |
Enumerated Values
Property | Value |
---|---|
priority | 1 low |
priority | 2 normal |
priority | 3 high |
state | new |
state | open |
state | pending reminder |
state | closed |
state | merged |
state | removed |
state | pending close |
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 | LIVE_HELP_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 |
anonymous | REPORT_MULTICHANNEL_AGENT |
anonymous | TVOX_UPGRADE |
anonymous | INSIGHT |
anonymous | SYSTEM_MONITOR |
anonymous | BPMN |
anonymous | CUSTOMER_PORTAL_ADMIN |
anonymous | CDR |
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