Genesys Cloud - Main

 View Only

Sign Up

  • 1.  Dynamic slot in a bot flow

    Posted 09-05-2025 06:39

    Hi,

    I want to use a dynamic slot list with approximately 2500 values in a bot flow. Configuring this manually in bot flow would be a lot of work. Alternatively, I could use it to retrieve the values from a data table using the data able API. However, the API returns a maximum of 500 results, so I'd need to make multiple API calls (5 API calls) per call interaction to get the complete list.

    Is there any smart way to deal with this?


    #ArchitectureandDesign
    #ConversationalAI(Bots,AgentAssist,etc.)

    ------------------------------
    Hafid Bourich
    Technisch Consultant
    ------------------------------


  • 2.  RE: Dynamic slot in a bot flow

    Posted 09-05-2025 07:58

    Hello Hafid, 

    I can think of several approaches you could do to handle your large slot list. 

    The first is using a database as an intermediate layer. Instead of making multiple API calls directly from the bot flow, you could set up a database as an intermediate layer. You would have to periodically sync the full dataset to this database. But this would allow you to create a single API endpoint that queuries this database instead of making multiple data table API calls. This approach should reduce the latency during conversations and eliminate the need for multiple API calls. 

    The second is Implement Caching, if your slot values dont change frequently, you could implement caching mechanism. Cache the complete list of values and refresh it periodically. This would eliminate the need for multiple API calls during each conversation. 

    The third is progressive loading, if possible to implement. A progressive loading approach where you only load relevant subsets of data based on initial user input. For example, if the slots are hierarchical or can be categorized, load only the relevant category first. 

    The fourth would be to optimize data structure, review if all 25000 values are necessary. Consider grouping or categorizing the values to reduce the initial load. Implement search/filter functionality to help users find relevant values more efficiently. 

    The fifth and final option would be a custom integration, this would require you to create a custom integration that aggregates the data table API results. This integration would need to handle the multiple API calls and combine the results before sending them to the bot. 

    These are just some ideas and the best solution would depend on several factors. 

    • How frequently the slot values changes
    • the performance requirements of your bot
    • the infrastructure available to you
    • the nature of the data

    Hope this helps!



    ------------------------------
    Cameron
    Online Community Manager/Moderator
    ------------------------------



  • 3.  RE: Dynamic slot in a bot flow

    Posted 09-08-2025 03:28

    Thank you Cameron

    What is the best way to cache the slot list in Genesys?



    ------------------------------
    Hafid Bourich
    Technisch Consultant
    ------------------------------



  • 4.  RE: Dynamic slot in a bot flow

    Posted 09-08-2025 10:07

    Hello Hafid, 

    I would recommend using dynamic list slot types, for when you have many values for a slot type. This is helpful if the slot values cannot be predetermined during a flows creation and this prevents the need to manually configure individual values. 

    As for best practices:

    1. Set minimum and maximum lengths for alphanumeric and numeric slot types
    2. We recommend utilizing AI-powered slots for greater flexibility 
    3. Configure customizable continuation prompts 
    4. We also recommend using the test widget in architect bot and digital bot flows to test multi-turn conversations and partial slot collection. 



    ------------------------------
    Cameron
    Online Community Manager/Moderator
    ------------------------------



  • 5.  RE: Dynamic slot in a bot flow
    Best Answer

    Posted 09-11-2025 23:53

    Hi Hafid,

    Regarding the size of your list (2500 values), the documentation seems to indicate this wouldn't be possible. (https://help.mypurecloud.com/articles/use-dynamic-list-slot-types-in-a-bot-flow/).

    There are 2 notes here indicating that:

    The maximum number of items, or values, is 500.
    String collections are limited to 2,000 items.

    I'm not sure if I'm misunderstanding, but it seems the Dynamic List Slot would only be able to hold 500 values (even though a string collection could hold 2000, which still wouldn't be enough for your case)

    Regarding a way to setting those values that wouldn't require many API calls. What makes you say configuring it manually in the flow would be a lot of work?

    Unless this is something that changes frequently, you could simply create a String Collection and set it in the flow using a "MakeList()" function, with all the values separated by commas.

    Like: MakeList("value1","value2","value3",......,"value500")



    ------------------------------
    Marcello Jabur
    ------------------------------