Content Publication
Overview
Content publication controls where AppNavi content is available, which users can see it, and when it is displayed. You can publish Routes, Posts, Announcements, Collections, and Pins to one or more applications.
Creating or editing content does not automatically make the latest version visible to all users. You must assign the content to the relevant application and publish it using the appropriate workflow.
Use this guide to publish new content, update existing publications, control content visibility, and verify that users see the intended version.
Who should use this guide?
This guide is for AppNavi Portal administrators and content authors who manage content across applications.
Before you begin, make sure you have:
- Access to the AppNavi Portal.
- Permission to manage content for the relevant application.
- The content you want to publish, such as a Route, Post, Announcement, Collection, or Pin.
- The target application or applications.
- An understanding of which users should see the content and when it should be available.
1. Choose the right publishing method
AppNavi supports application-level and object-level publishing.
| Publishing method | When to use it | Example |
|---|---|---|
| Application-level publishing | When you want to manage content for a specific application. | Publish a Route only for your finance application. |
| Object-level publishing | When the same content needs to be reused across multiple applications. | Publish a shared onboarding Route to several applications. |
Choose application-level publishing when you need to control the publication of content for an individual application. Choose object-level publishing when you want to manage reusable content across applications.
Important: Publishing an item to one application does not automatically update its published version in every other application. Review each application's publication status when you update shared content.
2. Open Manage Content
Use Manage Content to assign, publish, unpublish, or remove content from an application.
- Log in to the AppNavi Portal.
- Open Guidance from the main menu.
- Select the Applications tab.
- Find the application you want to configure and open it.
- Open the three-dot menu.
- Select Manage Content.
- Open the tab for the content type you want to manage:
- Routes
- Posts
- Announcements
- Collections
- Pins
The content-management screen organizes items into columns that indicate their relationship to the application and publication status.
- Assign: Content that is assigned to the application but is not currently published.
- Publish: Content available for publication or publication management, depending on the current state and UI.
- Unassign: Content that is not assigned to the application.
Use the item's available actions and current status to determine the next step. If an item is already published, use the options for updating or removing that publication rather than creating a duplicate.

Manage Contents
3. Publish content to an application
You can publish an item by dragging it into the Published column or by using its context menu.
Option A: Drag and drop
- Open the appropriate content tab in Manage Content.
- Find the item you want to publish.
- Drag the item into the Published column.
- When the Publish dialog opens, review the publication settings.
- Configure the required options, such as date range, URL restrictions, or target audience.
- Confirm the publication.
Option B: Use the context menu
- Find the item you want to publish.
- Open its three-dot menu.
- Select Publish.
- Review the settings in the Publish dialog.
- Configure the required visibility and audience options.
- Select Publish to confirm.
Expected result
The item moves into the Published column for that application. The publication is configured according to the options you selected.
To verify the result, open the target application and test whether the content is available to a user who meets the publication conditions.
4. Configure publication settings
The Publish dialog lets you control how and when content is displayed. Available settings can vary by content type and workflow.
| Setting | What it controls | When to use it |
|---|---|---|
| Restrict Display | Limits where content is displayed based on URL patterns. | When a Route should appear only on a particular application page. |
| Pinned | Keeps content fixed at the top of the relevant content list. | When content should remain easy to find. |
| Date Range | Defines the period during which content is available. | For time-limited instructions or a scheduled announcement. |
| Hide in Avatar | Prevents the content from appearing in Avatar for guest users. | When guest users should not see the content in Avatar. |
| Target Audience | Limits content visibility to users who match the configured audience rules. | When content is intended for a particular department or user group. |
| Language Edit | Allows language-specific content or translations to be configured. | When users need guidance in different languages. |
| Retention | Defines how long content is retained before it becomes eligible for removal under the retention rules. | When content has a defined lifecycle. |
Example: Publish a Route for Finance users
Suppose you have created a Route explaining how to submit an expense report. You want it to be available only to Finance users, on the expense application page, during the current rollout period.
- Open Manage Content for the expense application.
- Find the Route and select Publish.
- Configure the target audience for Finance users.
- Enable Restrict Display and add a URL pattern that matches the expense page.
- Set the appropriate date range.
- Publish the Route.
- Test with a user who meets the Finance audience rules and open the matching page.
- Test with a user who does not meet the audience rules and open the same page.
Expected result: The Route is available to the intended audience on the matching page during the configured period.
The example illustrates how the settings work together. Your actual audience rules and URL pattern depend on your application's configuration.
5. Understand assignment, publication, and versioning
These are separate parts of the content lifecycle.
Assignment versus publication
| Action | Result |
|---|---|
| Assign | Makes the content available to the application for management and authoring. Assignment alone does not publish the content to all users. |
| Publish | Makes the selected version available according to the publication settings. |
| Unpublish | Removes the publication for guest users while the content remains available to logged-in users within the assigned application, according to the documented behavior. |
| Unassign | Removes the content from the application so it is no longer available there to logged-in or anonymous users. |
| Edit | Changes the content and creates an updated version. |
| Republish | Publishes the updated version so that users can receive the changes. |
Before unpublishing or unassigning: Check whether users still need the content. Unpublishing and unassigning have different effects, so choose the action that matches your goal.

