# Collections

### Collections Overview

When agents are deployed to endpoints, the agent begins to run discovery. During the discovery process, Keeper automatically builds out resource collections. Collections are categorized into the following types:

* **Applications**
* **Machines**
* **Users**
* **Operating Systems**

Collections provide flexible scoping across users, machines, applications, and directories. Enhanced filtering and path resolution capabilities enable administrators to define collections that align closely with organizational structure and operational requirements, supporting both broad policy application and highly targeted enforcement.

<figure><img src="https://762006384-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MJXOXEifAmpyvNVL1to%2Fuploads%2FCZyYMyTf4NujtWOrLJRC%2FScreenshot%202025-05-23%20at%2011.42.32%E2%80%AFAM.png?alt=media&#x26;token=7e415509-b3e7-4ebf-abe3-0ad03039e846" alt=""><figcaption><p>Collections</p></figcaption></figure>

### Custom Collections

Admins can also create their own custom collections within **Applications**, **Machines** and **Users**.

### Creating a Collection

Click on **New Collection** to create a collection and assign attributes. For example, a custom collection "Developers" can be created which includes all software engineers. Or a custom collection of type "Machines" might be called "Web Servers" where only web servers are added to the collection. Or as another example, a custom collection of type "Applications" might be called "Developer Tools" where applications such as GitHub.exe or Visual Studio Code is included.

<figure><img src="https://762006384-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MJXOXEifAmpyvNVL1to%2Fuploads%2FocLb9wVE57JlqaB1LAiG%2FScreenshot%202025-05-23%20at%2010.12.38%E2%80%AFAM.png?alt=media&#x26;token=d85de7fd-e8d5-48e2-b81c-75a3c3981ad2" alt=""><figcaption><p>Creating a New Collection</p></figcaption></figure>

<figure><img src="https://762006384-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MJXOXEifAmpyvNVL1to%2Fuploads%2FuqKqVbY2FgzxQMmtareU%2FEdit%20Collection.png?alt=media&#x26;token=b74bbc60-8fd6-4edd-9593-6c6a65bcccae" alt=""><figcaption><p>Custom Collections</p></figcaption></figure>

Newly provisioned environments may include baseline wildcard-based application entries to accelerate initial configuration. These entries provide immediate collection coverage for common user and system paths, allowing administrators to refine policy targeting without manually defining every directory structure during onboarding.

{% hint style="info" %}
Collections can not contain different resource types. For example a User Group collection can not contain a Machine resource.
{% endhint %}

### Application Collections

An application collection represents all of the available executables across the fleet of endpoints. Applications can be grouped into custom collections.

Application objects contain information such as:

* Product Name
* Product Version
* File Version
* File Hash
* Publisher Certificate

<figure><img src="https://762006384-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MJXOXEifAmpyvNVL1to%2Fuploads%2FjfbYU66WmJhUEKVku0Ps%2FScreenshot%202025-05-23%20at%2011.06.41%E2%80%AFAM.png?alt=media&#x26;token=7a03dbec-e6c3-4166-a9c1-0bb0e2ca0125" alt=""><figcaption></figcaption></figure>

#### Custom Application Resources

A custom application resource can be defined by the Admin, such as a specific executable. Click on "Add Item to Collection" and select "Manually define resource" to submit the information.

<figure><img src="https://762006384-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MJXOXEifAmpyvNVL1to%2Fuploads%2FvauBcQ0OA9oe8OFRnHLT%2FScreenshot%202025-05-23%20at%2011.13.47%E2%80%AFAM.png?alt=media&#x26;token=5f79a875-b99f-416d-b176-9b9a39be70b0" alt=""><figcaption><p>Custom Application Resource</p></figcaption></figure>

#### Wildcard & Path Variables

Collections support the use of wildcard path variables to simplify policy scoping across user and system environments. Path variables allow administrators to define application collections that dynamically resolve to user-specific or system-specific directories, reducing the need to create separate entries for each endpoint.

<figure><img src="https://762006384-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MJXOXEifAmpyvNVL1to%2Fuploads%2FT7eYPsvvkJ369eZhzZC2%2Fimage.png?alt=media&#x26;token=a090d8c7-9119-41d7-a3b5-b9839e54a2b1" alt=""><figcaption></figcaption></figure>

Supported path variables include:

