Welcome to Portal
Queues CRUD APIs
Authorization
HeaderKey | Description |
Authorization * | Zoho-oauthtoken<space><ACCESS_TOKEN> |
Accept * | Set to application/json. |
*All APIs are accessible under zohovoice.queues.ALL scope.
Create Queue
Use this API to create a queue.
POST https://voice.zoho.com/rest/json/zv/api/groups |
Scope: zohovoice.queues.CREATE
Parameters:
Param Name | DataType | Description |
data * | JSONObject | queue data as json. name and members, isBulk, config keys are mandatory. JSON Schema: { "members"*: [ "[AGENT_ID]" ], "extension":9999, "emailNotificationConfig": "3", "name"*: "Customer Support", "emailId": "QUEUE EMAILID to send notification to queue emails", "queueWaitMusic": { "audioId": "", "enableDefaultAnnouncements": true }, "qapId": "QUEUE AUDIO PROFILE ID", "config"*: { "mwtformat": "seconds", "mwtwnaformat": "seconds", "max-wait-time-with-no-agent": 60, "max-wait-time": 60, "strategy": "top-down" //top-down,ring-progressively,round-robin,ring-all } } |
Data JSON:
Key | Datatype | Description |
members * | JSON Array of Long | eg.[AGENT_ID1,AGENT_ID2] |
extension | Integer | max four digits allowed |
emailNotificationConfig | Integer | Do not notify -0, All Missed calls -1, Missedcalls with voicemail -2, All Calls - 3 |
name * | String | name of the queue |
emailId | String | email ID for queue call missed notification |
queueWaitMusic | JSONObject | { "audioId": "", "enableDefaultAnnouncements": true } |
qapId | Long | Queue audio profile ID |
isBulk * | boolean | false |
config * | JSONObject | Queue configuration "mwtformat": "seconds", "mwtwnaformat": "seconds", "max-wait-time-with-no-agent": 60, "max-wait-time": 60, "strategy": "top-down" } |
Response
SUCCESS
{
"code":"200",
"groupId":4061000001205001,
"status": "SUCCESS"
}
{
"code": "<App Error Code>",
"message": "<Error Message>",
"status": "ERROR"
}
Update Queue
Use this API to update a queue.
PUT https://voice.zoho.com/rest/json/zv/api/groups |
Scope: zohovoice.queues.UPDATE
Parameters:
Param Name | DataType | Description |
data * | JSONObject | queue data as json. name and members, isBulk, config, groupid keys are mandatory. JSON example: { "name":"Sales Queue", "emailId":"queue1@zoho.com", "qapId":"2069000002486021", "members":[ "2069000000005011", "2069000000044027" ], "emailNotificationConfig":"1", "queueWaitMusic":{ "mode":"audio", "audioId":"", "enableDefaultAnnouncements":false }, "isBulk":false, "extension":"9999", "config":{ "max-wait-time":60, "max-wait-time-with-no-agent":60, "strategy":"top-down", "mwtformat":"seconds", "mwtwnaformat":"seconds" }, "groupid":"2069000000250017" } |
agentChanged | Boolean | Set True, if members value order changed |
Data JSON:
Key | Datatype | Description |
members * | JSONArray of Long | eg. [AGENT_ID1,AGENT_ID2] |
extension | Integer | max four digits allowed |
emailNotificationConfig | Integer | |
name * | String | name of the queue |
emailId | String | email ID for queue call missed notification |
queueWaitMusic | JSONObject | { "audioId": "", "enableDefaultAnnouncements": true } |
qapId | Long | Queue audio profile ID |
isBulk * | boolean | false |
config * | JSONObject | Queue configuration "mwtformat": "seconds", "mwtwnaformat": "seconds", "max-wait-time-with-no-agent": 60, "max-wait-time": 60, "strategy": "top-down" } |
groupid | Long | unique ID of the queue |
Response
SUCCESS
{
"code":"200",
"groupId":4061000001205001,
"status": "SUCCESS"
}
FAILURE
{
"code": "<App Error Code>",
"message": "<Error Message>",
"status": "ERROR"
}
Delete Queue
Use this API to delete queues.
DELETE https://voice.zoho.com/rest/json/zv/api/groups |
Scope: zohovoice.queues.DELETE
Parameters:
Param Name | DataType | Description |
groupIds * | String | Comma-separated unique ID |
Response
SUCCESS
{
"code":"200",
"message":"success",
"status": "SUCCESS"
}
FAILURE
{
"code": "<App Error Code>",
"message": "<Error Message>",
"status": "ERROR"
}
Get All Queues
Use this API to get contact statuses.
GET https://voice.zoho.com/rest/json/zv/api/queues |
Scope: zohovoice.queues.READ
Parameters:
Param Name | Description | |
from * | int | Start index |
offset * | int | no of records |
queueid | Long | To get a single queue detail |
searchText | String | Search with queue name or queue email ID |
Response
SUCCESS
{
"code": "200",
"queues": [
{
"name": "TestQ",
"queueWaitMusic": {
"mode": "audio",
"audioId": "",
"enableDefaultAnnouncements": true
},
"emailId": "divya.e+queue@zohotest.com",
"enableDefaultAnnouncements": true,
"id": "2069000000407011",
"queueStrategy": "ring-progressively"
},
{
"name": "Bulk Add",
"queueWaitMusic": {
"mode": "audio",
"audioId": "",
"enableDefaultAnnouncements": true
},
"enableDefaultAnnouncements": true,
"id": "2069000001269159",
"queueStrategy": "top-down"
},
{
"name": "queueTestNew",
"queueWaitMusic": {
"mode": "audio",
"audioId": "",
"enableDefaultAnnouncements": true
},
"enableDefaultAnnouncements": true,
"id": "2069000000117023",
"queueStrategy": "ring-progressively"
}
],
"status": "SUCCESS"
}
FAILURE
{
"code": "<App Error Code>",
"message": "<Error Message>",
"status": "ERROR"
}
Create Queue Audio Profile
Use this API to create a queue audio profile.
POST https://voice.zoho.com/rest/json/zv/api/queueaudioprofile |
Scope: zohovoice.queues.CREATE
Parameters:
Param Name | DataType | Description |
data * | JSONObject | queue data as json. name keys is mandatory. JSON Schema: { "name": "US Support - Main ", "queueAudioConfig": { "announcementInterval": "70", "welcomeAnnouncement": { "mode": "text", "audioVoice": "2", "audioId": "", "audioLanguage": "en-US", "message": "Welcome greeting" }, "positionAnnouncement": { "offline": { "mode": "text", "audioVoice": "2", "audioId": "", "audioLanguage": "en-US", "message": "Agents are offline now." }, "busy": { "mode": "text", "audioVoice": "2", "audioId": "", "audioLanguage": "en-US", "message": "Agents are busy now" }, "waiting": { "mode": "text", "audioVoice": "2", "audioId": "", "audioLanguage": "en-US", "message": "We are connecting to agent. please hold on." } }, "specialAnnouncement": { "mode": "text", "audioVoice": "2", "audioId": "", "audioLanguage": "en-US", "message": "Custom announcement" }, "queueExit": { "mode": "text", "audioVoice": "2", "audioId": "", "audioLanguage": "en-US", "message": "Queue Breakout" } } } |
Response
SUCCESS
{
"code":"200",
"qapId":"2069000002486011",
"status":"SUCCESS"
}
FAILURE
{
"code": "<App Error Code>",
"message": "<Error Message>",
"status": "ERROR"
}
Update Queue Audio profile
Use this API to update a queue.
PUT https://voice.zoho.com/rest/json/zv/api/groups |
Scope: zohovoice.queues.UPDATE
Parameters
Param Name | DataType | Description |
data * | JSONObject | queue data as json. name keys is mandatory. JSON Schema: { "name": "US Support - Main ", "qapId":"2069000002486011", "queueAudioConfig": { "announcementInterval": "70", "welcomeAnnouncement": { "mode": "text", "audioVoice": "2", "audioId": "", "audioLanguage": "en-US", "message": "Welcome greeting" }, "positionAnnouncement": { "offline": { "mode": "text", "audioVoice": "2", "audioId": "", "audioLanguage": "en-US", "message": "Agents are offline now." }, "busy": { "mode": "text", "audioVoice": "2", "audioId": "", "audioLanguage": "en-US", "message": "Agents are busy now" }, "waiting": { "mode": "text", "audioVoice": "2", "audioId": "", "audioLanguage": "en-US", "message": "We are connecting to agent. please hold on." } }, "specialAnnouncement": { "mode": "text", "audioVoice": "2", "audioId": "", "audioLanguage": "en-US", "message": "Custom announcement" }, "queueExit": { "mode": "text", "audioVoice": "2", "audioId": "", "audioLanguage": "en-US", "message": "Queue Breakout" } } }
|
Response
SUCCESS
{
"code":"200",
"qapId":4061000001205001,
"status": "SUCCESS"
}
FAILURE
{
"code": "<App Error Code>",
"message": "<Error Message>",
"status": "ERROR"
}
Delete Queue Audio profile
Use this API to delete queues.
DELETE https://voice.zoho.com/rest/json/zv/api/queueaudioprofile |
Scope: zohovoice.queues.DELETE
Parameters:
Param Name | DataType | Description |
qapIds * | String | Comma-separated unique ID |
Response
SUCCESS
{
"queueAudioProfiles": [
{
"name": "US Support",
"id": "2069000002486011",
"status": "SUCCESS"
}
],
"code": "200",
"status": "SUCCESS"
}
{
"code": "<App Error Code>",
"message": "<Error Message>",
"status": "ERROR"
}
Get All QueueAudioProfile
Use this API to get contact statuses.
GET https://voice.zoho.com/rest/json/zv/api/queueaudioprofile?searchText=&from=0&offset=50 |
Scope: zohovoice.queues.READ
Response
SUCCESS
{
"queueAudioProfiles": [
{
"updatedTime": 1737957929919,
"updatedBy": "sales@zoho.com",
"name": "US Support - Main ",
"id": "2069000002486021"
}
],
"code": "200",
"status": "SUCCESS"
}
FAILURE
{
"code": "<App Error Code>",
"message": "<Error Message>",
"status": "ERROR"
}
Get Single QueueAudioProfile
Use this API to get contact statuses.
GET https://voice.zoho.com/rest/json/zv/api/queueaudioprofile/2069000002486021 |
Scope: zohovoice.queues.READ
Response
SUCCESS
{
"code": "200",
"queueAudioProfile": {
"updatedTime": 1737957929919,
"queueAudioConfig": {
"welcomeAnnouncement": {
"mode": "text",
"audioVoice": "2",
"audioId": "",
"audioLanguage": "en-US",
"message": ""
},
"positionAnnouncement":{
"offline": {
"mode": "text",
"audioVoice": "2",
"audioId": "",
"audioLanguage": "en-US",
"message": ""
},
"waiting": {
"mode": "text",
"audioVoice": "2",
"audioId": "",
"audioLanguage": "en-US",
"message": ""
},
"busy": {
"mode": "text",
"audioVoice": "2",
"audioId": "",
"audioLanguage": "en-US",
"message": ""
}
},
"queueExit": {
"mode": "text",
"audioVoice": "2",
"audioId": "",
"audioLanguage": "en-US",
"message": ""
},
"announcementInterval": "70",
"specialAnnouncement": {
"mode": "text",
"audioVoice": "2",
"audioId": "",
"audioLanguage": "en-US",
"message": ""
}
},
"updatedBy": "sales@zoho.com",
"name": "US Support - Main ",
"id": "2069000002486021"
},
"status": "SUCCESS"
}
FAILURE
{
"code": "<App Error Code>",
"message": "<Error Message>",
"status": "ERROR"
}
Subscribe to receive notifications from this article.