Latest version versus published version
AppNavi distinguishes between the latest saved version and the version currently published.
- Latest Version: The most recent saved changes, which may not yet be published.
- Published Version: The version currently made available through the publication.
When you edit published content, the existing publication does not automatically switch to the new version. You must republish the content to make the changes available to users.
The Save and Publish action publishes the latest version immediately.
Example: Update an existing Route
You have published a Route explaining how to submit a purchase request. The application's form changes, so you edit the Route to update its instructions.
- Open the Route and make the required changes.
- Save the updated content.
- Open Manage Content for the target application.
- Locate the Route.
- Select Republish and review the publication settings.
- Confirm the publication.
- Open the application and test the updated Route.
Expected result: The application receives the newly published version. The previous published version remains in effect until the update is published.
If the new instructions do not appear, check whether you saved the changes and republished the Route for the application you are testing.
6. Publish multiple items with the Publishing Assistant
Use the Publishing Assistant when you need to publish several content items to a selected application in one operation.

Mass Publication
The Publishing Assistant supports up to 25 items per operation.
Steps
- Open Guidance from the main menu.
- Select Applications.
- Open the target application.
- Select the three-dot menu and open Manage Content.
- Open the relevant content tab, such as Routes.
- Select the Publishing Assistant icon.
- In the dialog, select the content items you want to publish.
- Select up to 25 items.
- Select Publish and complete the required publication steps.
Expected result
The selected items are published to the chosen application, subject to the configured publication settings.
Common pitfalls
- Selecting content intended for a different application.
- Selecting more than 25 items in one operation.
- Assuming that publishing an item here automatically publishes it to every application where it is used.
- Skipping verification of audience or URL restrictions.
If you have more than 25 items, repeat the operation for the remaining items.
7. Restrict content to specific application pages
What does Restrict Display do?
Restrict Display controls where content appears by matching URL patterns. It is useful when guidance should appear only on a relevant application page rather than on every page.
This setting is particularly important for Single Page Applications (SPAs). In these applications, navigation may change the URL fragment or query parameters without reloading the entire page.
You can configure up to five URL patterns per content item. Patterns can be activated, deactivated, added, or deleted.
Configure a URL restriction
- Open the Publish dialog for the content item.
- Enable Restrict Display.
- Add a URL pattern using the plus (+) control.
- Enter a pattern that matches the intended page.
- Ensure the pattern is active.
- Publish the content.
- Open the target application and test the matching page.
- Navigate to a page that should not match and verify that the content is not displayed there.
How URL patterns work
AppNavi evaluates patterns against the full URL, including:
- The pathname.
- Query parameters, such as
?mode=edit. - Fragment identifiers, such as
#PurchaseOrder-manage.
The wildcard * represents any sequence of characters, including an empty sequence.
Example: Restrict a Route to a specific page
Suppose the application's URL is:
Example:
/reference/reactThis matches only if the URL is exactly /reference/react. In SPAs, the actual URL often looks like:
https://example.com/ui#/reference/react?mode=editBecause of this, the restriction may fail and the content may appear on the homepage.
Recommended Pattern:
*/reference/react*This ensures the content is displayed wherever /reference/react appears—regardless of what comes before or after it.
Use the actual URL observed in your application to construct and validate the pattern. Do not assume that every application uses the same URL structure.
Examples for SPA
Target URLs
https://abc.xyz.cloud.app/ui#PurchaseRequisition-createSSP&/home
https://abc.xyz.cloud.app/ui#PurchaseOrder-manage&/C_PurchaseOrderTP(...)
https://abc.xyz.cloud.app/ui#BusinessPartner-manage&/
Recommended Patterns
*#PurchaseRequisition-createSSP*
*#PurchaseOrder-manage*
*#BusinessPartner-manage*
These patterns ensure Contents are shown only on the relevant SAP application screens and not on the homepage.
Understand the Restrict Display setting
The toggle and active patterns work together:
| Configuration | Expected behavior |
|---|---|
| Restrict Display is off | URL patterns are ignored; content can appear on all pages where it is otherwise available. |
| Restrict Display is on, but no patterns are configured | The restriction has no pattern to apply, so content appears on all pages where it is otherwise available. |
| Restrict Display is on, and all configured patterns are inactive | Inactive patterns are ignored; with no active patterns, content appears on all pages where it is otherwise available. |
| Restrict Display is on, with one active and one inactive pattern | Only the active pattern is used to determine where the content appears. |
| Restrict Display is on, with active patterns that do not match the current URL | The content should not appear on that page. |
Common URL restriction problems
The content appears on every page.
Check that Restrict Display is enabled and at least one URL pattern is active.
The content does not appear on the intended page.
Compare the pattern with the full URL, including the fragment and query parameters. Consider whether a wildcard is needed to account for dynamic parts of the URL.
The content appears on the wrong page.
The pattern may be too broad. Make it more specific and test both the intended page and nearby pages.
The URL changes without a full page reload.
Check whether the application uses SPA navigation. Make sure the pattern accounts for the URL fragment or other changing URL segments.
8. Configure Announcement display frequency
Announcements have display-frequency settings that control how often they are shown to users. Select a rule based on how frequently the message needs to be seen.
| Rule | Behavior |
|---|---|
| One Time | Displays once over the user's lifetime under the configured behavior. |
| Everyday | Displays once every 24 hours. |
| Weekly | Displays once a week. |
| EveryTime | Displays on each new session. |
| API only | Displays only when triggered through the supported custom-code mechanism. |
Choose a rule
- Use One Time for a message users need to see once.
- Use Everyday for recurring information that should be shown daily.
- Use Weekly for regular reminders.
- Use EveryTime when the announcement should appear in each new session.
- Use API only when your application should trigger the announcement through custom code.
Change the display rule
- Open Guidance in the Portal.
- Select Applications.
- Open the target application.
- Open Manage Content.
- Locate the Announcement.
- Select the available republish action.
- Update the display rule in the publishing dialog.
- Complete the publication.
Verify the behavior
Test the announcement using the selected frequency. If it does not appear again, check the configured rule and whether the current session or previous display affects its visibility.
Use API-only behavior only when the required custom-code trigger has been configured and tested.
9. Configure content retention
What is retention?
Retention defines how long content is retained under AppNavi's lifecycle rules. It helps administrators manage content that should not remain indefinitely.
The default retention periods documented for content types are:
| Content type | Default retention |
|---|---|
| Routes | 3 years |
| Posts | 1 year |
| Announcements | 180 days |
| Collections | 3 years |
| Pins | 1 year |
Set a retention period
- Open the content item's edit page in the Portal.
- Open the Retention tab.
- Select the required retention period from the available options.
- Save the changes.
- Review the content's publication and assignment status before relying on the retention date.
Important retention behavior
Reaching the retention period does not necessarily mean that the content will be deleted immediately.
According to the documented behavior, content is eligible to be deleted and moved to the recycle bin after its retention period only if it is assigned or unassigned during that period. Content that remains published is not deleted merely because the retention period has been reached.
Before changing retention: Confirm the appropriate lifecycle for the content and avoid assuming that retention automatically removes an actively published item.
Target Audience
The Target Audience feature in AppNavi allows content to be selectively shown to users based on defined conditions. These conditions are grouped into target audiences, which are then applied to content such as posts, announcements, routes, pins, collections, or insights.
Target audiences can be created using rules for labels, countries, query parameters, and Identity Provider claims. This guide also explains how to set labels through custom code.
Purpose of Target Audience
The main goal is to control visibility of content for a specific set of users. Only users who match the conditions defined in a target group will be able to see the associated content.
Functions of Target Audience
The Target Audience menu in the portal displays all target groups for the current subscription. From this page, you can perform the following actions:
• Create a new Target Audience
• Simulate Target Audience
• Edit a Target Audience
• Delete a Target Audience
• Copy a Target Audience
Setup Target Audience for client side
To set up a target audience for client-side use:
• Create Target Audience
• Publish it with the required content through the portal.
• Call the API from the custom code of the required application.
• Set the time zone if required.
Navigating to Target Audience
To view and manage all target audiences:
- Navigate to the Target Audience section from the left-side menu.
- The Target Audience page will open, displaying a list of all created target groups.
- Each entry includes the Title, Description, and Usage Count to indicate how frequently the target audience is being utilized.

