can you please tell me if there is a way to retrieve queues for a group of agents in one API request? I would like to create a list of agents and show attributes for all of them in one table. Is there a way to retrieve queues for each agent in one big API request? I do not see a straight-forward way to do it, and having trouble accepting Genesys, designed for very large deployments, would not have some way to retrieve information about large number of objects in one API request. Help!
I am not sure if this is a good way forward, since you will need to query up all the queues prior to even showing the first agent in the list. Meaning 200 queries to get info about 200 queues prior to showing ten agents. Clearly, you would need to somehow keep their information up-to-date outside Genesys to avoid constant requerying everytime you need to show a list of agents. And even if we did it, there is no events to notify a change in a queue...
I just update my internal roster daily and note in our reporting it's 'as of yesterday' not real time;
public static void GetQueueMembers()
{
if (QueueIds.Count == 0) // We need to know who we are working with to proceed
{
GetQueueDefs(false); // GetRoutingQueues
}
RoutingApi routingApi = new();
Dictionary<string, List<QueueMember>> results = new();
foreach (string id in QueueIds)
{
QueueMemberEntityListing x = routingApi.GetRoutingQueueMembers(id, 1, 100);
It assumes I've already updated my queue definitions before asking for this, but in the event it got called independently pulls them again so it has something to iterate.
It has all the limitations you would expect.
Some things just don't have a reasonable way to accomplish because they weren't a use case the platform was built in expectation of.