Service Catalog topic blocks in Virtual Agent powered by Now LLM

  • Release version: Yokohama
  • Updated January 30, 2025
  • 5 minutes to read
  • Summarize
    Summarized using AI
    This content was generated using new OpenAI-powered functionality. Results are provided on an as is basis and are not guaranteed to be accurate or complete.

    Summary of Service Catalog topic blocks in Virtual Agent powered by Now LLM

    ServiceNow customers can enhance Virtual Agent conversations by incorporating reusable Service Catalog topic blocks powered by Now LLM. These topic blocks enable users to request catalog items through a conversational, AI-driven experience that streamlines submission tasks. The feature supports different rendering types—conversation, pop-up, or window—depending on the catalog item’s complexity and configuration.

    Show full answer Show less

    Key Features

    • Request Catalog Item Block: Allows requesting catalog items via conversational AI, using parameters to specify the item, conversation context, search options, confirmation prompts, and end-state display.
    • Input Parameters: Include catalog item identification, conversation context in JSON, execution of contextual search, user confirmation requirement, and end-state card visibility.
    • Output Parameters: Provide details such as generated record sysid, record table, request status, catalog item questions, error messages, and whether Now LLM was used.
    • Rendering Types:
      • Conversation: Users answer catalog questions inline within Virtual Agent if item meets criteria (e.g., supported scripts, question limits, no unsupported variables).
      • Pop-up: For non-conversational items without Custom or UI Page variables, request submission occurs in a pop-up window without navigating away.
      • Window: For non-conversational items with Custom or UI Page variables, requests open in the Service Portal.
    • Conversational Mode Requirements:
      • Catalog items must not exceed the question limit (default 500).
      • Only supported scripting methods and classes are allowed in UI policies and client scripts.
      • Variables with pricing impacts or multi-row variable sets are not supported.
      • Custom variables require associated topic blocks to be conversational.
      • Field messages are suppressed for answered, read-only, hidden, or auto-filled questions.
      • Default values are displayed and selectable by users.
      • Certain question types cannot be skipped (e.g., Lookup Select Box, Multiple Choice under specific settings).
      • Search behavior varies by collaboration tool; for example, choice field search is unsupported in Microsoft Teams.
    • Configuration and Properties:
      • Properties control question limits and reference variable choices limits to balance performance and responsiveness.
      • Options exist to remove variables from conversational interfaces if they cause non-conversational behavior.
      • Legacy rendering can be enforced to open non-conversational items in new tabs instead of pop-ups.

    Practical Implications for ServiceNow Customers

    By leveraging Service Catalog topic blocks in Virtual Agent powered by Now LLM, customers can deliver a more natural and efficient catalog item request experience to end users. Ensuring catalog items meet conversational requirements allows inline interaction, reducing navigation and simplifying data entry. For complex or unsupported catalog items, fallback to pop-up or window rendering preserves access without disrupting the conversational flow.

    Customers should review and update catalog item scripts, variables, and UI policies to maximize compatibility with conversational mode. Associating custom variables with topic blocks is essential to maintain conversational capabilities. Additionally, configuring related system properties helps optimize performance and user experience.

    This capability supports integration with collaboration tools like Microsoft Teams, though some UI behaviors differ and should be considered during implementation.

    You can design a topic conversation in Virtual Agent powered Now LLM by including reusable topic blocks to perform request submission tasks.

    Request catalog item (Now LLM)

    You can use this topic block to request for a catalog item through a conversational and streamlined experience based on generative AI. For information about configuring Now Assist in conversational catalog request, see Configure Now Assist in Conversational Catalog Request.

    Table 1. Input parameters
    Parameter Description
    catalog_item_id sys_id of the catalog item that should be requested.
    context_json Context of the conversation in JSON format.
    execute_contextual_search Option to specify if the contextual search should be run for a record producer based on its configuration. For information on defining contextual search for a record producer, see Define contextual search for record producer.
    confirm_catalog_item Option to specify whether the user must confirm the catalog item before continuing with the next step. If this is set to false, user can answer the catalog items questions by skipping the confirmation.
    show_end_state_card Option to display the end state card information about the generated record to the user.
    Table 2. Output parameters
    Parameter Description
    record_id sys_id of the record that is generated after the item submission.

    If the catalog item is not supported in the conversation mode or if the user does not have access to the item, -1 is returned.

    record_table Name of the table in which the record is generated.
    status Status of the request. Possible options are success or error.
    variables Questions related to the catalog item.
    message Message that gives additional information in case of any failure.
    used_LLM Option that indicates if Now LLM was used while requesting the item, that is, if slot filling was done for questions defined in a catalog item using generative AI.

    Virtual Agent render types

    A catalog item can be rendered in Virtual Agent as a conversation, window, or pop-up.

    Catalog item request using a conversation render type

    A user can submit a request in the conversation mode (by answering the questions in line).
    Virtual Agent rendered as a conversation

    The following conditions must be met when a user requests a catalog item in the conversation mode in Virtual Agent powered by Now LLM.

    • A catalog item cannot have more than the number of questions specified in the sn_now_assist_cr.llm.conversational.request.question.limit property. By default, this number is set to 500. For more information about this property, see Service Catalog properties.
    • A catalog item can have scripted catalog UI policies. But when a catalog item has scripted UI policies containing unsupported methods or functions, the catalog item becomes non-conversational.
    • The following methods or classes are supported in the catalog client scripts or scripted UI policies for a catalog item to be conversational:
      • moment
      • window.location.href
      • top.location.href
      • top.window.open
      • window.open
      • open
      • Array
      • Boolean
      • Date
      • Error
      • GlideAjax
      • GlideRecord
      • JSON
      • Math
      • Number
      • Object
      • RegExp
      • String
      • alert
      • console.info
      • console.error
      • console.debug
      • console.warn
      • console.log
      • console.clear
      • console.count
      • console.countReset
      • console.dir
      • console.dirxml
      • console.table
      • decodeURI
      • decodeURIComponent
      • encodeURI
      • evalexec
      • g_form.addErrorMessage
      • g_form.addInfoMessage
      • g_form.addOption
      • g_form.clearMessages
      • g_form.clearOptions
      • g_form.clearValue
      • g_form.getActionName
      • g_form.getDisplayValue
      • g_form.getEditableFields
      • g_form.getIntValue
      • g_form.getReference
      • g_form.getSysId
      • g_form.getTableName
      • g_form.getUniqueValue
      • g_form.getValue
      • g_form.hasField
      • g_form.hideAllFieldMsgs
      • g_form.hideErrorBox
      • g_form.hideFieldMsg
      • g_form.isMandatory
      • g_form.isNewRecord
      • g_form.isReadOnly
      • g_form.isVisible
      • g_form.removeOption
      • g_form.save
      • g_form.setDisabled
      • g_form.setDisplay
      • g_form.setLabel
      • g_form.setLabelOf
      • g_form.setMandatory
      • g_form.setReadOnly
      • g_form.setReadonly
      • g_form.setValue
      • g_form.setVariablesReadOnly
      • g_form.setVisible
      • g_form.showErrorBox
      • g_form.showFieldMsg
      • g_form.submit
      • g_user
      • ga.addParam
      • ga.getXML
      • indexOf
      • isLoading
      • isNaN
      • newValue
      • oldValue
      • onChange
      • parseFloat
      • parseInt
      • this
      • toFixed
      • trim
      • undefined
      • escape
      • unescape
    • A catalog item can have catalog client scripts. But when a catalog item has catalog client scripts containing unsupported methods or functions, the catalog item becomes non-conversational.
    • The variables containing pricing implications aren't supported.
    • You can specify the upper limit for the number of records of reference type variables corresponding to a table in the sn_now_assist_cr.llm.reference_question_choices.limit property. By default, the limit is 2000000. If you specify the value more than 2000000, then it might impact the response time.
    • The UI page variable type is ignored in Virtual Agent like the UI page is ignored in Service Portal. For more information, see Types of service catalog variables.
    • To support the custom variables, users must associate topic blocks with the custom variables to represent them in the conversational interfaces. If the users don't associate topic blocks, the catalog item containing the custom variables, becomes non-conversational.
    • If you know that a variable makes a catalog item non-conversational, you can remove such variable from the conversational interfaces by selecting Remove from Conversational Interfaces option. Find the option in the Availability tab of the question form in ServiceNow AI Platform.
    • The field messages aren't shown to the requester in the following scenarios:
      • If the field message appears for the question that's already answered.
      • If the question is not shown to the requester because the question is read-only, hidden, or already auto-filled.
    • The following variable attributes are supported:
      • ref_ac_order_by
      • allowed_extensions
      • max_file_size
      Note:
      All the other variable attributes are ignored in Virtual Agent.
    • A catalog item can have a single-row variable set but not a multi-row variable set.
    • If a catalog item has a default value configured for a question, the default value is displayed in Virtual Agent, which enables the user to proceed with the default value without having to select it manually. The user can also choose a different value other than the default value.
    • User can't skip the following type of questions for a catalog item:
      • Lookup Multiple Choice
      • Select Box
      • Lookup Select Box
      • Yes/No
      • Numeric Scale (If Do not select first choice configuration is not selected)
      • Multiple Choice (If Do not select first choice configuration is not selected, or Include none choice configuration is selected)
    • If the user is using Virtual Agent in a different supported collaboration tool like Microsoft Teams:
      • Searching for a value using the search icon in choice type of fields is not supported.
        Figure 1. Choice type fields in Microsoft Teams
        Searching for a choice field in Microsoft Teams
        Figure 2. Choice type fields in Virtual Agent
        Searching for choice field in Virtual Agent
      • Searching for a value in reference type of fields is performed in the form of a question.
        Figure 3. Reference type fields in Microsoft Teams
        Searching for reference fields in Microsoft Teams
        Figure 4. Reference type field in Virtual Agent

        Searching for reference field in Virtual Agent
    Note:
    If you've installed the Now Assist in Conversational Catalog Request application, these conditions corresponds to the catalog item's conversational mode in the Virtual Agent powered by Now LLM.

    Catalog item request using a pop-up render type

    A user can submit a catalog item request as a pop-up for items, which are not conversational. In a pop-up, Virtual Agent provides a link for the user to submit the request in a pop-up without navigating to a new tab. A non-conversational catalog item can be rendered as a pop-up only if it does not have any Custom, Custom with label, or UI Page variables.
    Note:
    If you do not want to render your Virtual Agent conversation as a pop-up, set the glide.sc.va.render_type.legacy property to true, which renders all non-conversational catalog items in the configured portal in a new tab.
    Virtual Agent rendered as a popup

    Catalog item request using a window render type

    A user can submit a catalog item request in a window. In a window, Virtual Agent provides a link for the user to submit the request in the Service Portal defined in the sn_itsm_va.com.snc.itsm.virtualagent.portal_url property. A non-conversational item is rendered as a window if it has a Custom, Custom with label, or UI Page variable.

    A catalog item is rendered as a window if it is of the following types:
    • Content Item
    • Order Guide
    • Wizard Launcher
    • Standard Change Template
    Virtual Agent rendered as a window