Target Audience page showing the list of configured target groups and their usage counts
Create Target Audience
- Click the three-dot menu.
- Click the + icon to create a target audience.
- Enter the Title and Description.
- Select a Logical Operator (AND / OR).
- Add Rules using Labels, Countries, Query Parameters and Identity Connect.
- Save the Target Audience.

Target Audience creation dialog for entering details, selecting an operator, and adding rules.
Deleting a Target Audience
When attempting to delete a Target Audience, a confirmation dialog is displayed showing a summary of where the Target Audience is currently in use. This helps prevent accidental removal of active configurations. The dialog displays usage counts across various modules:
Example:
This Target Audience has been used in:
Application (0), Content (0), Insights Configuration (), Insights Surveys (0), Area Configuration (0), BC Surveys (0), Route (0), Pins (0).Are you sure you want to delete the Target Audience "TA"?

Deletion confirmation dialog showing where the selected target audience is currently used.
Rule Types in Target Audience
Target Audiences support multiple rule types (maximum of 5 rules per group):
Supported Rule Types
- Labels
- Countries
- Query Parameters
- Identity Provider (IDP)
Each rule supports up to 6 operators:
- Equal
- Not Equal
- Contains
- Does Not Contain
- Starts With
- Ends With
Logical Operators
- AND: All rules must be true.
- OR: At least one rule must be true.
Labels
Target audiences can include labels as rule conditions. Labels must match corresponding values in the custom code configuration.
Labels are custom tags used to group users or applications logically. They are defined within your AppNavi setup and can be used to control content visibility.
Use Case Example:
Show a specific route only to users who have the label “FinanceTeam.”
Steps:
- Navigate to Target Audience.
- Create a new audience group.
- Provide a Title and Description.
- Select a logical operator.
- In the rule section, choose Label.
- Select one of the six available operators.
- Enter one or more label values.

