---
sourceDocument: Brazil Platform Analytics
sourceDocumentLink: https://www.servicenow.com/docs/r/now-intelligence

 Release :

    - brazil

ft:locale :

    - en-US

ft:publication_title :

    - Brazil Platform Analytics

ft:clusterId :

    - par

bundleId :

    - par

workflow :

    - Platform


---

# Dashboard URL parameter delegation

# Dashboard URL parameter delegation {#ariaid-title1}

Release version: Brazil  
Updated March 31, 2026  
![](https://www.servicenow.com/docs/portal-asset/ico-clock) 3 minutes to read  
The Delegate URL params property enables UIB pages containing dashboard components to control how URL parameter updates are handled. Doing so enables custom navigation logic for embedded or workspace scenarios.

By default, dashboard components automatically update the browser URL when users switch dashboards, change tabs, or toggle edit mode. This behavior works well for standard dashboard pages but may not suit all implementation scenarios.{#dashboard-url-parameter-delegation__dashboard-url-parameter-delegation-para-1}

The Delegate URL params property provides an alternative approach where the dashboard component dispatches events instead of directly updating URLs. This delegation mechanism allows parent pages to implement custom navigation logic.{#dashboard-url-parameter-delegation__dashboard-url-parameter-delegation-para-2}

For information about this property in the context of the Dashboard component configuration panel, see [Dashboard component properties](https://www.servicenow.com/docs/GAtvuPknx5gGrQYMZcHaJA "Disable and enable dashboard component runtime user abilities with these properties.").

## When to use URL parameter delegation {#dashboard-url-parameter-delegation__when-to-use}

URL parameter delegation is useful in these scenarios:{#dashboard-url-parameter-delegation__dashboard-url-parameter-delegation-para-3}

* The page URL structure does not include dashboard URL parameters --- for example, no `sys-id` in the URL path
* The page requires custom navigation logic for dashboard changes
* The dashboard is embedded in a workspace where URL management is handled by the parent component
* Multiple dashboard components exist on the same page and need coordinated URL handling
{#dashboard-url-parameter-delegation__ul_kmn_s3y_t3c}

## How delegation works {#dashboard-url-parameter-delegation__how-it-works}

When Delegate URL params is disabled (default behavior):{#dashboard-url-parameter-delegation__dashboard-url-parameter-delegation-para-4}

1. User performs an action, such as switching the dashboard, changing the tab, or toggling edit mode
2. Dashboard component dispatches an internal `CONTENT_UPDATED` action
3. UIB framework processes the action and updates URL parameters automatically

{#dashboard-url-parameter-delegation__ol_lmn_s3y_t3c}

When Delegate URL params is enabled:{#dashboard-url-parameter-delegation__dashboard-url-parameter-delegation-para-5}

1. User performs an action
2. Dashboard component suppresses the `CONTENT_UPDATED` dispatch
3. Dashboard component dispatches `DASHBOARD#URL_PARAMS_UPDATE_REQUESTED` with structured parameter data
4. Client script on the page receives the event and implements custom navigation logic
{#dashboard-url-parameter-delegation__ol_mmn_s3y_t3c}

## Event payload structure {#dashboard-url-parameter-delegation__event-structure}

The `DASHBOARD#URL_PARAMS_UPDATE_REQUESTED` event contains a urlParams object with structured parameter information. Each parameter includes the value, description, and additional metadata such as dashboard names and new tab indicators.{#dashboard-url-parameter-delegation__dashboard-url-parameter-delegation-para-6}

This structured approach provides client scripts with sufficient context to make informed navigation decisions, including handling special cases like opening dashboards in new browser tabs.{#dashboard-url-parameter-delegation__dashboard-url-parameter-delegation-para-7}

For more information about this event, see [Dashboard component events](https://www.servicenow.com/docs/CCaSZTPIGl5PstJ1xqsQvA "Select event handlers to configure the actions (events) provided with the dashboard component.").
**Related concepts**   

* [Create a Platform Analytics workspace from App Engine Studio](https://www.servicenow.com/docs/40Dhb9Ypphkiug8yRnDGbg "The App Engine Studio includes a prebuilt workspace that you can add to an application. This workspace includes an Analytics Center page, along with the pages that the Analytics Center links to.")  
**Related tasks**   

* [Add Platform Analytics pages to a configurable workspace](https://www.servicenow.com/docs/I4D8t8OWK8wWk3jvLqQNoA#add-analytics-center-to-experience "Add an Analytics Overview and its related pages to your own workspace/experience through page templates.")
* [Add a dashboard to a Dashboards page](https://www.servicenow.com/docs/7enowB9mdgIihDPZqm7nBw "You can add either a technical dashboard or one made in the inline editor to a page you built from the Dashboards page template. Configure the dashboard component on that page.")
* [Configure custom redirection from a dashboard component](https://www.servicenow.com/docs/_5fvYK5K9ls~AdCgt8~WUw "If you have created a page in your workspace from the Dashboard page template, you can customize the on-click redirection from the dashboard component on that page. The inline dashboard that this component displays will follow the custom redirection.")
* [Pass global filters to the dashboard page template](https://www.servicenow.com/docs/ley3kXzsCdH4LspnW9QzYw "Global filters are sent to the dashboard to serve as filters for the visualizations within the dashboard. These filters are merged with existing filters in the dashboard.")
* [Configure dashboard data broker](https://www.servicenow.com/docs/7~MVXvmzMOgjFS5tjZQE8A "Activate the Dashboard data broker preset and configure the data broker to potentially speed the loading of dashboards by prefetching some data.")

## Configure dashboard URL parameter delegation {#ariaid-title2}

Enable URL parameter delegation for dashboard components to implement custom navigation logic in UIB pages.

### Before you begin

Role required: ui_builder_admin

### About this task

Configure URL parameter delegation when you need custom control over how dashboard navigation updates browser URLs. This is useful for embedded dashboards, workspace scenarios, or pages with non-standard URL structures.{#configure-dashboard-url-parameter-delegation__configure-dashboard-url-parameter-delegation-context-1}

### Procedure

1. Navigate to the UIB page containing the dashboard component.
2. Select the dashboard component in the design canvas.
3. Open the Configure tab in the component properties panel.
4. Select the Delegate URL params check box.  
   When enabled, the dashboard component will dispatch `DASHBOARD#URL_PARAMS_UPDATE_REQUESTED` events instead of updating URLs directly.
5. Switch to the Events tab.
6. Select Add event mapping.
7. Select the URL params update requested event from the list.
8. Add an event handler that executes a client script.  
   The client script will receive the URL parameter data and implement your custom navigation logic.
9. Create a client script to handle the URL parameter updates.  
   The script receives a structured urlParams payload containing parameter values, descriptions, and metadata such as dashboard names and new tab indicators.  
   The dashboard component now delegates URL parameter handling to your custom client script instead of updating the browser URL directly.

### Result

When users interact with the dashboard (switch dashboards, change tabs, toggle edit mode), the component dispatches events that your client script can handle with custom navigation logic.{#configure-dashboard-url-parameter-delegation__configure-dashboard-url-parameter-delegation-result-1}

### Basic delegation client script

This example script replicates the default URL update behavior:{#configure-dashboard-url-parameter-delegation__configure-dashboard-url-parameter-delegation-example-1}

    function handler({api, event}) {
        const {urlParams} = event.payload;
        
        for (const [key, paramInfo] of Object.entries(urlParams)) {
            if (key === 'sysId' && paramInfo.isNewTab === true) {
                // Handle new tab navigation
                api.emit('NAV_ITEM_SELECTED', {
                    route: 'dashboards',
                    title: paramInfo.dashboardName || paramInfo.value,
                    params: {sysId: paramInfo.value},
                    navigationOptions: {
                        navigateExternal: true,
                        target: '_blank'
                    }
                });
                return;
            }
            
            // Handle normal navigation
            api.emit('CONTENT_UPDATED', {
                route: 'dashboards',
                params: {[key]: paramInfo.value}
            });
        }
    }


