> For the complete documentation index, see [llms.txt](https://docs.realmjoin.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.realmjoin.com/application-management/packages/package-details.md).

# Package Details

The RealmJoin package details page shows a single package's properties and manages its user assignments and updates.

<figure><img src="https://2868468309-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MkrcM7cKOpXKri1kVrh%2Fuploads%2FW0PeMWjv9A6RPT4rnID6%2Fimage.png?alt=media&amp;token=2618ba59-7012-4d34-9d4a-8b4e65405398" alt=""><figcaption><p>Package details page</p></figcaption></figure>

This page will show detailed information for a single package in your environment and allows you to manage its assignment to users and updates.

This page looks like the [Package Store Details](/application-management/packages/package-store/package-store-details.md) page but gives details about a package that is already imported into your environment. It does not reflect the generic package store entry.

## Package Types

This page can display any package that is understood by RealmJoin Portal, this includes

* **Managed** and **Basic** packages from the package store
* **Unmanaged** packages in Intune (not from the package store)
* **RealmJoin Classic** "Choco" and "Craft" packages

Different types of packages have different levels of support to be managed via RealmJoin Portal at this point. This guide will focus on **Managed** and **Basic** packages from the package store as these are best supported currently.

## Package Properties

### Name and Core properties

Every package detail page will show an overview of the core properties like the package's **Display Name**, **Description** and **Package ID** ("Unique RJ ID") on the left side of the screen. This part will not scroll and be always visible in any tab.

You can use the edit button next to the package's name to give a package a custom display name relevant to your users. For packages hosted in Intune, this will also rename the package's display name in Intune. This will not break the relationship with the [package store entry](/application-management/packages/package-store/package-store-details.md) for packages sourced from the [package store](/application-management/packages/package-store.md).

![Package Name and Status](https://2868468309-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MkrcM7cKOpXKri1kVrh%2Fuploads%2FvUfojLyRH3nYsTrmMFu9%2Fimage.png?alt=media\&token=023929e4-04ea-4afe-b6cb-0bf6c3cf6ca4)

#### Short Description

For packages deployed via the RealmJoin Agent, you can also overwrite the package's **Short Description**, which is the text users see for the package in the [App Catalog](/realmjoin-agent/client-menu/self-service-portal.md#app-catalog-tab). The description shipped with the package is written from a packaging perspective and often explains its technical background. A custom description lets you tell users what the package means for them, e.g. *"Connects the printer on the 2nd floor of office building 5"* for a printer mapping package.

<figure><img src="https://2868468309-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MkrcM7cKOpXKri1kVrh%2Fuploads%2Fgit-blob-00a896d7cd70b8604eba96f3b6db0dcaac0b1900%2Fedit-short-description.png?alt=media" alt="Edit short description dialog"><figcaption><p>Editing the short description of an existing package</p></figcaption></figure>

* Use the edit button next to **Description** to open the editor. The package's own description is shown below the text field for reference.
* A custom description can be up to 1000 characters long.
* While a custom description is set, the package shows a **Customized** badge next to **Description**, and the App Catalog shows your text instead of the package's description.
* Use **Reset to package default** (or save an empty text) to go back to the package's description. Saving the unchanged package description does not create a custom description, so the package keeps following future description changes of the package.
* The custom description applies to your tenant only and is kept when a managed package is updated to a new version. The package's long description is not affected.

### Status Fields

Also displayed on the left side of the screen are four status fields for a package, displayed as tags below the package name and publisher name.

These fields are binary - they are set to one of two possible values. The text of each field changes accordingly. Some of the fields are also color-coded for easier glanceability.

* **Maintained / Unmaintained:** RealmJoin will provide new versions / updates of maintained packages on a regular basis.\
  Automatic package management can be applied to keep the software delivered by these packages permanently up-to-date in your environment.
* **Generic / Custom:** Generic packages are available to all customers / environments. Custom packages are not globally available to all customers. In most cases this is a custom software package created specifically for your environment.
* **Billable / Non-Billable:** Provisioning of this package will count towards your package usage quota - if you have one. Currently all publicly available packages are billable.
* **Free to Use / Needs License:** Does this software need a commercial license to be used?
* **Intunemanaged / Intuneunmanaged:** These tags denote packages, that are offered via Intune.
  * **Intunemanaged**: Managed and Basic packages from the package store, delivered via Intune
  * **Intuneunmanaged**: Unmanaged packages in Intune (not from the package store)

## Tabs

The right side of the screen shows the contents of the current tab.

The following tabs are available:

### Overview

<figure><img src="https://2868468309-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MkrcM7cKOpXKri1kVrh%2Fuploads%2FGlwhJH0a1nJ4EoxxDpJQ%2Fimage.png?alt=media&amp;token=55989af2-57da-48db-aed9-da98e544523c" alt=""><figcaption><p>Overview tab</p></figcaption></figure>

#### Title, Description and other Info

This tab will show the long description, license and technical help information of a package.

#### Update

If the Package Store offers a newer version than the one deployed in your environment, the *Update* section shows the available actions. For managed packages these are *Apply latest update to main*, *Start latest update with preview*, *Apply preview to main* and *Apply update to preview*; Basic packages only offer *Apply update*. See [Version and Preview](/application-management/packages/package-management.md#version-and-preview) for the staged update procedure.

**Choose another version**

By default, an update always targets the latest version in the Package Store. If you want to skip a version or need a specific one, click *Choose another version* below the update buttons. A dropdown lists the eligible versions, the latest one marked with "(latest)"; select one and confirm with *Update*. For managed packages there is one row per target: *Main*, *Preview* (start a preview) and *Update preview* (move an existing preview).

The option is only shown when all of the following apply:

* The package was subscribed from the Package Store and an update is available (the *Update* section is visible).
* No update or other operation is currently running for this package.
* The Package Store holds at least **two** versions newer than the version currently deployed in that slot (Main or Preview). With only one newer version, the regular update button already targets it.
* For *Main*: **Automate Main Channel** is off. For *Preview*: **Automate Preview Channel** is off (see [Automation](/application-management/packages/package-settings.md#automation)). Updating an already running preview is not affected by automation.
* You hold the `CanSubscribeApp` and `CanUpgradeApp` [permissions](/administration-and-settings/permission/custom-roles/available-permissions.md).
* For *Main*, at least one Main group must be assigned; for *Preview*, the preview group must exist.

{% hint style="warning" %}
**Downgrades are not possible.** The dropdown only lists versions newer than the one currently deployed, and the backend rejects any update that targets an older version. To deploy an older version, open that version's entry in the Package Store — the [Versions tab](/application-management/packages/package-store/package-store-details.md#versions) links every changelog row to its store entry — and subscribe from there. Since each package ID can only be subscribed once, this requires removing the existing subscription first.

Independent of the assigned version, the RealmJoin Agent will not replace a newer version that is already installed on a device unless the client policy [Allow downgrade of packages](https://docs.realmjoin.com/application-management/packages/pages/zUp3fVudTxsEQTARWQUK#softwarepackaging.autoupgradecandowngrade) is set. As with any version change, existing installations only follow the new version if [Auto upgrade](/application-management/packages/package-settings.md#expert-settings) is enabled for the package.
{% endhint %}

#### Assignments and Deployment Status

Use these tables to assign additional groups and check the deployment status of apps for devices and/or users. If a device and its user end up in conflicting groups of the same package, see [Assignment priority and conflicts](/application-management/packages/package-deployment.md#assignment-priority-and-conflicts) for how this is resolved.<br>

<figure><img src="https://2868468309-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MkrcM7cKOpXKri1kVrh%2Fuploads%2FhWCAsxHMgEQvlnwJ8Srh%2Fimage.png?alt=media&amp;token=3b41dc11-1522-4658-9662-fdf601de33fb" alt=""><figcaption></figcaption></figure>

#### Usage

{% hint style="warning" %}
The Usage function requires the RealmJoin Agent to properly populate data.
{% endhint %}

Use the usage table to determine the spread of versions deployed across your device fleet as well as your license count. Clicking on the numbers under Client Count or User Count will show the device/users using the respective version of the package.

<figure><img src="https://2868468309-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MkrcM7cKOpXKri1kVrh%2Fuploads%2Fg0hiKgd43NLgKnUszLGu%2Fimage.png?alt=media&amp;token=ddd60239-c16e-48e9-b5f2-8e24f21616b6" alt=""><figcaption></figcaption></figure>

### History

The package's history shows when the package has been updated in RealmJoin's repository.

<figure><img src="https://2868468309-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MkrcM7cKOpXKri1kVrh%2Fuploads%2FbtGh1FX9g6gcG5UNLwF6%2Fimage.png?alt=media&amp;token=667fceb4-e8ba-42c7-9c1b-ba5395147e9a" alt=""><figcaption><p>History tab</p></figcaption></figure>

There are two types of changes tracked in Changelog.

![](https://2868468309-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MkrcM7cKOpXKri1kVrh%2Fuploads%2FmNM2TEV9ZGVSGmbTqSch%2Fimage.png?alt=media\&token=8bc8c8d4-98f1-4d07-9c8d-4bc4c0bfca55) Changes to the instance of the package in your environment, specifically in Intune. E.g. publishing a newer version of the package to your users.

![](https://2868468309-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MkrcM7cKOpXKri1kVrh%2Fuploads%2FAJtXLNFo62x26AkAYV3a%2Fimage.png?alt=media\&token=bcb9e175-8efa-44d8-b1dd-e578ee0f6b31) Changes to package store entry.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://docs.realmjoin.com/application-management/packages/package-details.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
