Sinch Contact Center Restful Configuration Interface (RCI) API documentation version v1
http://localhost:8080/RI/rci
Description
This interface provides restricted configuration interface for Sinch Contact Center.
Request Header Data Requirements
To GET JSON response, the request must have "Accept = application/json" header.
To GET XML response, the request should have "Accept = application/xml" header.
To POST/PUT JSON data, the request must have "Content-Type = application/json" header.
To POST/PUT XML data, the request should have "Content-Type = application/xml" header.
POST should also have "Accept = text/html" header. It returns the ID of the created object.
PUT and DELETE do not have any response, instead they return code 201 (No Content).
/users
Collection of users.
Get a list of users.
Add a new user.
get /users
Get a list of users.
Query Parameters
- any fields: (string)
&field1=value1&field2=value2...
Values may contain patterns * and ?
Valid searchable fields: firstName, surname, externalId, chatName, chat, email, phoneExample:
firstName=John
- sort: (string)
Can be sorted by any field. Default sort is firstName, surname, externalId, chatName, chat, email, phone. "-" in front of field name will sort descending. With the postfix ",LOCALE-xx" where xx can be for example en,en-US,de,fi, the user may sort with given locale that are based on standard "IETF BCP 47".
Example:
sort=firstName, surname, externalId, chatName, chat, email, phone,LOCALE-en
- offset: (integer - default: 0)
Skip over a number of elements by specifying an offset value for the query
Example:
20
- limit: (integer - default: 100)
Limit number of elements by specifying a limit value for the query
Example:
100
HTTP status code 200
Body
Media type: application/json
Type: array of object
Items: users
- id: required(string - minLength: 32 - maxLength: 32)
Added by the system
- firstName: required(string - minLength: 1 - maxLength: 400)
- surname: required(string - minLength: 1 - maxLength: 400)
Example:
[
{
"id": "E936C474B22311D38FBE0090279A922E",
"firstName": "John",
"surname": "Fox"
// + all fields used in query parameter
},
{
"id": "40ECCFBFAEA24FEDA90A3347E9BC26E7",
"firstName": "David",
"surname": "Duck"
// + all fields used in query parameter
},
{
"id": "DC76CDDC340B43C291932428B6039AA6",
"firstName": "Peter",
"surname": "Frog"
// + all fields used in query parameter
}
]
HTTP status code 400
Bad Request
Body
Media type: text/plain
Type: any
Example:
Invalid GUID: '2B8ED95B0EC911E79675005056A75D9'
post /users
Add a new user.
Body
Media type: application/json
Type: object
Properties- id: required(string - minLength: 32 - maxLength: 32)
Added by the system
- firstName: required(string - minLength: 1 - maxLength: 400)
- surname: required(string - minLength: 1 - maxLength: 400)
- login: (string - minLength: 1 - maxLength: 64)
- externalId: (string - minLength: 1 - maxLength: 128)
- phone: (string - minLength: 1 - maxLength: 256)
- chat: (string - minLength: 3 - maxLength: 256)
- chatName: (string - minLength: 1 - maxLength: 64)
- email: (string - minLength: 6 - maxLength: 256)
- uiLanguage: (string - minLength: 2 - maxLength: 4)
- promptLanguage: (string - minLength: 2 - maxLength: 4)
- timeZone: (string - minLength: 3 - maxLength: 50)
- synchronised: (boolean)
Example:
{
"firstName": "John",
"surname": "Fox",
"login": "John.Fox",
"externalId": "JohnFox11223344",
"phone": "123456",
"chat": "John.Fox@customer.com",
"chatName": "John",
"email": "John.Fox@customer.com",
"uiLanguage": "EN",
"promptLanguage": "EN",
"timeZone": "Europe/Helsinki",
"synchronised": true
}
HTTP status code 201
Returns the created id.
Body
Media type: text/html
Type: any
Example:
F5168FBDD6914C8DB1C6D0BD64563A39
Entity representing a user.
Get the user with userId = {userId}.
Update the user with userId = {userId}.
Note: Provide all properties since all fields are updated.
Delete the user.
get /users/{userId}
Get the user with userId = {userId}.
URI Parameters
- userId: required(string)
HTTP status code 200
Body
Media type: application/json
Type: object
Properties- id: required(string - minLength: 32 - maxLength: 32)
Added by the system
- firstName: required(string - minLength: 1 - maxLength: 400)
- surname: required(string - minLength: 1 - maxLength: 400)
- login: (string - minLength: 1 - maxLength: 64)
- externalId: (string - minLength: 1 - maxLength: 128)
- phone: (string - minLength: 1 - maxLength: 256)
- chat: (string - minLength: 3 - maxLength: 256)
- chatName: (string - minLength: 1 - maxLength: 64)
- email: (string - minLength: 6 - maxLength: 256)
- uiLanguage: (string - minLength: 2 - maxLength: 4)
- promptLanguage: (string - minLength: 2 - maxLength: 4)
- timeZone: (string - minLength: 3 - maxLength: 50)
- synchronised: (boolean)
Example:
{
"id":"E936C474B22311D38FBE0090279A922E",
"firstName": "John",
"surname": "Fox",
"login": "John.Fox",
"externalId": "JohnFox11223344",
"phone" : "123456",
"chat": "John.Fox@customer.com",
"chatName": "John",
"email":"John.Fox@customer.com",
"uiLanguage": "EN",
"promptLanguage": "EN",
"timeZone": "Europe/Helsinki",
"synchronised": true
}
HTTP status code 404
Not Found
Body
Media type: text/plain
Type: any
Example:
HTTP 404 Not Found
put /users/{userId}
Update the user with userId = {userId}.
Note: Provide all properties since all fields are updated.
URI Parameters
- userId: required(string)
Body
Media type: application/json
Type: object
Properties- id: required(string - minLength: 32 - maxLength: 32)
Added by the system
- firstName: required(string - minLength: 1 - maxLength: 400)
- surname: required(string - minLength: 1 - maxLength: 400)
- login: (string - minLength: 1 - maxLength: 64)
- externalId: (string - minLength: 1 - maxLength: 128)
- phone: (string - minLength: 1 - maxLength: 256)
- chat: (string - minLength: 3 - maxLength: 256)
- chatName: (string - minLength: 1 - maxLength: 64)
- email: (string - minLength: 6 - maxLength: 256)
- uiLanguage: (string - minLength: 2 - maxLength: 4)
- promptLanguage: (string - minLength: 2 - maxLength: 4)
- timeZone: (string - minLength: 3 - maxLength: 50)
- synchronised: (boolean)
HTTP status code 204
No content - The server has successfully fulfilled the request and there is no additional content to send in the response payload body.
delete /users/{userId}
Delete the user.
Collection of userGroups.
Get a list of userGroups for user.
Add user group for user.
get /users/{userId}/userGroups
Get a list of userGroups for user.
URI Parameters
- userId: required(string)
HTTP status code 200
Body
Media type: application/json
Type: array of object
Items: userGroups
- id: required(string - minLength: 32 - maxLength: 32)
Added by the system
- name: required(string - minLength: 1 - maxLength: 400)
- synchronised: (boolean)
Example:
[
{
"id": "7B9ED6753BCD460C98501E9FD1C02002",
"name": "HelpDesk"
},
{
"id": "7211703C1CF047D9AA1B6FD5B2B35640",
"name": "IT"
},
{
"id": "FDA4CD5052144FFBB3794EC7ADF7EFD5",
"name": "Partner Support"
}
]
HTTP status code 400
Bad Request
Body
Media type: text/plain
Type: any
Example:
Invalid GUID: '2B8ED95B0EC911E79675005056A75D9'
post /users/{userId}/userGroups
Add user group for user.
URI Parameters
- userId: required(string)
Body
Media type: application/json
Type: object
Properties- id: required(string - minLength: 32 - maxLength: 32)
Added by the system
- name: required(string - minLength: 1 - maxLength: 400)
- synchronised: (boolean)
Example:
{"id":"A9934415A02845B69389008CF1F27EAB"}
HTTP status code 201
Returns the created id.
Body
Media type: text/html
Type: any
Example:
A9934415A02845B69389008CF1F27EAB
Entity representing a userGroup.
Get the userGroup with userGroupId = {userGroupId}.
Remove user from user group.
get /users/{userId}/userGroups/{userGroupId}
Get the userGroup with userGroupId = {userGroupId}.
URI Parameters
- userId: required(string)
- userGroupId: required(string)
HTTP status code 200
Body
Media type: application/json
Type: object
Properties- id: required(string - minLength: 32 - maxLength: 32)
Added by the system
- name: required(string - minLength: 1 - maxLength: 400)
- synchronised: (boolean)
Example:
{
"id":"7B9ED6753BCD460C98501E9FD1C02002",
"name": "HelpDesk",
"synchronised": true
}
HTTP status code 404
Not Found
Body
Media type: text/plain
Type: any
Example:
HTTP 404 Not Found
delete /users/{userId}/userGroups/{userGroupId}
Remove user from user group.
URI Parameters
- userId: required(string)
- userGroupId: required(string)
HTTP status code 200
Body
Media type: application/json
Type: any
Example:
{"message": "The user has been removed properly from user group."}
HTTP status code 204
No content - The server has successfully fulfilled the request and there is no additional content to send in the response payload body.
HTTP status code 404
Not Found
Body
Media type: text/plain
Type: any
Example:
HTTP 404 Not Found
Collection of roles.
Get a list of roles for user.
Add role for user.
get /users/{userId}/roles
Get a list of roles for user.
URI Parameters
- userId: required(string)
HTTP status code 200
Body
Media type: application/json
Type: array of object
Items: roles
- id: required(string - minLength: 32 - maxLength: 32)
Added by the system
- name: required(string)
- description: (string)
Example:
[
{
"id": "2CADB6A137124F13BC68938E2B5FEFC1",
"name": "CC Agent"
},
{
"id": "F4E0E3C6AEC64BEA9200DCC05F5980F1",
"name": "CC Supervisor"
},
{
"id": "C2ED670838344EC4B6F0E620D3206B8D",
"name": "Office User"
}
]
HTTP status code 400
Bad Request
Body
Media type: text/plain
Type: any
Example:
Invalid GUID: '2B8ED95B0EC911E79675005056A75D9'
post /users/{userId}/roles
Add role for user.
URI Parameters
- userId: required(string)
Body
Media type: application/json
Type: object
Properties- id: required(string - minLength: 32 - maxLength: 32)
Added by the system
- name: required(string)
- description: (string)
Example:
{"id":"2CADB6A137124F13BC68938E2B5FEFC1"}
HTTP status code 201
Returns the created id.
Body
Media type: text/html
Type: any
Example:
2CADB6A137124F13BC68938E2B5FEFC1
Entity representing a role.
Get the role with roleId = {roleId}.
Remove user from role.
get /users/{userId}/roles/{roleId}
Get the role with roleId = {roleId}.
URI Parameters
- userId: required(string)
- roleId: required(string)
HTTP status code 200
Body
Media type: application/json
Type: object
Properties- id: required(string - minLength: 32 - maxLength: 32)
Added by the system
- name: required(string)
- description: (string)
Example:
{
"id": "2CADB6A137124F13BC68938E2B5FEFC1",
"name": "CC Agent",
"description": "CC Agent Role"
}
HTTP status code 404
Not Found
Body
Media type: text/plain
Type: any
Example:
HTTP 404 Not Found
delete /users/{userId}/roles/{roleId}
Remove user from role.
URI Parameters
- userId: required(string)
- roleId: required(string)
Collection of certificates.
Get a list of certificates for user.
Add certificate for user.
get /users/{userId}/certificates
Get a list of certificates for user.
URI Parameters
- userId: required(string)
HTTP status code 200
Body
Media type: application/json
Type: array of object
Items: certificates
- subject: required(string - minLength: 1 - maxLength: 450)
- issuer: required(string - minLength: 1 - maxLength: 450)
Example:
[
{
"id": "5D3A260F9F1D4BBFA5A3ADACFFE6C97B",
"issuer": "SSO_CA",
"subject": "john.fox"
},
{
"id": "6BEDFB8244494A698164CE0C2594C6FF",
"issuer": "SSO_CA",
"subject": "i123456"
}
]
HTTP status code 400
Bad Request
Body
Media type: text/plain
Type: any
Example:
Invalid GUID: '2B8ED95B0EC911E79675005056A75D9'
post /users/{userId}/certificates
Add certificate for user.
URI Parameters
- userId: required(string)
Body
Media type: application/json
Type: object
Properties- subject: required(string - minLength: 1 - maxLength: 450)
- issuer: required(string - minLength: 1 - maxLength: 450)
Example:
{
"subject":"john.fox",
"issuer":"SSO_CA"
}
HTTP status code 201
Returns the created id.
Body
Media type: text/html
Type: any
Example:
5D3A260F9F1D4BBFA5A3ADACFFE6C97B
Entity representing a certificate.
Get the certificate with certificateId = {certificateId}.
Delete user certificate.
get /users/{userId}/certificates/{certificateId}
Get the certificate with certificateId = {certificateId}.
URI Parameters
- userId: required(string)
- certificateId: required(string)
HTTP status code 200
Body
Media type: application/json
Type: object
Properties- subject: required(string - minLength: 1 - maxLength: 450)
- issuer: required(string - minLength: 1 - maxLength: 450)
Example:
{
"id": "5D3A260F9F1D4BBFA5A3ADACFFE6C97B",
"issuer": "SSO_CA",
"subject": "john.fox"
}
HTTP status code 404
Not Found
Body
Media type: text/plain
Type: any
Example:
HTTP 404 Not Found
delete /users/{userId}/certificates/{certificateId}
Delete user certificate.
URI Parameters
- userId: required(string)
- certificateId: required(string)
Collection of skills.
Get a list of skills for user.
Add skill for user.
get /users/{userId}/skills
Get a list of skills for user.
URI Parameters
- userId: required(string)
HTTP status code 200
Body
Media type: application/json
Type: array of object
Items: skills
- id: required(string - minLength: 32 - maxLength: 32)
Added by the system
- name: required(string - minLength: 1 - maxLength: 400)
- description: required(string - minLength: 1 - maxLength: 400)
Example:
[
{
"id": "175A098FEDDB41EB8839AACBAB26A0B6",
"value": 5
},
{
"id": "9B87EDA47F394762A510811F368A0ABA",
"value": 4
},
{
"id": "ABFF5E5BC1E44E90877C55570D06E8A7",
"value": 3
}
]
HTTP status code 400
Bad Request
Body
Media type: text/plain
Type: any
Example:
Invalid GUID: '2B8ED95B0EC911E79675005056A75D9'
post /users/{userId}/skills
Add skill for user.
URI Parameters
- userId: required(string)
Body
Media type: application/json
Type: object
Properties- id: required(string - minLength: 32 - maxLength: 32)
Skill ID.
- value: required(integer)
Skill value 1-5.
Example:
{"id":"ABFF5E5BC1E44E90877C55570D06E8A7", "value": 2}
HTTP status code 201
Returns the created id.
Body
Media type: text/html
Type: any
Example:
ABFF5E5BC1E44E90877C55570D06E8A7
Entity representing a skill.
Get the skill with skillId = {skillId}.
Update the skill with skillId = {skillId}.
Note: Provide all properties since all fields are updated.
Delete user skill.
get /users/{userId}/skills/{skillId}
Get the skill with skillId = {skillId}.
URI Parameters
- userId: required(string)
- skillId: required(string)
HTTP status code 200
Body
Media type: application/json
Type: object
Properties- id: required(string - minLength: 32 - maxLength: 32)
Added by the system
- name: required(string - minLength: 1 - maxLength: 400)
- description: required(string - minLength: 1 - maxLength: 400)
Example:
{
"id": "175A098FEDDB41EB8839AACBAB26A0B6",
"name": "English",
"description": "English language skill"
}
HTTP status code 404
Not Found
Body
Media type: text/plain
Type: any
Example:
HTTP 404 Not Found
put /users/{userId}/skills/{skillId}
Update the skill with skillId = {skillId}.
Note: Provide all properties since all fields are updated.
URI Parameters
- userId: required(string)
- skillId: required(string)
Body
Media type: application/json
Type: object
Properties- id: required(string - minLength: 32 - maxLength: 32)
Added by the system
- name: required(string - minLength: 1 - maxLength: 400)
- description: required(string - minLength: 1 - maxLength: 400)
HTTP status code 204
No content - The server has successfully fulfilled the request and there is no additional content to send in the response payload body.
delete /users/{userId}/skills/{skillId}
Delete user skill.
URI Parameters
- userId: required(string)
- skillId: required(string)
/userGroups
Collection of userGroups.
Get a list of userGroups.
Add a new userGroup.
get /userGroups
Get a list of userGroups.
Query Parameters
- any fields: (string)
&field1=value1&field2=value2...
Values may contain patterns * and ?
Valid searchable fields: id, nameExample:
name = HelpDesk
- sort: (string)
Can be sorted by any field. Default sort is id, name. "-" in front of field name will sort descending. With the postfix ",LOCALE-xx" where xx can be for example en,en-US,de,fi, the user may sort with given locale that are based on standard "IETF BCP 47".
Example:
sort=id, name,LOCALE-en
- offset: (integer - default: 0)
Skip over a number of elements by specifying an offset value for the query
Example:
20
- limit: (integer - default: 100)
Limit number of elements by specifying a limit value for the query
Example:
100
HTTP status code 200
Body
Media type: application/json
Type: array of object
Items: userGroups
- id: required(string - minLength: 32 - maxLength: 32)
Added by the system
- name: required(string - minLength: 1 - maxLength: 400)
- synchronised: (boolean)
Example:
[
{
"id": "7B9ED6753BCD460C98501E9FD1C02002",
"name": "HelpDesk"
},
{
"id": "7211703C1CF047D9AA1B6FD5B2B35640",
"name": "IT"
},
{
"id": "FDA4CD5052144FFBB3794EC7ADF7EFD5",
"name": "Partner Support"
}
]
HTTP status code 400
Bad Request
Body
Media type: text/plain
Type: any
Example:
Invalid GUID: '2B8ED95B0EC911E79675005056A75D9'
post /userGroups
Add a new userGroup.
Body
Media type: application/json
Type: object
Properties- id: required(string - minLength: 32 - maxLength: 32)
Added by the system
- name: required(string - minLength: 1 - maxLength: 400)
- synchronised: (boolean)
Example:
{
"name": "HelpDesk",
"synchronised": true
}
HTTP status code 201
Returns the created id.
Body
Media type: text/html
Type: any
Example:
F5168FBDD6914C8DB1C6D0BD64563A39
Entity representing a userGroup.
Get the userGroup with userGroupId = {userGroupId}.
Update the userGroup with userGroupId = {userGroupId}.
Note: Provide all properties since all fields are updated.
Delete the userGroup.
get /userGroups/{userGroupId}
Get the userGroup with userGroupId = {userGroupId}.
URI Parameters
- userGroupId: required(string)
HTTP status code 200
Body
Media type: application/json
Type: object
Properties- id: required(string - minLength: 32 - maxLength: 32)
Added by the system
- name: required(string - minLength: 1 - maxLength: 400)
- synchronised: (boolean)
Example:
{
"id":"7B9ED6753BCD460C98501E9FD1C02002",
"name": "HelpDesk",
"synchronised": true
}
HTTP status code 404
Not Found
Body
Media type: text/plain
Type: any
Example:
HTTP 404 Not Found
put /userGroups/{userGroupId}
Update the userGroup with userGroupId = {userGroupId}.
Note: Provide all properties since all fields are updated.
URI Parameters
- userGroupId: required(string)
Body
Media type: application/json
Type: object
Properties- id: required(string - minLength: 32 - maxLength: 32)
Added by the system
- name: required(string - minLength: 1 - maxLength: 400)
- synchronised: (boolean)
HTTP status code 204
No content - The server has successfully fulfilled the request and there is no additional content to send in the response payload body.
delete /userGroups/{userGroupId}
Delete the userGroup.
Collection of users.
Get a list of users in user groups.
Add user into user group.
get /userGroups/{userGroupId}/users
Get a list of users in user groups.
URI Parameters
- userGroupId: required(string)
HTTP status code 200
Body
Media type: application/json
Type: array of object
Items: users
- id: required(string - minLength: 32 - maxLength: 32)
Added by the system
- firstName: required(string - minLength: 1 - maxLength: 400)
- surname: required(string - minLength: 1 - maxLength: 400)
Example:
[
{
"id": "E936C474B22311D38FBE0090279A922E",
"firstName": "John",
"surname": "Fox"
// + all fields used in query parameter
},
{
"id": "40ECCFBFAEA24FEDA90A3347E9BC26E7",
"firstName": "David",
"surname": "Duck"
// + all fields used in query parameter
},
{
"id": "DC76CDDC340B43C291932428B6039AA6",
"firstName": "Peter",
"surname": "Frog"
// + all fields used in query parameter
}
]
HTTP status code 400
Bad Request
Body
Media type: text/plain
Type: any
Example:
Invalid GUID: '2B8ED95B0EC911E79675005056A75D9'
post /userGroups/{userGroupId}/users
Add user into user group.
URI Parameters
- userGroupId: required(string)
Body
Media type: application/json
Type: object
Properties- id: required(string - minLength: 32 - maxLength: 32)
Added by the system
- firstName: required(string - minLength: 1 - maxLength: 400)
- surname: required(string - minLength: 1 - maxLength: 400)
- login: (string - minLength: 1 - maxLength: 64)
- externalId: (string - minLength: 1 - maxLength: 128)
- phone: (string - minLength: 1 - maxLength: 256)
- chat: (string - minLength: 3 - maxLength: 256)
- chatName: (string - minLength: 1 - maxLength: 64)
- email: (string - minLength: 6 - maxLength: 256)
- uiLanguage: (string - minLength: 2 - maxLength: 4)
- promptLanguage: (string - minLength: 2 - maxLength: 4)
- timeZone: (string - minLength: 3 - maxLength: 50)
- synchronised: (boolean)
Example:
{
"id":"E936C474B22311D38FBE0090279A922E"
}
HTTP status code 201
Returns the created id.
Body
Media type: text/html
Type: any
Example:
E936C474B22311D38FBE0090279A922E
Entity representing a user.
Get the user with userId = {userId}.
Remove user from user group.
get /userGroups/{userGroupId}/users/{userId}
Get the user with userId = {userId}.
URI Parameters
- userGroupId: required(string)
- userId: required(string)
HTTP status code 200
Body
Media type: application/json
Type: object
Properties- id: required(string - minLength: 32 - maxLength: 32)
Added by the system
- firstName: required(string - minLength: 1 - maxLength: 400)
- surname: required(string - minLength: 1 - maxLength: 400)
- login: (string - minLength: 1 - maxLength: 64)
- externalId: (string - minLength: 1 - maxLength: 128)
- phone: (string - minLength: 1 - maxLength: 256)
- chat: (string - minLength: 3 - maxLength: 256)
- chatName: (string - minLength: 1 - maxLength: 64)
- email: (string - minLength: 6 - maxLength: 256)
- uiLanguage: (string - minLength: 2 - maxLength: 4)
- promptLanguage: (string - minLength: 2 - maxLength: 4)
- timeZone: (string - minLength: 3 - maxLength: 50)
- synchronised: (boolean)
Example:
{
"id":"E936C474B22311D38FBE0090279A922E",
"firstName": "John",
"surname": "Fox"
}
HTTP status code 404
Not Found
Body
Media type: text/plain
Type: any
Example:
HTTP 404 Not Found
delete /userGroups/{userGroupId}/users/{userId}
Remove user from user group.
URI Parameters
- userGroupId: required(string)
- userId: required(string)
/queues
Collection of queues.
Get a list of queues.
Add a new queue.
get /queues
Get a list of queues.
Query Parameters
- any fields: (string)
&field1=value1&field2=value2...
Values may contain patterns * and ?
Valid searchable fields: name, description, addressExample:
name = Sales*
- sort: (string)
Can be sorted by any field. Default sort is name, description. "-" in front of field name will sort descending. With the postfix ",LOCALE-xx" where xx can be for example en,en-US,de,fi, the user may sort with given locale that are based on standard "IETF BCP 47".
Example:
sort=name, description,LOCALE-en
- offset: (integer - default: 0)
Skip over a number of elements by specifying an offset value for the query
Example:
20
- limit: (integer - default: 100)
Limit number of elements by specifying a limit value for the query
Example:
100
HTTP status code 200
Body
Media type: application/json
Type: array of object
Items: queues
- id: required(string - minLength: 32 - maxLength: 32)
Added by the system
- type: required(one of phone, chat, email)
- name: required(string - minLength: 1 - maxLength: 400)
- description: (string - minLength: 1 - maxLength: 400)
- synchronised: (boolean)
- loginType: required(one of AutoAllocation, HuntGroup)
- addresses: (object)
- address: (array of string)
Example:
[
{
"id": "B8F0CA9CFC0411D3A2230050DA29E0F4",
"type": "Phone",
"name": "Sales",
"description": "Sales phone",
"loginType": "AutoAllocation",
"addresses": {
"address": [
"100"
]
},
"synchronised": true
},
{
"id": "409FBE1B217643089F291B8796174643",
"type": "Phone",
"name": "Helpdesk",
"description": "Helpdesk phone",
"loginType": "HuntGroup",
"addresses": {
"address": [
"101",
"102"
]
},
"synchronised": true
},
{
"id": "AA60293EB8AD49959C5B67A2B0A1DC84",
"type": "Chat",
"name": "Sales chat",
"description": "Sales chat",
"loginType": "AutoAllocation",
"addresses": {
"address": [
"rci.chat@company.com"
]
},
"synchronised": true
},
{
"id": "7B2EB5F5DF62439690CF6D180A2009C8",
"type": "Email",
"name": "Sales Email",
"description": "Sales Email",
"loginType": "AutoAllocation",
"addresses": {
"address": [
"rci.email@company.com"
]
},
"synchronised": true
}
]
HTTP status code 400
Bad Request
Body
Media type: text/plain
Type: any
Example:
Invalid GUID: '2B8ED95B0EC911E79675005056A75D9'
post /queues
Add a new queue.
Body
Media type: application/json
Type: object
Properties- id: required(string - minLength: 32 - maxLength: 32)
Added by the system
- type: required(one of phone, chat, email)
- name: required(string - minLength: 1 - maxLength: 400)
- description: (string - minLength: 1 - maxLength: 400)
- synchronised: (boolean)
- loginType: required(one of AutoAllocation, HuntGroup)
- addresses: (object)
- address: (array of string)
Example:
{
"type": "Phone",
"name": "Sales",
"description": "Sales phone",
"loginType": "AutoAllocation",
"synchronised": true
}
HTTP status code 201
Returns the created id.
Body
Media type: text/html
Type: any
Example:
F5168FBDD6914C8DB1C6D0BD64563A39
Entity representing a queue.
Get the queue with queueId = {queueId}.
Update the queue with queueId = {queueId}.
Note: Provide all properties since all fields are updated.
Delete the queue.
get /queues/{queueId}
Get the queue with queueId = {queueId}.
URI Parameters
- queueId: required(string)
HTTP status code 200
Body
Media type: application/json
Type: object
Properties- id: required(string - minLength: 32 - maxLength: 32)
Added by the system
- type: required(one of phone, chat, email)
- name: required(string - minLength: 1 - maxLength: 400)
- description: (string - minLength: 1 - maxLength: 400)
- synchronised: (boolean)
- loginType: required(one of AutoAllocation, HuntGroup)
- addresses: (object)
- address: (array of string)
Example:
{
"id": "B8F0CA9CFC0411D3A2230050DA29E0F4",
"type": "Phone",
"name": "Sales",
"description": "Sales phone",
"loginType": "AutoAllocation",
"addresses":{"address":["100"]},
"synchronised": true
}
HTTP status code 404
Not Found
Body
Media type: text/plain
Type: any
Example:
HTTP 404 Not Found
put /queues/{queueId}
Update the queue with queueId = {queueId}.
Note: Provide all properties since all fields are updated.
URI Parameters
- queueId: required(string)
Body
Media type: application/json
Type: object
Properties- id: required(string - minLength: 32 - maxLength: 32)
Added by the system
- type: required(one of phone, chat, email)
- name: required(string - minLength: 1 - maxLength: 400)
- description: (string - minLength: 1 - maxLength: 400)
- synchronised: (boolean)
- loginType: required(one of AutoAllocation, HuntGroup)
- addresses: (object)
- address: (array of string)
HTTP status code 204
No content - The server has successfully fulfilled the request and there is no additional content to send in the response payload body.
delete /queues/{queueId}
Delete the queue.
Collection of extensions.
Get a list of extensions for queue.
Add a new extension.
get /queues/{queueId}/extensions
Get a list of extensions for queue.
URI Parameters
- queueId: required(string)
HTTP status code 200
Body
Media type: application/json
Type: array of object
Items: extensions
- id: required(string - minLength: 32 - maxLength: 32)
Added by the system
- name: required(string)
- language: (string)
- priority: (number)
Example:
[
{
"id": "A8F2AC742E914654B9AB5F420406B828",
"address": "101"
},
{
"id": "CB5AF61A7E2C4E728C62069A85EB73BA",
"address": "102
}
]
HTTP status code 400
Bad Request
Body
Media type: text/plain
Type: any
Example:
Invalid GUID: '2B8ED95B0EC911E79675005056A75D9'
post /queues/{queueId}/extensions
Add a new extension.
URI Parameters
- queueId: required(string)
Body
Media type: application/json
Type: object
Properties- id: required(string - minLength: 32 - maxLength: 32)
Added by the system
- name: required(string)
- language: (string)
- priority: (number)
Example:
{
"address": "103"
}
HTTP status code 201
Returns the created id.
Body
Media type: text/html
Type: any
Example:
F5168FBDD6914C8DB1C6D0BD64563A39
Entity representing a extension.
Get the extension with extensionId = {extensionId}.
Delete the extension.
get /queues/{queueId}/extensions/{extensionId}
Get the extension with extensionId = {extensionId}.
URI Parameters
- queueId: required(string)
- extensionId: required(string)
HTTP status code 200
Body
Media type: application/json
Type: object
Properties- id: required(string - minLength: 32 - maxLength: 32)
Added by the system
- name: required(string)
- language: (string)
- priority: (number)
Example:
{
"id": "A8F2AC742E914654B9AB5F420406B828",
"address": "101"
}
HTTP status code 404
Not Found
Body
Media type: text/plain
Type: any
Example:
HTTP 404 Not Found
delete /queues/{queueId}/extensions/{extensionId}
Delete the extension.
URI Parameters
- queueId: required(string)
- extensionId: required(string)
Collection of queueGroups.
Get a list of queue groups for queue.
Add queue group for queue.
get /queues/{queueId}/queueGroups
Get a list of queue groups for queue.
URI Parameters
- queueId: required(string)
HTTP status code 200
Body
Media type: application/json
Type: array of object
Items: queueGroups
- id: required(string - minLength: 32 - maxLength: 32)
Added by the system
- name: required(string - minLength: 1 - maxLength: 400)
- description: required(string - minLength: 1 - maxLength: 400)
Example:
[
{
"id": "2CADB6A1-3712-4F13-BC68-938E2B5FEFC1",
"name": "CC Agent"
},
{
"id": "E8E5E74E1CB540458639310940C07BA5",
"name": "CC Helpdesk"
},
{
"id": "BE5F74207C51437CB1B749E608DEB30F",
"name": "CC Support"
}
]
HTTP status code 400
Bad Request
Body
Media type: text/plain
Type: any
Example:
Invalid GUID: '2B8ED95B0EC911E79675005056A75D9'
post /queues/{queueId}/queueGroups
Add queue group for queue.
URI Parameters
- queueId: required(string)
Body
Media type: application/json
Type: object
Properties- id: required(string - minLength: 32 - maxLength: 32)
Added by the system
- name: required(string - minLength: 1 - maxLength: 400)
- description: required(string - minLength: 1 - maxLength: 400)
Example:
{
"id":"2CADB6A1-3712-4F13-BC68-938E2B5FEFC1"
}
HTTP status code 201
Returns the created id.
Body
Media type: text/html
Type: any
Example:
2CADB6A137124F13BC68938E2B5FEFC1
Entity representing a queueGroup.
Get the queueGroup with queueGroupId = {queueGroupId}.
Remove queue from queue group.
get /queues/{queueId}/queueGroups/{queueGroupId}
Get the queueGroup with queueGroupId = {queueGroupId}.
URI Parameters
- queueId: required(string)
- queueGroupId: required(string)
HTTP status code 200
Body
Media type: application/json
Type: object
Properties- id: required(string - minLength: 32 - maxLength: 32)
Added by the system
- name: required(string - minLength: 1 - maxLength: 400)
- description: required(string - minLength: 1 - maxLength: 400)
Example:
{
"id":"2CADB6A137124F13BC68938E2B5FEFC1",
"name": "CC Agent"
}
HTTP status code 404
Not Found
Body
Media type: text/plain
Type: any
Example:
HTTP 404 Not Found
delete /queues/{queueId}/queueGroups/{queueGroupId}
Remove queue from queue group.
URI Parameters
- queueId: required(string)
- queueGroupId: required(string)
Collection of attributes.
Get a list of attributes.
Add a new attribute.
get /queues/{queueId}/attributes
Get a list of attributes.
URI Parameters
- queueId: required(string)
Query Parameters
- any fields: (string)
&field1=value1&field2=value2...
Values may contain patterns * and ?
Valid searchable fields: name, languageExample:
name=HelpDesk
HTTP status code 200
Body
Media type: application/json
Type: array of object
Items: attributes
- name: required(string)
- langauge: required(string)
- value: required(string)
Example:
[
{
name: "Name",
language: "EN",
value: "Sales"
},
{
name: "Name",
language: "FI",
value: "Myynti"
}
]
HTTP status code 400
Bad Request
Body
Media type: text/plain
Type: any
Example:
Invalid GUID: '2B8ED95B0EC911E79675005056A75D9'
post /queues/{queueId}/attributes
Add a new attribute.
URI Parameters
- queueId: required(string)
Body
Media type: application/json
Type: object
Properties- name: required(string)
- langauge: required(string)
- value: required(string)
Example:
{
name: "Name",
language: "EN",
value: "Advanced"
}
HTTP status code 201
Returns the created id.
Body
Media type: text/html
Type: any
Example:
F5168FBDD6914C8DB1C6D0BD64563A39
/queueGroups
Collection of queueGroups.
Get a list of queueGroups.
Add a new queueGroup.
get /queueGroups
Get a list of queueGroups.
Query Parameters
- any fields: (string)
&field1=value1&field2=value2...
Values may contain patterns * and ?
Valid searchable fields: name, descriptionExample:
name = HelpDesk
- sort: (string)
Can be sorted by any field. Default sort is name. "-" in front of field name will sort descending. With the postfix ",LOCALE-xx" where xx can be for example en,en-US,de,fi, the user may sort with given locale that are based on standard "IETF BCP 47".
Example:
sort=name,LOCALE-en
- offset: (integer - default: 0)
Skip over a number of elements by specifying an offset value for the query
Example:
20
- limit: (integer - default: 100)
Limit number of elements by specifying a limit value for the query
Example:
100
HTTP status code 200
Body
Media type: application/json
Type: array of object
Items: queueGroups
- id: required(string - minLength: 32 - maxLength: 32)
Added by the system
- name: required(string - minLength: 1 - maxLength: 400)
- description: required(string - minLength: 1 - maxLength: 400)
Example:
[
{
"id": "2CADB6A1-3712-4F13-BC68-938E2B5FEFC1",
"description": "CC Agent queue group",
"name": "CC Agent"
},
{
"id": "E8E5E74E1CB540458639310940C07BA5",
"description": "CC Helpdesk queue group",
"name": "CC Helpdesk"
},
{
"id": "BE5F74207C51437CB1B749E608DEB30F",
"description": "CC Support queue group",
"name": "CC Support"
}
]
HTTP status code 400
Bad Request
Body
Media type: text/plain
Type: any
Example:
Invalid GUID: '2B8ED95B0EC911E79675005056A75D9'
post /queueGroups
Add a new queueGroup.
Body
Media type: application/json
Type: object
Properties- id: required(string - minLength: 32 - maxLength: 32)
Added by the system
- name: required(string - minLength: 1 - maxLength: 400)
- description: required(string - minLength: 1 - maxLength: 400)
Example:
[
{
"name": "CC Agent"
"description": "CC Agent queue group"
}
]
HTTP status code 201
Returns the created id.
Body
Media type: text/html
Type: any
Example:
2CADB6A1-3712-4F13-BC68-938E2B5FEFC1
Entity representing a queueGroup.
Get the queueGroup with queueGroupId = {queueGroupId}.
Update the queueGroup with queueGroupId = {queueGroupId}.
Note: Provide all properties since all fields are updated.
Delete the queueGroup.
get /queueGroups/{queueGroupId}
Get the queueGroup with queueGroupId = {queueGroupId}.
URI Parameters
- queueGroupId: required(string)
HTTP status code 200
Body
Media type: application/json
Type: object
Properties- id: required(string - minLength: 32 - maxLength: 32)
Added by the system
- name: required(string - minLength: 1 - maxLength: 400)
- description: required(string - minLength: 1 - maxLength: 400)
Example:
{
"id": "2CADB6A137124F13BC68938E2B5FEFC1",
"description": "CC Agent queue group",
"name": "CC Agent"
}
HTTP status code 404
Not Found
Body
Media type: text/plain
Type: any
Example:
HTTP 404 Not Found
put /queueGroups/{queueGroupId}
Update the queueGroup with queueGroupId = {queueGroupId}.
Note: Provide all properties since all fields are updated.
URI Parameters
- queueGroupId: required(string)
Body
Media type: application/json
Type: object
Properties- id: required(string - minLength: 32 - maxLength: 32)
Added by the system
- name: required(string - minLength: 1 - maxLength: 400)
- description: required(string - minLength: 1 - maxLength: 400)
HTTP status code 204
No content - The server has successfully fulfilled the request and there is no additional content to send in the response payload body.
delete /queueGroups/{queueGroupId}
Delete the queueGroup.
Collection of queues.
Get a list of queues for queue group.
Add queue into queue group.
get /queueGroups/{queueGroupId}/queues
Get a list of queues for queue group.
URI Parameters
- queueGroupId: required(string)
Query Parameters
- any fields: (string)
&field1=value1&field2=value2...
Values may contain patterns * and ?
Valid searchable fields: nameExample:
name = Sales*
- sort: (string)
Can be sorted by any field. Default sort is name. "-" in front of field name will sort descending. With the postfix ",LOCALE-xx" where xx can be for example en,en-US,de,fi, the user may sort with given locale that are based on standard "IETF BCP 47".
Example:
sort=name,LOCALE-en
- offset: (integer - default: 0)
Skip over a number of elements by specifying an offset value for the query
Example:
20
- limit: (integer - default: 100)
Limit number of elements by specifying a limit value for the query
Example:
100
HTTP status code 200
Body
Media type: application/json
Type: array of object
Items: queues
- id: required(string - minLength: 32 - maxLength: 32)
Added by the system
- type: required(one of phone, chat, email)
- name: required(string - minLength: 1 - maxLength: 400)
- description: (string - minLength: 1 - maxLength: 400)
- synchronised: (boolean)
- loginType: required(one of AutoAllocation, HuntGroup)
- addresses: (object)
- address: (array of string)
Example:
[
{
"id": "B8F0CA9CFC0411D3A2230050DA29E0F4",
"name": "Sales"
},
{
"id": "409FBE1B217643089F291B8796174643",
"name": "Helpdesk"
}
},
{
"id": "AA60293EB8AD49959C5B67A2B0A1DC84",
"name": "Sales chat"
},
{
"id": "7B2EB5F5DF62439690CF6D180A2009C8",
"name": "Sales Email"
}
]
HTTP status code 400
Bad Request
Body
Media type: text/plain
Type: any
Example:
Invalid GUID: '2B8ED95B0EC911E79675005056A75D9'
post /queueGroups/{queueGroupId}/queues
Add queue into queue group.
URI Parameters
- queueGroupId: required(string)
Body
Media type: application/json
Type: object
Properties- id: required(string - minLength: 32 - maxLength: 32)
Added by the system
- type: required(one of phone, chat, email)
- name: required(string - minLength: 1 - maxLength: 400)
- description: (string - minLength: 1 - maxLength: 400)
- synchronised: (boolean)
- loginType: required(one of AutoAllocation, HuntGroup)
- addresses: (object)
- address: (array of string)
Example:
{
"id": "B8F0CA9CFC0411D3A2230050DA29E0F4"
}
HTTP status code 201
Returns the created id.
Body
Media type: text/html
Type: any
Example:
5D3A260F9F1D4BBFA5A3ADACFFE6C97B
Entity representing a queue.
Get the queue with queueId = {queueId}.
Delete the queue.
get /queueGroups/{queueGroupId}/queues/{queueId}
Get the queue with queueId = {queueId}.
URI Parameters
- queueGroupId: required(string)
- queueId: required(string)
HTTP status code 200
Body
Media type: application/json
Type: object
Properties- id: required(string - minLength: 32 - maxLength: 32)
Added by the system
- type: required(one of phone, chat, email)
- name: required(string - minLength: 1 - maxLength: 400)
- description: (string - minLength: 1 - maxLength: 400)
- synchronised: (boolean)
- loginType: required(one of AutoAllocation, HuntGroup)
- addresses: (object)
- address: (array of string)
Example:
{
"id": "B8F0CA9CFC0411D3A2230050DA29E0F4",
"name": "Sales"
}
HTTP status code 404
Not Found
Body
Media type: text/plain
Type: any
Example:
HTTP 404 Not Found
delete /queueGroups/{queueGroupId}/queues/{queueId}
Delete the queue.
URI Parameters
- queueGroupId: required(string)
- queueId: required(string)
Collection of attributes.
Get a list of attributes.
Add a new attribute.
get /queueGroups/{queueGroupId}/attributes
Get a list of attributes.
URI Parameters
- queueGroupId: required(string)
Query Parameters
- any fields: (string)
&field1=value1&field2=value2...
Values may contain patterns * and ?
Valid searchable fields: name, languageExample:
name=HelpDesk
HTTP status code 200
Body
Media type: application/json
Type: array of object
Items: attributes
- name: required(string)
- langauge: required(string)
- value: required(string)
Example:
[
{
name: "Name",
language: "EN",
value: "Sales"
},
{
name: "Name",
language: "FI",
value: "Myynti"
}
]
HTTP status code 400
Bad Request
Body
Media type: text/plain
Type: any
Example:
Invalid GUID: '2B8ED95B0EC911E79675005056A75D9'
post /queueGroups/{queueGroupId}/attributes
Add a new attribute.
URI Parameters
- queueGroupId: required(string)
Body
Media type: application/json
Type: object
Properties- name: required(string)
- langauge: required(string)
- value: required(string)
Example:
{
name: "Name",
language: "EN",
value: "Advanced"
}
HTTP status code 201
Returns the created id.
Body
Media type: text/html
Type: any
Example:
F5168FBDD6914C8DB1C6D0BD64563A39
/roles
Collection of roles.
Get a list of roles.
Add a new role.
get /roles
Get a list of roles.
Query Parameters
- any fields: (string)
&field1=value1&field2=value2...
Values may contain patterns * and ?
Valid searchable fields: id, nameExample:
name = CC Agent
- sort: (string)
Can be sorted by any field. Default sort is id, name. "-" in front of field name will sort descending. With the postfix ",LOCALE-xx" where xx can be for example en,en-US,de,fi, the user may sort with given locale that are based on standard "IETF BCP 47".
Example:
sort=id, name,LOCALE-en
- offset: (integer - default: 0)
Skip over a number of elements by specifying an offset value for the query
Example:
20
- limit: (integer - default: 100)
Limit number of elements by specifying a limit value for the query
Example:
100
HTTP status code 200
Body
Media type: application/json
Type: array of object
Items: roles
- id: required(string - minLength: 32 - maxLength: 32)
Added by the system
- name: required(string)
- description: (string)
Example:
[
{
"id": "2CADB6A137124F13BC68938E2B5FEFC1",
"name": "CC Agent"
},
{
"id": "F4E0E3C6AEC64BEA9200DCC05F5980F1",
"name": "CC Supervisor"
},
{
"id": "C2ED670838344EC4B6F0E620D3206B8D",
"name": "Office User"
}
]
HTTP status code 400
Bad Request
Body
Media type: text/plain
Type: any
Example:
Invalid GUID: '2B8ED95B0EC911E79675005056A75D9'
post /roles
Add a new role.
Body
Media type: application/json
Type: object
Properties- id: required(string - minLength: 32 - maxLength: 32)
Added by the system
- name: required(string)
- description: (string)
Example:
{
"name": "CC Agent",
"description":"CC Agent Role"
}
HTTP status code 201
Returns the created id.
Body
Media type: text/html
Type: any
Example:
2CADB6A137124F13BC68938E2B5FEFC1
Entity representing a role.
Get the role with roleId = {roleId}.
Update the role with roleId = {roleId}.
Note: Provide all properties since all fields are updated.
Delete the role.
get /roles/{roleId}
Get the role with roleId = {roleId}.
URI Parameters
- roleId: required(string)
HTTP status code 200
Body
Media type: application/json
Type: object
Properties- id: required(string - minLength: 32 - maxLength: 32)
Added by the system
- name: required(string)
- description: (string)
Example:
{
"id": "2CADB6A137124F13BC68938E2B5FEFC1",
"name": "CC Agent",
"description": "CC Agent Role"
}
HTTP status code 404
Not Found
Body
Media type: text/plain
Type: any
Example:
HTTP 404 Not Found
put /roles/{roleId}
Update the role with roleId = {roleId}.
Note: Provide all properties since all fields are updated.
URI Parameters
- roleId: required(string)
Body
Media type: application/json
Type: object
Properties- id: required(string - minLength: 32 - maxLength: 32)
Added by the system
- name: required(string)
- description: (string)
HTTP status code 204
No content - The server has successfully fulfilled the request and there is no additional content to send in the response payload body.
delete /roles/{roleId}
Delete the role.
Collection of users.
Get a list of users having role.
Add role for user.
get /roles/{roleId}/users
Get a list of users having role.
URI Parameters
- roleId: required(string)
HTTP status code 200
Body
Media type: application/json
Type: array of object
Items: users
- id: required(string - minLength: 32 - maxLength: 32)
Added by the system
- firstName: required(string - minLength: 1 - maxLength: 400)
- surname: required(string - minLength: 1 - maxLength: 400)
Example:
[
{
"id": "E936C474B22311D38FBE0090279A922E",
"firstName": "John",
"surname": "Fox"
// + all fields used in query parameter
},
{
"id": "40ECCFBFAEA24FEDA90A3347E9BC26E7",
"firstName": "David",
"surname": "Duck"
// + all fields used in query parameter
},
{
"id": "DC76CDDC340B43C291932428B6039AA6",
"firstName": "Peter",
"surname": "Frog"
// + all fields used in query parameter
}
]
HTTP status code 400
Bad Request
Body
Media type: text/plain
Type: any
Example:
Invalid GUID: '2B8ED95B0EC911E79675005056A75D9'
post /roles/{roleId}/users
Add role for user.
URI Parameters
- roleId: required(string)
Body
Media type: application/json
Type: object
Properties- id: required(string - minLength: 32 - maxLength: 32)
Added by the system
- firstName: required(string - minLength: 1 - maxLength: 400)
- surname: required(string - minLength: 1 - maxLength: 400)
- login: (string - minLength: 1 - maxLength: 64)
- externalId: (string - minLength: 1 - maxLength: 128)
- phone: (string - minLength: 1 - maxLength: 256)
- chat: (string - minLength: 3 - maxLength: 256)
- chatName: (string - minLength: 1 - maxLength: 64)
- email: (string - minLength: 6 - maxLength: 256)
- uiLanguage: (string - minLength: 2 - maxLength: 4)
- promptLanguage: (string - minLength: 2 - maxLength: 4)
- timeZone: (string - minLength: 3 - maxLength: 50)
- synchronised: (boolean)
Example:
{
"id":"E936C474B22311D38FBE0090279A922E"
}
HTTP status code 201
Returns the created id.
Body
Media type: text/html
Type: any
Example:
E936C474B22311D38FBE0090279A922E
Entity representing a user.
Get the user with userId = {userId}.
Remove role from user.
get /roles/{roleId}/users/{userId}
Get the user with userId = {userId}.
URI Parameters
- roleId: required(string)
- userId: required(string)
HTTP status code 200
Body
Media type: application/json
Type: object
Properties- id: required(string - minLength: 32 - maxLength: 32)
Added by the system
- firstName: required(string - minLength: 1 - maxLength: 400)
- surname: required(string - minLength: 1 - maxLength: 400)
- login: (string - minLength: 1 - maxLength: 64)
- externalId: (string - minLength: 1 - maxLength: 128)
- phone: (string - minLength: 1 - maxLength: 256)
- chat: (string - minLength: 3 - maxLength: 256)
- chatName: (string - minLength: 1 - maxLength: 64)
- email: (string - minLength: 6 - maxLength: 256)
- uiLanguage: (string - minLength: 2 - maxLength: 4)
- promptLanguage: (string - minLength: 2 - maxLength: 4)
- timeZone: (string - minLength: 3 - maxLength: 50)
- synchronised: (boolean)
Example:
{
"id":"E936C474B22311D38FBE0090279A922E",
"firstName": "John",
"surname": "Fox"
}
HTTP status code 404
Not Found
Body
Media type: text/plain
Type: any
Example:
HTTP 404 Not Found
delete /roles/{roleId}/users/{userId}
Remove role from user.
URI Parameters
- roleId: required(string)
- userId: required(string)
/skills
Collection of skills.
Get a list of skills.
Add a new skill.
get /skills
Get a list of skills.
Query Parameters
- any fields: (string)
&field1=value1&field2=value2...
Values may contain patterns * and ?
Valid searchable fields: id, nameExample:
name = HelpDesk
- sort: (string)
Can be sorted by any field. Default sort is id, name. "-" in front of field name will sort descending. With the postfix ",LOCALE-xx" where xx can be for example en,en-US,de,fi, the user may sort with given locale that are based on standard "IETF BCP 47".
Example:
sort=id, name,LOCALE-en
- offset: (integer - default: 0)
Skip over a number of elements by specifying an offset value for the query
Example:
20
- limit: (integer - default: 100)
Limit number of elements by specifying a limit value for the query
Example:
100
HTTP status code 200
Body
Media type: application/json
Type: array of object
Items: skills
- id: required(string - minLength: 32 - maxLength: 32)
Added by the system
- name: required(string - minLength: 1 - maxLength: 400)
- description: required(string - minLength: 1 - maxLength: 400)
Example:
[
{
"id": "175A098FEDDB41EB8839AACBAB26A0B6",
"name": "English",
"description": "English language skill"
},
{
"id": "9B87EDA47F394762A510811F368A0ABA",
"name": "Deutsch",
"description": "German Language skill"
},
{
"id": "ABFF5E5BC1E44E90877C55570D06E8A7",
"name": "Finnish Language",
"description": "Finnish language skill"
}
]
HTTP status code 400
Bad Request
Body
Media type: text/plain
Type: any
Example:
Invalid GUID: '2B8ED95B0EC911E79675005056A75D9'
post /skills
Add a new skill.
Body
Media type: application/json
Type: object
Properties- id: required(string - minLength: 32 - maxLength: 32)
Added by the system
- name: required(string - minLength: 1 - maxLength: 400)
- description: required(string - minLength: 1 - maxLength: 400)
Example:
{
"name": "Russian",
"description": "Russian language skill"
}
HTTP status code 201
Returns the created id.
Body
Media type: text/html
Type: any
Example:
F5168FBDD6914C8DB1C6D0BD64563A39
Entity representing a skill.
Get the skill with skillId = {skillId}.
Update the skill with skillId = {skillId}.
Note: Provide all properties since all fields are updated.
Delete the skill.
get /skills/{skillId}
Get the skill with skillId = {skillId}.
URI Parameters
- skillId: required(string)
HTTP status code 200
Body
Media type: application/json
Type: object
Properties- id: required(string - minLength: 32 - maxLength: 32)
Added by the system
- name: required(string - minLength: 1 - maxLength: 400)
- description: required(string - minLength: 1 - maxLength: 400)
Example:
{
"id": "175A098FEDDB41EB8839AACBAB26A0B6",
"name": "English",
"description": "English language skill"
}
HTTP status code 404
Not Found
Body
Media type: text/plain
Type: any
Example:
HTTP 404 Not Found
put /skills/{skillId}
Update the skill with skillId = {skillId}.
Note: Provide all properties since all fields are updated.
URI Parameters
- skillId: required(string)
Body
Media type: application/json
Type: object
Properties- id: required(string - minLength: 32 - maxLength: 32)
Added by the system
- name: required(string - minLength: 1 - maxLength: 400)
- description: required(string - minLength: 1 - maxLength: 400)
HTTP status code 204
No content - The server has successfully fulfilled the request and there is no additional content to send in the response payload body.
delete /skills/{skillId}
Delete the skill.
/timeZones
Collection of timeZones.
Get a list of timeZones.
get /timeZones
Get a list of timeZones.
Query Parameters
- any fields: (string)
&field1=value1&field2=value2...
Values may contain patterns * and ?
Valid searchable fields: id, nameExample:
id = Europe/Helsinki
- sort: (string)
Can be sorted by any field. Default sort is id, name. "-" in front of field name will sort descending. With the postfix ",LOCALE-xx" where xx can be for example en,en-US,de,fi, the user may sort with given locale that are based on standard "IETF BCP 47".
Example:
sort=id, name,LOCALE-en
- offset: (integer - default: 0)
Skip over a number of elements by specifying an offset value for the query
Example:
20
- limit: (integer - default: 100)
Limit number of elements by specifying a limit value for the query
Example:
100
HTTP status code 200
Body
Media type: application/json
Type: array of object
Items: timeZones
- id: required(string)
- name: required(string)
Example:
[
{
"id": "America/New_York",
"name": "(UTC-05:00) Eastern Time (US & Canada)"
},
{
"id": "Asia/Singapore",
"name": "(UTC+08:00) Kuala Lumpur, Singapore Singapore"
},
{
"id": "Europe/Helsinki",
"name": "(UTC+02:00) Helsinki, Kyiv, Riga, Sofia, Tallinn, Vilnius"
},
{
"id": "Europe/London",
"name": "(UTC) Dublin, Edinburgh, Lisbon, London Europe/Belfast,GB,GB-Eire"
}
]
HTTP status code 400
Bad Request
Body
Media type: text/plain
Type: any
Example:
Invalid GUID: '2B8ED95B0EC911E79675005056A75D9'
Entity representing a timeZone.
Get the timeZone with timeZoneId = {timeZoneId}.
get /timeZones/{timeZoneId}
Get the timeZone with timeZoneId = {timeZoneId}.
URI Parameters
- timeZoneId: required(string)
HTTP status code 200
Body
Media type: application/json
Type: object
Properties- id: required(string)
- name: required(string)
Example:
{
"id": "Europe/Helsinki",
"name": "(UTC+02:00) Helsinki, Kyiv, Riga, Sofia, Tallinn, Vilnius"
}
HTTP status code 404
Not Found
Body
Media type: text/plain
Type: any
Example:
HTTP 404 Not Found
/prsProfiles
Collection of prsProfiles.
Get a list of prsProfiles.
get /prsProfiles
Get a list of prsProfiles.
Query Parameters
- any fields: (string)
&field1=value1&field2=value2...
Values may contain patterns * and ?
Valid searchable fields: id, name, reasonExample:
reason = VACATION
- sort: (string)
Can be sorted by any field. Default sort is id, name. "-" in front of field name will sort descending. With the postfix ",LOCALE-xx" where xx can be for example en,en-US,de,fi, the user may sort with given locale that are based on standard "IETF BCP 47".
Example:
sort=id, name,LOCALE-en
- offset: (integer - default: 0)
Skip over a number of elements by specifying an offset value for the query
Example:
20
- limit: (integer - default: 100)
Limit number of elements by specifying a limit value for the query
Example:
100
HTTP status code 200
Body
Media type: application/json
Type: array of object
Items: prsProfiles
- id: required(string - minLength: 32 - maxLength: 32)
Added by the system
- name: required(string)
- reason: required(string)
Example:
[
{
"id": "02770429F80BDF1191AD001CC4D98816",
"name": "Default",
"reason": "NONE"
},
{
"id": "04770429F80BDF1191AD001CC4D98816",
"name": "Lunch",
"reason": "NONE"
},
{
"id": "12684EA701114105A1D73F532AB80C28",
"name": "Vacation",
"reason": "VACATION"
},
{
"id": "2EA19675EA7DDF11B644463500000031",
"name": "Meeting / Deny calls (Def: 1 hour)",
"reason": "MEETING"
}
]
HTTP status code 400
Bad Request
Body
Media type: text/plain
Type: any
Example:
Invalid GUID: '2B8ED95B0EC911E79675005056A75D9'
Entity representing a prsProfile.
Get the prsProfile with prsProfileId = {prsProfileId}.
get /prsProfiles/{prsProfileId}
Get the prsProfile with prsProfileId = {prsProfileId}.
URI Parameters
- prsProfileId: required(string)
HTTP status code 200
Body
Media type: application/json
Type: object
Properties- id: required(string - minLength: 32 - maxLength: 32)
Added by the system
- name: required(string)
- reason: required(string)
Example:
{
"id":"02770429F80BDF1191AD001CC4D98816",
"name":"Default",
"reason":"NONE"
}
HTTP status code 404
Not Found
Body
Media type: text/plain
Type: any
Example:
HTTP 404 Not Found
/messagingServices
Collection of messagingServices.
Get a list of messagingServices.
Add a new messagingService.
get /messagingServices
Get a list of messagingServices.
Query Parameters
- any fields: (string)
&field1=value1&field2=value2...
Values may contain patterns * and ?
Valid searchable fields: id, typeExample:
type = facebook
- sort: (string)
Can be sorted by any field. Default sort is name. "-" in front of field name will sort descending. With the postfix ",LOCALE-xx" where xx can be for example en,en-US,de,fi, the user may sort with given locale that are based on standard "IETF BCP 47".
Example:
sort=name,LOCALE-en
- offset: (integer - default: 0)
Skip over a number of elements by specifying an offset value for the query
Example:
20
- limit: (integer - default: 100)
Limit number of elements by specifying a limit value for the query
Example:
100
HTTP status code 200
Body
Media type: application/json
Type: array of object
Items: messagingServices
- id: required(string - minLength: 32 - maxLength: 32)
Added by the system
- name: required(string)
- type: required(one of facebook, twilio, sap365, yaas)
- connection: required(string)
- authenticationScope: (string)
- authenticationUrl: (string)
Example:
[
{
"id": "B8F0CA9CFC0411D3A2230050DA29E0F4",
"type": "facebook",
"name": "Facebook connection",
"connection": "https://serviceaddress/"
},
{
"id": "B8F0CA9CFC0411D3A2230050DA29E0F5",
"type": "twilio",
"name": "Twilio SMS",
"connection": "https://serviceaddress2/"
}
]
HTTP status code 400
Bad Request
Body
Media type: text/plain
Type: any
Example:
Invalid GUID: '2B8ED95B0EC911E79675005056A75D9'
post /messagingServices
Add a new messagingService.
Body
Media type: application/json
Type: object
Properties- id: required(string - minLength: 32 - maxLength: 32)
Added by the system
- name: required(string)
- type: required(one of facebook, twilio, sap365, yaas)
- connection: required(string)
- authenticationScope: (string)
- authenticationUrl: (string)
Example:
{
"type": "facebook",
"name": "Facebook connection",
"connection": "https://serviceaddress/"
}
HTTP status code 201
Returns the created id.
Body
Media type: text/html
Type: any
Example:
F5168FBDD6914C8DB1C6D0BD64563A39
Entity representing a messagingService.
Get the messagingService with messagingServiceId = {messagingServiceId}.
Update the messagingService with messagingServiceId = {messagingServiceId}.
Note: Provide all properties since all fields are updated.
Delete the messagingService.
get /messagingServices/{messagingServiceId}
Get the messagingService with messagingServiceId = {messagingServiceId}.
URI Parameters
- messagingServiceId: required(string)
HTTP status code 200
Body
Media type: application/json
Type: object
Properties- id: required(string - minLength: 32 - maxLength: 32)
Added by the system
- name: required(string)
- type: required(one of facebook, twilio, sap365, yaas)
- connection: required(string)
- authenticationScope: (string)
- authenticationUrl: (string)
Example:
{
"id": "B8F0CA9CFC0411D3A2230050DA29E0F4",
"type": "facebook",
"name": "Facebook connection",
"connection": "https://serviceaddress/"
}
HTTP status code 404
Not Found
Body
Media type: text/plain
Type: any
Example:
HTTP 404 Not Found
put /messagingServices/{messagingServiceId}
Update the messagingService with messagingServiceId = {messagingServiceId}.
Note: Provide all properties since all fields are updated.
URI Parameters
- messagingServiceId: required(string)
Body
Media type: application/json
Type: object
Properties- id: required(string - minLength: 32 - maxLength: 32)
Added by the system
- name: required(string)
- type: required(one of facebook, twilio, sap365, yaas)
- connection: required(string)
- authenticationScope: (string)
- authenticationUrl: (string)
HTTP status code 204
No content - The server has successfully fulfilled the request and there is no additional content to send in the response payload body.
delete /messagingServices/{messagingServiceId}
Delete the messagingService.
Collection of authentications.
Get a list of messaging service authentications.
Add Autehtication info to Messaging Service
get /messagingServices/{messagingServiceId}/authentications
Get a list of messaging service authentications.
URI Parameters
- messagingServiceId: required(string)
HTTP status code 200
Body
Media type: application/json
Type: array of object
Items: authentications
- id: required(string - minLength: 32 - maxLength: 32)
Added by the system
- authenticationId: (string - maxLength: 512)
- password: (string)
Example:
[
{
"id" : "AF8D906F2EDE40FC889303B52D26DA25",
"authenticationId":"my_login_id"
}
]
HTTP status code 400
Bad Request
Body
Media type: text/plain
Type: any
Example:
Invalid GUID: '2B8ED95B0EC911E79675005056A75D9'
post /messagingServices/{messagingServiceId}/authentications
Add Autehtication info to Messaging Service
URI Parameters
- messagingServiceId: required(string)
Body
Media type: application/json
Type: object
Properties- id: required(string - minLength: 32 - maxLength: 32)
Added by the system
- authenticationId: (string - maxLength: 512)
- password: (string)
Example:
{
"authenticationId":"my_login_id",
"password":"zzzxxxx"
}
HTTP status code 201
Returns the created id.
Body
Media type: text/html
Type: any
Example:
5D3A260F9F1D4BBFA5A3ADACFFE6C97B
Entity representing a authentication.
Get the authentication with authenticationId = {authenticationId}.
Update the authentication with authenticationId = {authenticationId}.
Note: Provide all properties since all fields are updated.
Delete the authentication.
get /messagingServices/{messagingServiceId}/authentications/{id}
Get the authentication with authenticationId = {authenticationId}.
URI Parameters
- messagingServiceId: required(string)
- id: required(string)
HTTP status code 200
Body
Media type: application/json
Type: object
Properties- id: required(string - minLength: 32 - maxLength: 32)
Added by the system
- authenticationId: (string - maxLength: 512)
- password: (string)
Example:
{
"id" : "AF8D906F2EDE40FC889303B52D26DA25",
"authenticationId":"my_login_id"
}
HTTP status code 404
Not Found
Body
Media type: text/plain
Type: any
Example:
HTTP 404 Not Found
put /messagingServices/{messagingServiceId}/authentications/{id}
Update the authentication with authenticationId = {authenticationId}.
Note: Provide all properties since all fields are updated.
URI Parameters
- messagingServiceId: required(string)
- id: required(string)
Body
Media type: application/json
Type: object
Properties- id: required(string - minLength: 32 - maxLength: 32)
Added by the system
- authenticationId: (string - maxLength: 512)
- password: (string)
HTTP status code 204
No content - The server has successfully fulfilled the request and there is no additional content to send in the response payload body.
delete /messagingServices/{messagingServiceId}/authentications/{id}
Delete the authentication.
URI Parameters
- messagingServiceId: required(string)
- id: required(string)
/replyTemplates
Collection of replyTemplates.
Get a list of replyTemplates.
get /replyTemplates
Get a list of replyTemplates.
Query Parameters
- any fields: (string)
&field1=value1&field2=value2...
Values may contain patterns * and ?
Valid searchable fields: keyword, queueId, language, nameExample:
keyword=sales, keyword=proble*,apple
- offset: (integer - default: 0)
Skip over a number of elements by specifying an offset value for the query
Example:
20
- limit: (integer - default: 100)
Limit number of elements by specifying a limit value for the query
Example:
100
HTTP status code 200
Body
Media type: application/json
Type: array of object
Items: replyTemplates
- id: required(string - minLength: 32 - maxLength: 32)
- name: required(string)
- description: (string - minLength: 1 - maxLength: 400)
- language: required(string - minLength: 2 - maxLength: 4)
- subject: (string - minLength: 0 - maxLength: 1024)
- contentType: required(one of Static, Interactive)
- attachmentCount: required(integer)
- body: required(string)
- keywords: (object)
- keyword: (array of string)
Example:
[
{
"id": "000BC39C7CC04554A95062CF4C6BBE06",
"body": "Hello {CUSTOMERNAME}\n\nThank you for your message",
"description": "this is a template",
"language": "EN",
"name": "template2",
"contentType": "Static",
"attachmentCount": 0,
"keywords": {
"keyword": [
"issue",
"problem",
"washing",
"machine"
]
}
},
{
"id": "611D51A367C54C2F8D30C032B48D847E",
"body": "hello",
"description": "jep",
"language": "EN",
"name": "template",
"contentType": "Interactive",
"attachmentCount": 3,
"keywords": {
"keyword": [
"instructions",
"info",
"installation",
"tv",
"television"
]
}
}
]
HTTP status code 400
Bad Request
Body
Media type: text/plain
Type: any
Example:
Invalid GUID: '2B8ED95B0EC911E79675005056A75D9'
Entity representing a replyTemplate.
Get the replyTemplate with replyTemplateId = {replyTemplateId}.
get /replyTemplates/{replyTemplateId}
Get the replyTemplate with replyTemplateId = {replyTemplateId}.
URI Parameters
- replyTemplateId: required(string)
HTTP status code 200
Body
Media type: application/json
Type: object
Properties- id: required(string - minLength: 32 - maxLength: 32)
- name: required(string)
- description: (string - minLength: 1 - maxLength: 400)
- language: required(string - minLength: 2 - maxLength: 4)
- subject: (string - minLength: 0 - maxLength: 1024)
- contentType: required(one of Static, Interactive)
- attachmentCount: required(integer)
- body: required(string)
- keywords: (object)
- keyword: (array of string)
Example:
{
"id": "000BC39C7CC04554A95062CF4C6BBE06",
"body": "Hello {CUSTOMERNAME}\n\nThank you for your message",
"description": "this is a template",
"language": "EN",
"name": "template2",
"contentType": "Static",
"attachmentCount": 1,
"keywords": {
"keyword": [
"issue",
"problem",
"washing",
"machine"
]
}
}
HTTP status code 404
Not Found
Body
Media type: text/plain
Type: any
Example:
HTTP 404 Not Found
Collection of attachments.
Get a list of attachments.
get /replyTemplates/{replyTemplateId}/attachments
Get a list of attachments.
URI Parameters
- replyTemplateId: required(string)
HTTP status code 200
Body
Media type: application/json
Type: array of object
Items: attachments
- id: required(string - minLength: 32 - maxLength: 32)
Added by the system
- size: required(integer)
- fileName: required(string)
- mimeType: required(string)
Example:
[
{
"size": 35917,
"fileName": "picture.PNG",
"mimeType": "image/png",
"id": "D147D4339D1448158153B61D1F621AF9"
},
{
"size": 56698,
"fileName": "picture2.jpg",
"mimeType": "image/jpeg",
"id": "3D612DF2E3694A56A9253365CA8EEEFE"
}
]
HTTP status code 400
Bad Request
Body
Media type: text/plain
Type: any
Example:
Invalid GUID: '2B8ED95B0EC911E79675005056A75D9'
Entity representing a attachment.
Get the attachment with attachmentId = {attachmentId}.
get /replyTemplates/{replyTemplateId}/attachments/{attachmentId}
Get the attachment with attachmentId = {attachmentId}.
URI Parameters
- replyTemplateId: required(string)
- attachmentId: required(string)
HTTP status code 200
Body
Media type: application/json
Type: object
Properties- id: required(string - minLength: 32 - maxLength: 32)
Added by the system
- size: required(integer)
- fileName: required(string)
- mimeType: required(string)
Example:
{
"size": 56698,
"fileName": "picture2.jpg",
"mimeType": "image/jpeg",
"id": "3D612DF2E3694A56A9253365CA8EEEFE"
}
HTTP status code 404
Not Found
Body
Media type: text/plain
Type: any
Example:
HTTP 404 Not Found
/customIvrs
Collection of customIvrs.
Get a list of customIvrs.
get /customIvrs
Get a list of customIvrs.
Query Parameters
- any fields: (string)
&field1=value1&field2=value2...
Values may contain patterns * and ?
Valid searchable fields: name, description, address, name, active, attributeName, attributeValueExample:
name=my ivr
- sort: (string)
Can be sorted by any field. Default sort is name. "-" in front of field name will sort descending. With the postfix ",LOCALE-xx" where xx can be for example en,en-US,de,fi, the user may sort with given locale that are based on standard "IETF BCP 47".
Example:
sort=name,LOCALE-en
- offset: (integer - default: 0)
Skip over a number of elements by specifying an offset value for the query
Example:
20
- limit: (integer - default: 100)
Limit number of elements by specifying a limit value for the query
Example:
100
HTTP status code 200
Body
Media type: application/json
Type: array of object
Items: customIvrs
- id: required(string - minLength: 32 - maxLength: 32)
Added by the system
- addresses: (object)
- address: (array of string)
- name: required(string)
- currentSourceCodeVersionId: (string - minLength: 32 - maxLength: 32)
- active: required(boolean)
Example:
[
{
"addresses": {
"address": [
"243",
"234"
]
},
"name": "My Menu Ivr",
"description": "Queue selection IVR",
"currentSourceCodeVersionId": "BA78FF64DCEC40B885AF6D2C337D7C5D",
"active": true,
"id": "A5AF21AB416849BBA6FDBE92E5C15B69"
},
{
"addresses": {
"address": [
"400"
]
},
"name": "Callback IVR",
"description": "IVR to leave callbacks",
"currentSourceCodeVersionId": "58DF7291C3B841C8A3B2A5D8282895D8",
"active": false,
"id": "CA7F01B89F9D4640945DFBDF4142729D"
}
]
HTTP status code 400
Bad Request
Body
Media type: text/plain
Type: any
Example:
Invalid GUID: '2B8ED95B0EC911E79675005056A75D9'
Entity representing a customIvr.
Get the customIvr with customIvrId = {customIvrId}.
get /customIvrs/{customIvrId}
Get the customIvr with customIvrId = {customIvrId}.
URI Parameters
- customIvrId: required(string)
HTTP status code 200
Body
Media type: application/json
Type: object
Properties- id: required(string - minLength: 32 - maxLength: 32)
Added by the system
- addresses: (object)
- address: (array of string)
- name: required(string)
- currentSourceCodeVersionId: (string - minLength: 32 - maxLength: 32)
- active: required(boolean)
Example:
{
"addresses": {
"address": [
"243",
"234"
]
},
"name": "My Menu Ivr",
"description": "Queue selection IVR",
"currentSourceCodeVersionId": "BA78FF64DCEC40B885AF6D2C337D7C5D",
"active": true,
"id": "A5AF21AB416849BBA6FDBE92E5C15B69"
}
HTTP status code 404
Not Found
Body
Media type: text/plain
Type: any
Example:
HTTP 404 Not Found
Collection of sourceCodes.
Get a list of sourceCodes.
get /customIvrs/{customIvrId}/sourceCodes
Get a list of sourceCodes.
URI Parameters
- customIvrId: required(string)
HTTP status code 200
Body
Media type: application/json
Type: array of object
Items: sourceCodes
- id: required(string - minLength: 32 - maxLength: 32)
Added by the system
- versionNumber: required(number)
- creationDate: required(datetime)
- modificationDate: (datetime)
- description: (string)
Example:
[
{
"modificationDate": "2020-01-21T13:10:47.493Z",
"versionNumber": 1,
"creationDate": "2020-01-21T13:10:33.293Z",
"id": "C907169011AA48D8A6EE8F8F12423372"
}
]
HTTP status code 400
Bad Request
Body
Media type: text/plain
Type: any
Example:
Invalid GUID: '2B8ED95B0EC911E79675005056A75D9'
Entity representing a sourceCode.
Get the sourceCode with sourceCodeId = {sourceCodeId}.
get /customIvrs/{customIvrId}/sourceCodes/{sourceCodeId}
Get the sourceCode with sourceCodeId = {sourceCodeId}.
URI Parameters
- customIvrId: required(string)
- sourceCodeId: required(string)
HTTP status code 200
Body
Media type: application/json
Type: object
Properties- id: required(string - minLength: 32 - maxLength: 32)
Added by the system
- versionNumber: required(number)
- creationDate: required(datetime)
- modificationDate: (datetime)
- description: (string)
- sourceCode: (string)
Example:
{
"description": "",
"modificationDate": "2020-01-21T13:12:22Z",
"sourceCode": "<?xml version=\"1.0\" encoding=\"UTF-8\"?><vxml xmlns:bcm=\"http://bcm.sinch.com\" version=\"2.1\"><form id=\"form1\"><block name=\"blco1\"><audio src=\"42079722-0892-4A96-8163-82C5E1BFD686\" xml:lang=\"IT\"/></block></form></vxml>",
"versionNumber": 1,
"creationDate": "2020-01-21T13:10:33.293Z",
"id": "C907169011AA48D8A6EE8F8F12423372"
}
HTTP status code 404
Not Found
Body
Media type: text/plain
Type: any
Example:
HTTP 404 Not Found
Entity representing a currentSourceCodeVersion.
Get the currentSourceCodeVersion with currentSourceCodeVersionId = {currentSourceCodeVersionId}.
get /customIvrs/{customIvrId}/currentSourceCodeVersion
Get the currentSourceCodeVersion with currentSourceCodeVersionId = {currentSourceCodeVersionId}.
URI Parameters
- customIvrId: required(string)
HTTP status code 200
Body
Media type: application/json
Type: object
Properties- id: required(string - minLength: 32 - maxLength: 32)
Added by the system
- versionNumber: required(number)
- creationDate: required(datetime)
- modificationDate: (datetime)
- description: (string)
- sourceCode: (string)
Example:
{
"description": "",
"modificationDate": "2020-01-21T13:12:22Z",
"sourceCode": "<?xml version=\"1.0\" encoding=\"UTF-8\"?><vxml xmlns:bcm=\"http://bcm.sinch.com\" version=\"2.1\"><form id=\"form1\"><block name=\"blco1\"><audio src=\"42079722-0892-4A96-8163-82C5E1BFD686\" xml:lang=\"IT\"/></block></form></vxml>",
"versionNumber": 1,
"creationDate": "2020-01-21T13:10:33.293Z",
"id": "C907169011AA48D8A6EE8F8F12423372"
}
HTTP status code 404
Not Found
Body
Media type: text/plain
Type: any
Example:
HTTP 404 Not Found
Collection of attributes.
Get a list of attributes.
Add a new attribute.
get /customIvrs/{customIvrId}/attributes
Get a list of attributes.
URI Parameters
- customIvrId: required(string)
Query Parameters
- any fields: (string)
&field1=value1&field2=value2...
Values may contain patterns * and ?
Valid searchable fields: name, languageExample:
name=HelpDesk
HTTP status code 200
Body
Media type: application/json
Type: array of object
Items: attributes
- name: required(string)
- langauge: required(string)
- value: required(string)
Example:
[
{
name: "Name",
language: "EN",
value: "Sales"
},
{
name: "Name",
language: "FI",
value: "Myynti"
}
]
HTTP status code 400
Bad Request
Body
Media type: text/plain
Type: any
Example:
Invalid GUID: '2B8ED95B0EC911E79675005056A75D9'
post /customIvrs/{customIvrId}/attributes
Add a new attribute.
URI Parameters
- customIvrId: required(string)
Body
Media type: application/json
Type: object
Properties- name: required(string)
- langauge: required(string)
- value: required(string)
Example:
{
name: "Name",
language: "EN",
value: "Advanced"
}
HTTP status code 201
Returns the created id.
Body
Media type: text/html
Type: any
Example:
F5168FBDD6914C8DB1C6D0BD64563A39
/audioPrompts
Collection of audioPrompts.
Get a list of audioPrompts.
get /audioPrompts
Get a list of audioPrompts.
Query Parameters
- any fields: (string)
&field1=value1&field2=value2...
Values may contain patterns * and ?
Valid searchable fields: name, description, promptType, sourceType, loopTypeExample:
promptType=InQueue
- sort: (string)
Can be sorted by any field. Default sort is name. "-" in front of field name will sort descending. With the postfix ",LOCALE-xx" where xx can be for example en,en-US,de,fi, the user may sort with given locale that are based on standard "IETF BCP 47".
Example:
sort=name,LOCALE-en
- offset: (integer - default: 0)
Skip over a number of elements by specifying an offset value for the query
Example:
20
- limit: (integer - default: 100)
Limit number of elements by specifying a limit value for the query
Example:
100
HTTP status code 200
Body
Media type: application/json
Type: array of object
Items: audioPrompts
- id: required(string - minLength: 32 - maxLength: 32)
Added by the system
- name: required(string)
- description: (string)
- promptType: required(one of BlindTransferFailed, ExtAgentAcceptQuestion, ExternalTransfer, ExternalTransferFailed, InQueue, InQueueBusy, InternalTransfer, IVRPrompt, OfferingPrompt, OnHold, PreWelcome, QueueFull, ServiceClosed, Welcome, WelcomeBusy)
- loopType: required(one of ALL, LAST, RANDOM)
- sourceType: required(one of Custom, QueueBuiltIn, UserBuiltIn, OptionalBuiltIn)
Example:
[
{
"name": "Welcome (Built-In Default Prompt)",
"description": "Welcome message (built-in default audio prompt)",
"promptType": "Welcome",
"sourceType": "QueueBuiltIn",
"loopType": "ALL",
"id": "F0EDAAE15EAB4167A84DD0CC69680A4F"
},
{
"name": "InQueue (Built-In Default Prompt)",
"description": "In queue message (the built-in default audio prompt)",
"promptType": "InQueue",
"sourceType": "QueueBuiltIn",
"loopType": "RANDOM",
"id": "EFF0CF25BC374F2982225C83BB21B3F3"
},
{
"name": "OnHold (Built-In Default Prompt)",
"description": "Music played when customer is on-hold (built-in default audio prompt)",
"promptType": "OnHold",
"sourceType": "QueueBuiltIn",
"loopType": "ALL",
"id": "3A1C8A257DFD4F0781F55FA1BA188F97"
}
]
HTTP status code 400
Bad Request
Body
Media type: text/plain
Type: any
Example:
Invalid GUID: '2B8ED95B0EC911E79675005056A75D9'
Entity representing a audioPrompt.
Get the audioPrompt with audioPromptId = {audioPromptId}.
get /audioPrompts/{audioPromptId}
Get the audioPrompt with audioPromptId = {audioPromptId}.
URI Parameters
- audioPromptId: required(string)
HTTP status code 200
Body
Media type: application/json
Type: object
Properties- id: required(string - minLength: 32 - maxLength: 32)
Added by the system
- name: required(string)
- description: (string)
- promptType: required(one of BlindTransferFailed, ExtAgentAcceptQuestion, ExternalTransfer, ExternalTransferFailed, InQueue, InQueueBusy, InternalTransfer, IVRPrompt, OfferingPrompt, OnHold, PreWelcome, QueueFull, ServiceClosed, Welcome, WelcomeBusy)
- loopType: required(one of ALL, LAST, RANDOM)
- sourceType: required(one of Custom, QueueBuiltIn, UserBuiltIn, OptionalBuiltIn)
Example:
{
"name": "InQueue (Built-In Default Prompt)",
"description": "In queue message (the built-in default audio prompt)",
"promptType": "InQueue",
"sourceType": "QueueBuiltIn",
"loopType": "RANDOM",
"id": "EFF0CF25BC374F2982225C83BB21B3F3"
}
HTTP status code 404
Not Found
Body
Media type: text/plain
Type: any
Example:
HTTP 404 Not Found
/cpExtensions
Collection of cpExtensions.
Get a list of cpExtensions.
get /cpExtensions
Get a list of cpExtensions.
Query Parameters
- any fields: (string)
&field1=value1&field2=value2...
Values may contain patterns * and ?
Valid searchable fields: name, description, title, url, icon, hiddenExample:
name=Konowledge*
- sort: (string)
Can be sorted by any field. Default sort is name. "-" in front of field name will sort descending. With the postfix ",LOCALE-xx" where xx can be for example en,en-US,de,fi, the user may sort with given locale that are based on standard "IETF BCP 47".
Example:
sort=name,LOCALE-en
- offset: (integer - default: 0)
Skip over a number of elements by specifying an offset value for the query
Example:
20
- limit: (integer - default: 100)
Limit number of elements by specifying a limit value for the query
Example:
100
HTTP status code 200
Body
Media type: application/json
Type: array of object
Items: cpExtensions
- id: required(string - minLength: 32 - maxLength: 32)
Added by the system
- name: (string)
Added by the system
- description: (string)
Added by the system
- title: required(string)
Translated title of the extension
- url: required(string)
URI location of the 3rd. party extension
- icon: required(string)
Sinch Icon library reference
- queues: required(array of string)
The queues this extension should be enabled for
- hidden: required(boolean)
Should the extension be visible or run in hidden mode
Example:
[
{
"title": "MyExtension",
"hidden": false,
"url": "https://example.com/frame.html",
"icon": "sap-icon://business-card",
"queues": ["B8F0CA9CFC0411D3A2230050DA29E0F4"],
"id": "657160EEDE6943348257075871732C5E"
},
{
"title": "MyExtension2",
"hidden": false,
"url": "https://example.com/frame2.html",
"icon": "sap-icon://travel-request",
"queues": ["B8F0CA9CFC0411D3A2230050DA29E0F4", "409FBE1B217643089F291B8796174643", "7B2EB5F5DF62439690CF6D180A2009C8"],
"id": "94C89D627D0340A2807B18D8B9C4CD90"
},
{
"title": "MyExtension3",
"hidden": true,
"url": "https://example.com/frame3.html",
"icon": "sap-icon://study-leave",
"queues": ["B8F0CA9CFC0411D3A2230050DA29E0F4", "409FBE1B217643089F291B8796174643"],
"id": "CDEFCDBFDFE547EBA03DE7097BAF0672"
}
]
HTTP status code 400
Bad Request
Body
Media type: text/plain
Type: any
Example:
Invalid GUID: '2B8ED95B0EC911E79675005056A75D9'
Entity representing a cpExtension.
Get the cpExtension with cpExtensionId = {cpExtensionId}.
get /cpExtensions/{cpExtensionId}
Get the cpExtension with cpExtensionId = {cpExtensionId}.
URI Parameters
- cpExtensionId: required(string)
HTTP status code 200
Body
Media type: application/json
Type: object
Properties- id: required(string - minLength: 32 - maxLength: 32)
Added by the system
- name: (string)
Added by the system
- description: (string)
Added by the system
- title: required(string)
Translated title of the extension
- url: required(string)
URI location of the 3rd. party extension
- icon: required(string)
Sinch Icon library reference
- queues: required(array of string)
The queues this extension should be enabled for
- hidden: required(boolean)
Should the extension be visible or run in hidden mode
Example:
{
"title": "MyExtension",
"hidden": false,
"url": "https://example.com/frame.html",
"icon": "sap-icon://travel-request",
"queues": ["B8F0CA9CFC0411D3A2230050DA29E0F4"],
"id": "94C89D627D0340A2807B18D8B9C4CD90"
}
HTTP status code 404
Not Found
Body
Media type: text/plain
Type: any
Example:
HTTP 404 Not Found
/disruptionSets
Collection of disruptionSets.
Get a list of disruptionSets.
get /disruptionSets
Get a list of disruptionSets.
Query Parameters
- any fields: (string)
&field1=value1&field2=value2...
Values may contain patterns * and ?
Valid searchable fields: name, externalIdExample:
name=Electricity*
- sort: (string)
Can be sorted by any field. Default sort is name. "-" in front of field name will sort descending. With the postfix ",LOCALE-xx" where xx can be for example en,en-US,de,fi, the user may sort with given locale that are based on standard "IETF BCP 47".
Example:
sort=name,LOCALE-en
- offset: (integer - default: 0)
Skip over a number of elements by specifying an offset value for the query
Example:
20
- limit: (integer - default: 100)
Limit number of elements by specifying a limit value for the query
Example:
100
HTTP status code 200
Body
Media type: application/json
Type: array of object
Items: disruptionSets
- id: required(string - minLength: 32 - maxLength: 32)
Added by the system
- name: required(string)
- externalId: required(string)
Example:
[
{
"name": "electricity",
"externalId": "set1",
"id": "14E14D7338C44EA5904A1E18180186FF"
},
{
"name": "water",
"externalId": "set2",
"id": "57EA87659FF147948D5554B682F8201E"
}
]
HTTP status code 400
Bad Request
Body
Media type: text/plain
Type: any
Example:
Invalid GUID: '2B8ED95B0EC911E79675005056A75D9'
Entity representing a disruptionSet.
Get the disruptionSet with disruptionSetId = {disruptionSetId}.
get /disruptionSets/{disruptionSetId}
Get the disruptionSet with disruptionSetId = {disruptionSetId}.
URI Parameters
- disruptionSetId: required(string)
HTTP status code 200
Body
Media type: application/json
Type: object
Properties- id: required(string - minLength: 32 - maxLength: 32)
Added by the system
- name: required(string)
- externalId: required(string)
Example:
{
"name": "electricity",
"externalId": "set1",
"id": "14E14D7338C44EA5904A1E18180186FF"
}
HTTP status code 404
Not Found
Body
Media type: text/plain
Type: any
Example:
HTTP 404 Not Found
Collection of events.
Get a list of events.
get /disruptionSets/{disruptionSetId}/events
Get a list of events.
URI Parameters
- disruptionSetId: required(string)
Query Parameters
- active: (boolean)
search for active events
Example:
active=true
- activeFrom: (string)
Search for events that have the activeFrom value after the given UTC time
Example:
activeFrom=2020-06-29T12:00:00.000Z
- activeFromEnd: (string)
Search for events that have the activeFrom value before the given UTC time
Example:
activeFromEnd=2020-07-29T12:00:00.000Z
- activeTo: (string)
Search for events that have the activeTo value after the given UTC time
Example:
activeTo=2020-04-29T12:00:00.000Z
- activeToEnd: (string)
Search for events that have the activeTo value before the given UTC time
Example:
activeToEnd=2020-07-29T12:00:00.000Z
- created: (string)
Search for events that have the created value after the given UTC time
Example:
created=2020-06-29T12:00:00.000Z
- createdEnd: (string)
Search for events that have the created value before the given UTC time
Example:
createdEnd=2020-07-29T12:00:00.000Z
- modified: (string)
Search for events that have the modified value after the given UTC time
Example:
modified=2020-04-29T12:00:00.000Z
- modifiedEnd: (string)
Search for events that have the modified value before the given UTC time
Example:
modified=2020-07-29T12:00:00.000Z
HTTP status code 200
Body
Media type: application/json
Type: array of object
Items: events
- id: required(string - minLength: 32 - maxLength: 32)
Added by the system
- remarks: (string)
- activeFrom: (datetime)
- activeTo: (datetime)
- modified: (datetime)
- created: (datetime)
- items: required(array of object)
Items: items
- id: required(string)
- externalid: required(string)
- type: required(one of WHY, WHERE, WHEN)
Example:
[
{
"id": "C21269BEA18B4146A219202DD8966FFA",
"modified": "2020-12-29T12:01:00.000Z",
"created": "2020-12-29T12:01:00.000Z",
"items": {
"item": [
{
"id": "4207972208924A96816382C5E1BFD686",
"externalId": "05",
"type": "WHY"
},
{
"id": "8207972208924A96816382C5E18FD686",
"externalId": "00100",
"type": "WHERE"
},
{
"id": "6207972208924A97816382C5E1BFD686",
"externalId": "14",
"type": "WHEN"
}
]
}
},
{
"id": "C21269BEA18B4146A219202DD8966FFA",
"modified": "2020-12-28T12:01:00.000Z",
"created": "2020-12-28T12:01:00.000Z",
"activeFrom": "2021-01-06T13:29:34.580Z",
"activeTo": "2021-01-08T13:29:34.580Z",
"items": {
"item": [
{
"id": "4207972208924A96816382C5E1BFD686",
"externalId": "05",
"type": "WHY"
},
{
"id": "8207972208924A96816382C5E18FD686",
"externalId": "00200",
"type": "WHERE"
},
{
"id": "6207972208924A97816382C5E1BFD686",
"externalId": "19",
"type": "WHEN"
}
]
}
}
]
HTTP status code 400
Bad Request
Body
Media type: text/plain
Type: any
Example:
Invalid GUID: '2B8ED95B0EC911E79675005056A75D9'
post /disruptionSets/{disruptionSetId}/events
URI Parameters
- disruptionSetId: required(string)
Body
Media type: application/json
Type: object
Properties- id: required(string - minLength: 32 - maxLength: 32)
Added by the system
- remarks: (string)
- activeFrom: (datetime)
- activeTo: (datetime)
- items: required(array of object)
Either id or externalId and type are required for items
Items: items
- id: required(string)
- externalid: required(string)
- type: required(one of WHY, WHERE, WHEN)
Examples:
Items by id:
{
"activeFrom": "2021-03-29T12:01:00.000Z",
"activeTo": "2021-04-29T12:01:00.000Z",
"items": {
"item": [
{
"id": "4207972208924A96816382C5E1BFD686"
},
{
"id": "921AF17CDD09411D91700F0B32F6C8A2"
},
{
"id": "61809A9F49004C4399932A372ABF7692"
}
]
}
}
Items by externalId:
{
"activeFrom": "2021-03-29T12:01:00.000Z",
"activeTo": "2021-04-29T12:01:00.000Z",
"items": {
"item": [
{
"externalId": "05",
"type": "WHY"
},
{
"externalId": "90100",
"type": "WHERE"
},
{
"externalId": "1400",
"type": "WHEN"
}
]
}
}
HTTP status code 201
Returns the created id.
Body
Media type: text/html
Type: any
Example:
F5168FBDD6914C8DB1C6D0BD64563A39
Entity representing a event.
Get the event with eventId = {eventId}.
Update the event with eventId = {eventId}.
Note: Provide all properties since all fields are updated.
Delete the event.
get /disruptionSets/{disruptionSetId}/events/{eventId}
Get the event with eventId = {eventId}.
URI Parameters
- disruptionSetId: required(string)
- eventId: required(string)
HTTP status code 200
Body
Media type: application/json
Type: object
Properties- id: required(string - minLength: 32 - maxLength: 32)
Added by the system
- remarks: (string)
- activeFrom: (datetime)
- activeTo: (datetime)
- modified: (datetime)
- created: (datetime)
- items: required(array of object)
Items: items
- id: required(string)
- externalid: required(string)
- type: required(one of WHY, WHERE, WHEN)
Example:
{
"id": "C21269BEA18B4146A219202DD8966FFA",
"modified": "2020-12-29T12:01:00.000Z",
"created": "2020-12-29T12:01:00.000Z",
"items": {
"item": [
{
"id": "4207972208924A96816382C5E1BFD686",
"externalId": "05",
"type": "WHY"
},
{
"id": "8207972208924A96816382C5E18FD686",
"externalId": "00100",
"type": "WHERE"
},
{
"id": "6207972208924A97816382C5E1BFD686",
"externalId": "14",
"type": "WHEN"
}
]
}
}
HTTP status code 404
Not Found
Body
Media type: text/plain
Type: any
Example:
HTTP 404 Not Found
put /disruptionSets/{disruptionSetId}/events/{eventId}
Update the event with eventId = {eventId}.
Note: Provide all properties since all fields are updated.
URI Parameters
- disruptionSetId: required(string)
- eventId: required(string)
Body
Media type: application/json
Type: object
Properties- id: required(string - minLength: 32 - maxLength: 32)
Added by the system
- remarks: (string)
- activeFrom: (datetime)
- activeTo: (datetime)
- items: required(array of object)
Either id or externalId and type are required for items
Items: items
- id: required(string)
- externalid: required(string)
- type: required(one of WHY, WHERE, WHEN)
HTTP status code 204
No content - The server has successfully fulfilled the request and there is no additional content to send in the response payload body.
delete /disruptionSets/{disruptionSetId}/events/{eventId}
Delete the event.
URI Parameters
- disruptionSetId: required(string)
- eventId: required(string)
Collection of items.
Get a list of items.
get /disruptionSets/{disruptionSetId}/items
Get a list of items.
URI Parameters
- disruptionSetId: required(string)
Query Parameters
- any fields: (string)
&field1=value1&field2=value2...
Values may contain patterns * and ?
Valid searchable fields: externalId, name, type, description, promptId, promptName, promptExternalIdExample:
externalId=001*
HTTP status code 200
Body
Media type: application/json
Type: array of object
Items: items
- id: required(string - minLength: 32 - maxLength: 32)
Added by the system
- externalId: required(string)
- name: required(string)
- type: required(one of WHY, WHERE, WHEN)
- description: (string)
- promptId: (string - minLength: 32 - maxLength: 32)
- promptName: (string)
- promptExternalId: (string)
- attributes: (array of object)
Attributes of the disruption item to define values when IVR Prompt and SayAs elements are used.
Items: items
- name: required(one of SayAsValue, SayAsDatatype, SayAsGender, SayAsDeclension)
- language: required(string)
- value: required(string)
Example:
[
{
"attributes": {
"attribute": [
{
"language": "EN",
"name": "SayAsDatatype",
"value": "digits"
},
{
"language": "EN",
"name": "SayAsValue",
"value": "00100"
}
]
},
"description": "Helsinki1",
"type": "WHERE",
"externalId": "1.00.100",
"name": "00100",
"id": "F487CFD95D18402B941900247F12FD46"
},
{
"description": "Service break",
"type": "WHY",
"externalId": "55",
"promptExternalId": "WHY_55",
"promptId": "C732A0C65336490B8D190F43E1B878F4",
"promptName": "WHY_12",
"name": "Service",
"id": "145D6121895A491DB60F03AE610248E7"
}
]
HTTP status code 400
Bad Request
Body
Media type: text/plain
Type: any
Example:
Invalid GUID: '2B8ED95B0EC911E79675005056A75D9'
Entity representing a item.
Get the item with itemId = {itemId}.
get /disruptionSets/{disruptionSetId}/items/{itemId}
Get the item with itemId = {itemId}.
URI Parameters
- disruptionSetId: required(string)
- itemId: required(string)
HTTP status code 200
Body
Media type: application/json
Type: object
Properties- id: required(string - minLength: 32 - maxLength: 32)
Added by the system
- externalId: required(string)
- name: required(string)
- type: required(one of WHY, WHERE, WHEN)
- description: (string)
- promptId: (string - minLength: 32 - maxLength: 32)
- promptName: (string)
- promptExternalId: (string)
- attributes: (array of object)
Attributes of the disruption item to define values when IVR Prompt and SayAs elements are used.
Items: items
- name: required(one of SayAsValue, SayAsDatatype, SayAsGender, SayAsDeclension)
- language: required(string)
- value: required(string)
Example:
{
"description": "Service break",
"type": "WHY",
"externalId": "55",
"promptExternalId": "WHY_55",
"promptId": "C732A0C65336490B8D190F43E1B878F4",
"promptName": "WHY_12",
"name": "Service",
"id": "145D6121895A491DB60F03AE610248E7"
}
HTTP status code 404
Not Found
Body
Media type: text/plain
Type: any
Example:
HTTP 404 Not Found