Label rule configuration with label values assigned to the target audience.
Country
The Country rule allows content to be shown only to users from specific regions. It helps you localize experiences or announcements.
Use Case Example:
Display a regional campaign only to users from Germany or France.
Steps:
- Navigate to Target Audience.
- Create a new audience group.
- Provide a Title and Description.
- Select a logical operator.
- In the rule section, choose Country.
- Select countries from the dropdown list.
Ensure the selected time zone in the client side aligns with the country used in the rule.

Country rule configuration with countries selected from the available list.
Query Parameters
This rule uses URL parameters to determine which users can access content. It’s useful for deep linking or campaign-specific pages.
Use Case Example:
Show a post only when the URL contains ?region=EU.
Steps:
- Create a new Target Audience.
- In the rule section, select Query Parameter from the dropdown.
- In the Query Parameter field, provide a key (e.g., random).
- In the Value field, provide a value (e.g., value).
- Save the target audience.

Query Parameter rule configuration with a key and value used for URL-based targeting.
Usage in URL:The content will only appear when the following pattern is matched:
https://www.example.com/?random=value
This method enables deep linking and conditional content visibility based on dynamic URLs.

Example URL containing the query parameter required by the configured audience rule.
Configure Target Audience Labels Using Custom Code
Prerequisites
Before configuring Target Audience labels, ensure that the value entered in the custom code is available as a Target Audience label. The same label value must be configured and assigned to the relevant audience before it can be used in the custom code.
Configuration Steps
Follow the steps below to configure Target Audience labels through custom code:
-
Navigate to the Manage Tenant screen.
-
Navigate to Applications.
-
Locate the application where you want to add the custom code.
-
Open the application context menu and select Edit.
-
Navigate to the Custom Code screen.
-
Enter the custom code containing the Target Audience label value where you want to display the content.
-
Click Save Changes to apply the configuration.

