Conversation

Pegasystems Inc.
IN
Last activity: 17 Sep 2025 2:27 EDT
Deep linking and Semantic URL
Deep linking capabilities in Pega Constellation
Deep linking allows users to access specific content or pages within a Pega Constellation application directly, bypassing the need to navigate through the entire application from the homepage. This enhances user experience and can be crucial for various business needs like marketing campaigns, referrals, and seamless access to specific information or features
Example Suppose you have a Pega Constellation app for managing customer issues. You can create a deep link that opens the details page for a specific issue, using its Case ID. Instead of searching through Application to find out the CaseID, the user can click the link and go directly to that issue’s details.
How Deep Linking Works in Pega Constellation:
-
Custom URL Schemes: Deep links utilize custom URL schemes that are recognized by the Constellation application. Example: https://app.pega.com/prweb/app/AppName
-
Routing: When a user clicks on a deep link, the app checks the URL and figures out which page or view to show, based on the link’s details.
-
Direct Navigation: The app then takes the user straight to the right page, such as a specific case, dashboard, or item, without going through the home page or menus.
What is a Semantic URL and Why Should We Use It?
A semantic URL is a web address that uses clear, simple words to convey the content of the page, making it easily understandable for both people and search engines. This type of URL structure is an out-of-the-box (OOTB) feature in Pega’s Constellation architecture and is beneficial for various elements such as case types, data types, and landing pages. The routing table plays a crucial role in organizing these elements, ensuring that new case types or data types are properly integrated.
By using semantic URLs, users can quickly grasp the content they are about to access, leading to higher trust and click-through rates and making the links easier to share and reference.
The Evolution from Complex to Semantic
Traditional Pega URLs were challenging to work with because they:
-
Contained lengthy and complicated internal information
-
Were complex and difficult to comprehend
-
Didn't copy and paste well due to space dependencies
-
Provided no Search Engine Optimization (SEO) benefits
-
Made sharing between users problematic
Traditional Pega URL might look like
Example:
https://app.pega.com/prweb/PRServlet?pyActivity=OpenWorkByHandle&pzInsKey=CASE-123
Semantic URLs address these limitations by providing:
-
Clean, meaningful URL structures
-
Application-specific identifiers
-
Improved user experience for navigation
-
Better support for modern web standards
Semantic URL in Constellation would be:
Example:
https://app.pega.com/prweb/app/AppName/cases/CASE-123
For Traditional way of URL Mapping Pega Documentation: Defining URL patterns for work items.
How Pega Forms Semantic URL Structures
1. Case types When you open a case, the URL is structured to include the case type and the case ID, making it easy to understand which case is being viewed.
Example:
https://<pega-server>/prweb/app/<app-name>/<case-type>/<case-id>
- <case-type> is the name of case, like “Employee onBoard”
- <case-id> is the unique identifier for that specific case.
Sample:
https://sample.pega.com/prweb/app/HRApp/employee-onboards/E-28010
Limitations
- At present, semantic URLs are not supported for assignments.
2. Data types When viewing a data record, the URL structure includes the data type’s default record lookup data page and the associated parameters. Before this functionality can be used, the default data source for the data type must be configured. This setup supports CRUD operations and enables users to preview or open records in a new tab.
Example:
https://<pega-server>/prweb/app/<app-name>/data/<data-type>?dataViewName = <D_LookupDpage>&<PrimaryKey(s)>=<ID(s)>
- < data-type > is the name of data type, like “Employee”
Sample:
https://sample.pega.com/prweb/app/HRApp/data/employee?dataViewName=D_Employee&EmployeeID=A2021002
3. Landing Page
Landing pages (such as dashboards or reports or case type list ) have URLs that reflect their function, often using the name of the landing page or feature.
Example:
https://<pega-server>/prweb/app/<app-name>/<landing-page-name>
-
<landing-page-name> is “employee-onboarding-process”
Sample:
https://sample.pega.com/prweb/app/HRApp/employee-onboarding-process
What is a Routing Table and How Are Route Keys added to the URL?
The pyRoutingTable (Rule-UI-Routing) rule in Pega defines how user-friendly URLs are generated and mapped to the appropriate case types, data records, and landing pages, making navigation and record access clear and efficient within the application.
Whenever a new case type or data type is created, a routing table is automatically generated in the default branch or the currently open ruleset version. If a routing table is not present, you can add the data type or case type to the Application definition and then generate the routing table.
This routing table, defined by the pyRoutingTable rule, specifies how route keys (such as case type or data type names and identifiers) are included in URLs. This ensures that each case or data record can be accessed directly through a meaningful, semantic URL. Below is an example of how the pyRoutingTable rule is represented in XML format:
If we format <pyRoutes> tag, the structure looks like the following:
This approach ensures that the correct route keys are added to URLs, facilitating accurate navigation and record access within the application.
Why and how do I regenerate the routing table?
If Routing table is not generated correctly we may experience several runtime issues that impact navigation, user experience, and application functionality. The routing table is responsible for mapping URLs to the appropriate UI pages, views, or actions. Below are typical issues you may encounter:
-
Blank Landing pages: Navigating to a URL results in a page with no content. The routing table entry for the URL is either missing or points to a non-existent component.
-
Incorrectly formatted Semantic URL: When a case type is inherited from a built-on framework application (such as Customer Service or Government Platform), its class might not be included in the routing table. This can cause the semantic URL to be in the wrong format. Regenerating the routing table will correctly create the <case-type> tag and fix the URL format.
Generate Routing table
-
Add Case types and Data types in Application definition – Cases & Data Tab.
-
Click on “Generate routing table”
Summary
Pega Constellation enhances user experience by enabling deep linking, which allows direct access to specific application content such as cases or dashboards without navigating from the homepage. This is achieved through custom URL schemes that route users directly to targeted pages. Semantic URLs in Pega provide clear, user-friendly web addresses that improve navigation, sharing, and search engine optimization by reflecting the content of pages such as case types, data types, and landing pages.
-
Advantages of Semantic URLs: They replace traditional complex URLs with clean, meaningful structures that enhance user experience, support modern web standards, and improve link sharing.
-
URL Structure for Cases, Data, and Landing Pages: Case URLs include the case type and ID, data URLs include data type and parameters, and landing pages use descriptive names, making URLs intuitive and easy to interpret.
-
Role of the Routing Table: The pyRoutingTable rule defines how semantic URLs map to case types, data records, and landing pages, ensuring accurate navigation and direct access through meaningful URLs. It is automatically generated but can be manually created if it is absent.
-
Importance of Regenerating Routing Table: Correct routing table generation prevents runtime issues such as blank landing pages or incorrectly formatted URLs, especially when inheriting case types from framework applications. Regeneration fixes these problems by updating route keys.
Reference
Constellation 101 series
Enjoyed this article? See more similar articles in Constellation 101 series.