---
sourceDocument: Australia Conversational Interfaces
sourceDocumentLink: https://servicenow-prod.fluidtopics.net/r/pt-BR/conversational-interfaces

 Release :

    - australia

ft:locale :

    - pt-BR

ft:publication_title :

    - Australia Conversational Interfaces

ft:clusterId :

    - convint

bundleId :

    - convint

workflow :

    - Platform


---

# Create a reusable topic block

# Create a reusable topic block {#ariaid-title1}

* Versão de lançamento: Australia
* 
* Atualizado 12 de mar. de 2026
* 
* ![](https://www.servicenow.com/docs/portal-asset/ico-clock) 4 min. de leitura

Build a reusable component that performs a specific subflow of tasks and
conversational elements in Virtual Agent conversations.

## Antes de Iniciar

Dica:  
Developers and topic authors may need to access topic blocks created in other application scopes. To give them access, see [Configure cross-scope access privileges for topic blocks and custom controls](https://servicenow-prod.fluidtopics.net/7HAf3rFZhEEhdO~~_ExL2A "Enable topic authors and developers to access Virtual Agent topic blocks and custom controls from other scoped applications.").

Role required: virtual_agent_admin or admin

## Por Que e Quando Desempenhar Esta Tarefa

Use topic blocks to run common steps, such as retrieving certain records.

## Procedimento

1. Navigate to AllConversational InterfacesVirtual AgentDesigner.
2. On the home page, do one of the following:
   * To create a topic block from scratch, select Create.
   * To create a topic block based on a pre-built topic block, open the topic block and do the following:
     1. In the header bar, select Duplicate.
     2. Enter the name of the new block and select Save.
     {#create-topic-blocks__ol_mdm_xxn_fpb}
   {#create-topic-blocks__choices_pbh_sxn_fpb}
3. On the sheet, fill in the fields.  
   {#create-topic-blocks__table_jlp_q1z_njb__entry__2}

   | Field | Description |
   |-|-|
   | Type | List of items that you can create in Virtual Agent Designer. Select Topic Block and define the additional properties. Nota: Once you set this topic as a topic block, you cannot change it to a regular topic. |
   | Name | Unique name for the topic block that reflects its functional purpose. This name appears in the list of topic blocks that topic authors can choose from when creating or updating a topic. |
   | Description | Brief explanation of the purpose of the topic block. For example, to retrieve records. |
   | Advanced properties (optional) ||
   | Who can access this topic ||
   | Channels | Chat clients in which the topic or topic block will run. These channels are different from the default channels that are natively supported by Virtual Agent. Your instance may have additional channels for [custom chat integrations](https://servicenow-prod.fluidtopics.net/8_n2n3RcLDD7~n4y4pYRsg "Conversational custom chat integration framework is a powerful framework consisting of scriptable APIs and configurations to bring the ServiceNow Virtual Agent to any conversational interface.") created for it. For more information about channels, see [Deploying Virtual Agent topics in other channels](https://servicenow-prod.fluidtopics.net/PX~mkmk_aKob4Xk01qgBIg "When creating a topic or topic block, you can specify the chat channels in which the topic or topic block will run. During conversation design, Virtual Agent Designer provides built-in guardrails to help you tailor your conversations to those channels."). |
   | Live agent ||
   | Live agent context variables | Live agent context variables that are defined in the [General Chat Settings](https://servicenow-prod.fluidtopics.net/w~oPaJMKr7zI7fWVR23q6A "Specify chat context variables, also called Live Agent chat variables, for storing chat-related information, such as pre-chat survey responses. These variables contain contextual information that can be used to determine topic intent or control how chats are routed to live agents. You can also define variables to capture contextual information passed in Virtual Agent topic scripts to share with live agents."). Select the variables that provide dynamic context, which means information from the Virtual Agent chat. This information is transferred from the bot conversation to the live agent. For information about the default list of live agent variables, see [Live agent chat context variables](https://servicenow-prod.fluidtopics.net/7XZdoUTaYP~N3l_sHTl55g "Use chat context variables to pass certain information from the topic to share with a live agent or to control how bot conversations are routed to live agents. Virtual Agent includes some default variables, and you can define new ones."). |
   | Available for Agent Autopilot | Toggle switch that determines whether the topic block is available to a live agent. When enabled, an agent can search for the topic and invoke the topic. For details, see [Conversation Autopilot](https://servicenow-prod.fluidtopics.net/OtjmxzHwon4hTruL__B3qQ#ci-conversation-autopilot "Agents can use Conversation Autopilot to display Virtual Agent topics during Agent Chat conversations. While the requester interacts with the Virtual Agent topics, agents can multitask and work on other items. Conversation Autopilot is not available for HR Service Delivery (HRSD)."). |
   | Available on the palette ||
   | Enable | Toggle switch that determines whether the topic block appears as its own icon in the Utilities section of the palette on the Flow tab. This provides easy access to the topic block for other authors. |
   | Additional ||
   | Categories | Category that contains this block. You can define [custom topic categories](https://servicenow-prod.fluidtopics.net/W0Bl2WRCR_8J78W23E29HQ "Create or change custom categories for organizing and grouping related Virtual Agent assets, such as topics. You can also make category labels visible in the Topic picker menu displayed to end users.") for your topic blocks. |
   [Tabela 1. Topic Block Properties sheet]

   {#create-topic-blocks__table_jlp_q1z_njb}
4. Select Create.  
   The Flow tab opens. The canvas displays a flow with a Start and End node.
5. To define an input to the block, do the following:
   1. Select the Start node in the canvas.
   2. In the Start Segment Properties sheet, select + Add
   3. On the sheet, fill in the fields.  
      {#create-topic-blocks__id_w2q_ksz_gpb__entry__2}

      | Field | Description |
      |-|-|
      | Name | Name of the input variable that stores the input value. |
      | Type | Type of data being passed to the topic block. For example, String, Boolean, and so on. The fields change according to your choice. For more information, see [Input data types in Virtual Agent topics](https://servicenow-prod.fluidtopics.net/w5WuhnWRKgtW_NBWlAkEEQ "You can define inputs of commonly used Glide Virtual Agent (com.glide.cs.chatbot) data types in Assistant Designer without writing a script. Define the input data type on the Start node of a custom control or topic block."). |
      | Required | Option to set the parameter as required. |
      | Hint | Tooltip that is visible when authoring a calling topic. See the following example: |
      | Table | ServiceNow table that is used to query for input. This field is available only when Reference or Array.Reference is selected from the Type field. |
      | Max Number of Rows | Maximum number of rows that the topic block is allowed to define. This field is available only when Array is selected from the Type field. |
      | Default Value | Default value for the variable. This value can be used when previewing the block. Duplicate default values are not allowed for array data types. |
      [Tabela 2. Add input dialog box]

      {#create-topic-blocks__id_w2q_ksz_gpb}  
      For example, the pre-built Contextual Search topic block provides the following input parameters:

   4. Select Save.

   {#create-topic-blocks__substeps_hqh_hnz_njb}  
   The calling topic or topic block passes input parameters to the topic block.
6. Drag Virtual Agent Designer controls onto the canvas.  
   These controls include the input, bot responses, and utilities. Use them in combination to define the logic that is run in the topic block. For more information, see [Assistant Designer controls](https://servicenow-prod.fluidtopics.net/qCibIs6dKLfp_LIzM7JRTA "A Virtual Agent topic consists of a collection of controls within a topic flow. Use these controls to collect, process, and present information to your users. Controls can also read, create, and update records on your instance.").
7. To define the output returned from the topic block, do the following:
   1. Select the End node in the canvas.
   2. In the End Segment Properties sheet, select + Add New.
   3. On the sheet, fill in the following fields.  
      * Name: Name of the value returned from the topic block.
      * Value: Either a string with variables or a script that can be used within the calling topic. The Value is presented as data pills for the input variables that you defined (the Default Value specified in the Input Parameters and the input values from the node in the topic block).
      {#create-topic-blocks__ul_af4_kzm_1kb}  
      For example, the pre-built Contextual Search topic block passes the following output parameters:

   4. Select Save.

   {#create-topic-blocks__substeps_npf_f5b_sjb}  
   When the topic block finishes running in the calling topic, it can pass output variables to the calling topic.
8. To see how the topic block runs, select Test.  
   For example, the Contextual Search topic block returned the following results, including a preview-only message with the output values. The preview message helps you verify expected outputs and is not viewable to your users.

9. If you're ready to make the topic block available for use in calling topics, then do the following:
   1. Remove the default parameters that you used for testing.
   2. Select Save, and then select Publish.

   The topic block state changes to Active and is ready for use in calling topics.

## O que Fazer Depois

[Add a reusable topic block to a calling topic or topic block](https://servicenow-prod.fluidtopics.net/XNAcdGUqJH7Lvmk5NFqWSA "Add a reusable topic block to a calling (parent) topic or topic block to run a specific function or task in the calling topic. You specify input parameters used in the topic block, and you specify output parameters that are used by the calling topic.").