Configuring Target Audience conditions by adding custom labels in the application's Custom Code section
Set Labels with Custom Code
AppNavi allows you to filter content for specific groups (Target Audiences). For example, certain content can be displayed only for certain groups or a specific user. To enable audience filtering for an object, one or more labels must be specified when publishing. When an object with labels is published, it is not initially displayed in the avatar. The object only becomes visible when one of the assigned labels has been set via the setTargetAudienceConditions API. The functionality is shown in the following code example.
var configuration = {labels:['Group1', 'Group2']}
window.appnaviApi.application.setTargetAudienceConditions(configuration);
console.log('Labels: '+ configuration.labels );In this case, all objects with the label Group1 or Group2 would be displayed in the avatar view. It is also possible to use the setTargetAudienceConditions API asynchronously. This can be the case, for example, if the objects like routes are to be displayed with the results of an AJAX call or another asynchronous event. In the example shown below, the two objects with the specified labels Group1 and Group2 would only become visible in the avatar after 5 seconds.
window.appnaviApi.application.resetCustomLabels();
window.setTimeout(function () {
window.appnaviApi.application.setTargetAudienceConditions({labels:['Group1', 'Group2']});
}, 5000);Since the custom labels are stored in local storage, it is necessary to reset the already set custom labels. This can be achieved by calling resetCustomLabels(). This method ensures that the custom labels are reset and a re-rendering of the corresponding view in the avatar takes place.
Expected Result
After saving the changes, the configured content becomes available only for the specific audience defined in the Target Audience labels.
The content will not be displayed in the avatar until the corresponding Target Audience condition is set for the user.
Validate the Configuration
To confirm that the Target Audience configuration is working correctly:
-
Navigate to the avatar.
-
Access the application as a user who matches the Target Audience label configured in the custom code.
-
Confirm that the content is displayed only for the intended audience.
-
Confirm that users who do not match the configured label do not see the content.
Identity Provider (IDP)
This is the most dynamic rule type built to integrate with Identity Providers (IdP) such as Azure AD, Okta, or other SSO systems via Identity Connect. OIDC rules use Claim Fields, which are user attributes fetched directly from the IdP enabling automatic targeting without manual tagging.
Purpose:
To personalize content based on user identity information such as department, role, or email. Once the IdP is connected, its claims can be used in Target Audience rules for smart, identity-driven control.
How It Works:
- Ensure Identity Connect (IdP) is properly configured in the portal.
- Once connected, available claim fields (like department, email, username, etc.) will appear.
- These claim fields can then be used to build Target Audience rules.
- Common Claim Fields:
- department
- name
- family_name
- username
Use Case Examples:
- Show onboarding content only to users from the HR department.
- Hide an internal post if email domain doesn’t match your company’s.
- Display a route only for username = demouser.
Steps:
- Create a new Target Audience.
- Enter a Title and Description.
- In the rule section
- Select Type → OIDC (visible only when identity connect is connected).
- Select Claim Type, e.g., department, username, email.
- Choose the Operator (equals, starts with, contains).
- Enter the Value (e.g., demoUser, HR, Finance).
- Click Save to create the Target Audience.
- To verify, click the three dots again and choose Simulate Target Audience to test the configured conditions.

Identity Provider rule configuration using an OIDC claim, operator, and value.
Setup API in Custom Code
You may find some more information regarding API setup in custom code, under the heading:
setTargetAudienceConditions : method
https://docs.appnavi.com/docs/application
Setup Time Zone
- Open the Time Zone settings on the client device.
- Select the time zone of the country that the user has selected in the target audience.
- Open the Avatar.
- Check the route list and confirm that the expected route is present.

Client device settings used to select the time zone required for country-based targeting.
Simulate Target Audience
You can simulate a target audience to verify how assigned content will behave. Provide the relevant label, country, query parameter, or Identity Connect value, then run the simulation. A green result means the conditions evaluate to true and the content will be shown in the client-side avatar. A red result means the conditions evaluate to false and the content will not be shown.

Target Audience page showing the menu option used to open the simulation tool.
How to use simulate Target Audience
To simulate a target audience:
- Select one or multiple Labels.
- Select one or multiple Countries
- Select one or multiple Query parameters
- Select one or multiple identity connect values
- Click the "+" Icon and select one or multiple Target Audience, the maximum limit is 10.
- Complete the Title field
- Select the Target Audience
- Click "Add"
- Click "simulate"

Simulate Target Audience dialog used to test whether configured conditions evaluate as expected.
Summary
The Target Audience feature in AppNavi enables precise control over content visibility by defining rules based on labels, countries, and query parameters. These rules group users into audiences that can be applied to announcements, routes, pins, and insights.
Target audiences are easily created, managed, and simulated within the portal. The addition of query parameter support allows content to be dynamically shown based on specific URLs. Business teams benefit by delivering tailored experiences, ensuring content reaches only the intended users—enhancing personalization, reducing confusion, and improving engagement across applications.
Related documentation
- Managing Contents — create and configure Routes, Posts, Announcements, Collections, and Pins.
- Content Management — understand content assignment, workspaces, and reuse.
- Guidance — learn how AppNavi guidance is delivered and managed.
Recommended next step: Publish one test item to a test application, verify it with the intended user audience, and check both the page where it should appear and a page where it should not appear before rolling it out more broadly.
Updated 7 days ago