* `{desktop}` – Resolves to the current user’s desktop directory
* `{usr}` – Resolves to user home directories
* `{system32}` – Resolves to the Windows System32 directory

These variables allow application collections to scale efficiently across diverse endpoint configurations while maintaining consistent enforcement behavior.

```
// Wildcard Examples
C:\Users\john\Desktop\*
{usr}\*\Downloads\*
{system32}\*.exe
{usr}\*\AppData\Local\Programs\MyApp\MyApp.exe
```

### Machine Collections

A machine collection represents the endpoint operating system. It includes the following attributes:

* Machine Name / Identifier
* Operating System Type
* Operating System Version

Machines are automatically aggregated and grouped based on the agent discovery process.

{% hint style="info" %}
Deployment Collections are also automatically added as an available sub-collection inside of Machines.
{% endhint %}

<figure><img src="https://762006384-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MJXOXEifAmpyvNVL1to%2Fuploads%2FPVgdc1AQdnqGyTz1nPRs%2FScreenshot%202025-05-23%20at%2011.48.37%E2%80%AFAM.png?alt=media&#x26;token=26168789-1a6b-4503-9156-0f78af3702d3" alt=""><figcaption><p>Machine and Deployment Collections</p></figcaption></figure>

<figure><img src="https://762006384-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MJXOXEifAmpyvNVL1to%2Fuploads%2FcC0ntxO9FajKRBYgMGDe%2FScreenshot%202025-05-23%20at%2011.07.38%E2%80%AFAM.png?alt=media&#x26;token=2c793244-2343-4529-be7f-3512f0dbb3e9" alt=""><figcaption><p>Individual Machine Resources</p></figcaption></figure>

### Operating System Collections

The operating system resources are automatically discovered by the Keeper agent, and made available as a collection for applying policies. The attributes collected include:

* Operating System Name
* Operating System Version

### User Collections

The Keeper agent discovers all of the local users and groups across the fleet of endpoints. They are aggregated and built into "User" collections. Inside of the User collection are sub-collections including "User Groups" and "All Accounts" which are read-only.

<figure><img src="https://762006384-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MJXOXEifAmpyvNVL1to%2Fuploads%2FGOaG9ojwG4i8CELafCvz%2FScreenshot%202025-05-23%20at%2011.08.26%E2%80%AFAM.png?alt=media&#x26;token=c4614856-0333-4466-93e8-05bee24fb953" alt=""><figcaption><p>User Collection</p></figcaption></figure>

<figure><img src="https://762006384-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MJXOXEifAmpyvNVL1to%2Fuploads%2FI80wYT6UCxucNCNVCpOf%2FScreenshot%202025-05-23%20at%2011.08.42%E2%80%AFAM.png?alt=media&#x26;token=f85c2d92-d468-4f67-974b-8f9026b2f427" alt=""><figcaption><p>User Resources</p></figcaption></figure>

<figure><img src="https://762006384-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MJXOXEifAmpyvNVL1to%2Fuploads%2Fd5RfnfjmB70U31453mE2%2FScreenshot%202025-05-23%20at%2011.44.20%E2%80%AFAM.png?alt=media&#x26;token=4510f8b6-e053-4db7-a48c-c09be22951d1" alt=""><figcaption><p>User Group resources</p></figcaption></figure>

### Applying Policies

After collections have been established by the discovery process, policies can be applied to device collections and deployment collections to control privilege on all of the endpoints. Visit the [Policies](https://docs.keeper.io/en/keeperpam/endpoint-privilege-manager/policies) page to learn more.

### Automation with Commander

Keeper Commander supports collection automation through our command-line interface, Service Mode [REST API](https://docs.keeper.io/en/keeperpam/commander-cli/service-mode-rest-api) and Python SDK. [Learn more](https://docs.keeper.io/en/keeperpam/commander-cli/command-reference/endpoint-privilege-manager-commands) about Endpoint Privilege Manager commands.

#### Collections

The `pedm collection` command provides management over collections.

```
My Vault> pedm collection -h
pedm command [--options]

Command     Description
----------  ----------------------------------
list        List PEDM collections
view        Show PEDM collection details
add         Creates PEDM collection
update      Update PEDM collections
delete      Delete PEDM collections
connect     Link agent, policy, resource to PEDM collections
disconnect  Unlink agent, policy, resource from PEDM collections
```
