# Dataset Management

Dataset Management lets you review the object types a source collects and control how the source aggregates those objects into SailPoint. Use Dataset Management to view and manage resource attributes, datasets and their resources, enable dataset aggregation schedules, perform manual aggregation, and view aggregation history.

> [!NOTE]
>
> Datasets are also available in SailPoint Agentic Fabric. Contact your Customer Success team and refer to [SailPoint Agentic Fabric](<https://documentation.sailpoint.com/saas/help/agentic_fabric/index.html>) for more information.

For more information, refer to [Managing Datasets and Resources](<https://documentation.sailpoint.com/saas/help/sources/datasets.html>) for datasets, resources, owner correlation, and aggregation.

## Datasets

A *dataset* is a named group of one or more related resources that the source aggregates together.

When aggregation runs for a dataset, the source collects all resources in that dataset from the managed system in one aggregation job. Activate or deactivate aggregation at the dataset level, not for individual resources.

> [!NOTE]
>
> Each resource belongs to exactly one dataset for that source. The source defines which resources belong to each dataset. You can enable aggregation and review associated resources, but you cannot create or delete datasets or move resources between them.

### Dataset Aggregation

Configure aggregation on the **Dataset Aggregations** tab for each dataset. Configure each dataset separately. During aggregation, your owner correlation rules are automatically applied to link machine identities to their human owners. For more information, refer to [Configuring Dataset Aggregations](<https://documentation.sailpoint.com/saas/help/sources/datasets.html#configuring-dataset-aggregations>).

## Resources

A resource defines an object type from the managed system. It specifies the kind of object, the attributes the source collects, and how the source identifies and displays each object. Resources form the building blocks of the data model.

In the UI, each resource appears under **Dataset Management** \> **Resources** with its schema. A resource does not run aggregation by itself. The dataset that owns the resource collects it during aggregation.

For more information, refer to [Managing Resources](<https://documentation.sailpoint.com/saas/help/sources/datasets.html#managing-resources>).

### Owner Correlation

Configure owner correlation on each resource to link aggregated objects to human owners. If you do not configure owner correlation, or if the mapping produces no match, an owner is not assigned. For more information, refer to [Configuring Owner Correlation](<https://documentation.sailpoint.com/saas/help/sources/datasets.html#configuring-owner-correlation>).

## Supported Datasets

Go to **Dataset Management \> Datasets** on your Jenkins source to view the datasets the connector aggregates. Select a dataset to review its associated resources and configure aggregation.

> [!NOTE]
>
> Configure aggregation for each dataset separately. For more information, refer to [Dataset Aggregation](<https://documentation.sailpoint.com/saas/help/sources/datasets.html#configuring-dataset-aggregations>).

The Jenkins connector aggregates machine identities from Jenkins. The datasets are `jenkins:credentials` (Jenkins credentials), `jenkins:controllers` (Jenkins controllers), and `jenkins:pipelines` (Jenkins pipelines).

| Dataset Name | Associated Resources | Dataset ID |
| --- | --- | --- |
| Jenkins credentials | jenkins-credentials | `jenkins:credentials` |
| Jenkins controllers | jenkins-controllers | `jenkins:controllers` |
| Jenkins pipelines | jenkins-pipelines | `jenkins:pipelines` |

SailPoint runs a scheduled aggregation and collects the objects in the dataset. The default schedule is every 12 hours (`0 */12 * * *`). Your administrators can adjust the schedule in the tenant.

For resource property and attribute definitions, refer to:

- [Jenkins Credentials Attributes](<#jenkins-credentials-attributes>)
- [Jenkins Controllers Attributes](<#jenkins-controllers-attributes>)
- [Jenkins Pipelines Attributes](<#jenkins-pipelines-attributes>)

## Supported Resources

Go to **Dataset Management \> Resources** to review the resource schemas. The connector defines each schema. You cannot edit the attributes in the UI.

For more information, refer to [Managing Resources](<https://documentation.sailpoint.com/saas/help/sources/datasets.html#managing-resources>).

> [!NOTE]
>
> When you enable dataset aggregation for a selected dataset, the connector collects the resources in that dataset together. Activate or deactivate aggregation at the dataset level.

Under **Dataset Management \> Resources**, the Jenkins source lists jenkins-credentials, jenkins-controllers, and jenkins-pipelines. Select a resource to review its schema on the **Schema** tab.

| Resource Name | Resource Type | Resource ID |
| --- | --- | --- |
| jenkins-credentials | Credential | `jenkins:credentials` |
| jenkins-controllers | Application | `jenkins:controllers` |
| jenkins-pipelines | Application | `jenkins:pipelines` |

**To inspect attribute names and descriptions after the source exists:**

1. Go to **Admin \> Connections \> Sources**.
2. Open your Jenkins source.
3. Select **Dataset Management \> Resources**.
4. Select a resource (for example, jenkins-credentials).
5. Open the **Schema** tab. The connector defines the attribute names, descriptions, and types. You cannot edit them on this page.

Authoritative property definitions are maintained in `connector-spec.json` under `resources[]`.

Published customer documentation should match what your tenant's connector package actually aggregates.

## Jenkins Credentials Attributes

The following table lists schema properties for the Jenkins credentials resource (`jenkins:credentials`).

| Property | Value |
| --- | --- |
| **Resource ID** | `jenkins:credentials` |
| **Dataset ID** | `jenkins:credentials` |
| **Name (UI)** | jenkins-credentials |
| **Type (UI)** | Credential |
| **Type (spec)** | `std:credential` |
| **Identity attribute** | `fullName` |
| **Display attribute** | `displayName` |

### Attributes

| Attribute | Type | Required | Description |
| --- | --- | --- | --- |
| `fullName` | string | Yes | Full path of the credential |
| `id` | string | Yes | Credential unique identifier |
| `displayName` | string | Yes | Credential display name |
| `typeName` | string | Yes | Credential type (for example Username with password, Secret text, SSH key) |
| `description` | string | No | Credential description |
| `domain` | string | Yes | Credential domain label |
| `domainGlobal` | string | Yes | Indicates whether the domain is global (`true` / `false`) |
| `domainFullDisplayName` | string | Yes | Domain display path |
| `fingerprintTimestamp` | string | No | Fingerprint timestamp in ISO-8601 UTC when available |
| `usage` | string | No | Fingerprint usage JSON listing jobs that reference the credential, when Jenkins exposes it. Credential secret values are not retrieved. |

## Jenkins Controllers Attributes

The following table lists schema properties for the Jenkins controllers resource (`jenkins:controllers`).

| Property | Value |
| --- | --- |
| **Resource ID** | `jenkins:controllers` |
| **Dataset ID** | `jenkins:controllers` |
| **Name (UI)** | jenkins-controllers |
| **Type (UI)** | Application |
| **Type (spec)** | `std:application` |
| **Identity attribute** | `fullName` |
| **Display attribute** | `fullName` |

### Attributes

| Attribute | Type | Required | Description |
| --- | --- | --- | --- |
| `fullName` | string | Yes | Managed controller identifier |
| `description` | string | No | Controller description |
| `url` | string | No | Controller URL |
| `jobs` | string\[\] | No | Top-level job names on the controller |
| `nodeName` | string | No | Built-in node name |
| `nodeDescription` | string | No | Built-in node description |
| `numExecutors` | string | No | Executor count |
| `useSecurity` | string | No | Indicates whether security is enabled |

## Jenkins Pipelines Attributes

The following table lists schema properties for the Jenkins pipelines resource (`jenkins:pipelines`).

| Property | Value |
| --- | --- |
| **Resource ID** | `jenkins:pipelines` |
| **Dataset ID** | `jenkins:pipelines` |
| **Name (UI)** | jenkins-pipelines |
| **Type (UI)** | Application |
| **Type (spec)** | `std:application` |
| **Identity attribute** | `fullName` |
| **Display attribute** | `displayName` |

### Attributes

| Attribute | Type | Required | Description |
| --- | --- | --- | --- |
| `fullName` | string | Yes | Pipeline full path |
| `displayName` | string | Yes | Pipeline display name |
| `fullDisplayName` | string | No | Pipeline full display name |
| `name` | string | No | Pipeline short name |
| `jobClass` | string | Yes | Jenkins job class (for example WorkflowJob, FreeStyleProject) |
| `buildable` | string | Yes | Indicates whether the pipeline is buildable |
| `disabled` | string | Yes | Indicates whether the pipeline is disabled |
| `description` | string | No | Pipeline description |
| `jobUrl` | string | No | Pipeline URL |
| `jobColor` | string | No | Pipeline status color |
| `inQueue` | string | No | Indicates whether the pipeline is in queue |
| `concurrentBuild` | string | No | Indicates whether concurrent builds are allowed |
| `scmUrl` | string | No | Source repository URL |
| `scmType` | string | No | SCM type |
| `nextBuildNumber` | integer | No | Next build number |
| `healthScore` | integer | No | Health score |
| `healthDescription` | string | No | Health description |
| `viewCredentialsCapable` | string | Yes | Indicates whether credentials view is available on the job |
| `labelExpression` | string | No | Agent label expression |
| `jobActionClasses` | string | Yes | Job action classes (JSON string) |
| `firstBuild` | string | No | First build metadata (JSON string) |
| `lastBuild` | string | No | Last build metadata (JSON string) |
| `lastCompletedBuild` | string | No | Last completed build metadata (JSON string) |
| `lastFailedBuild` | string | No | Last failed build metadata (JSON string) |
| `lastStableBuild` | string | No | Last stable build metadata (JSON string) |
| `lastSuccessfulBuild` | string | No | Last successful build metadata (JSON string) |
| `lastUnstableBuild` | string | No | Last unstable build metadata (JSON string) |
| `lastUnsuccessfulBuild` | string | No | Last unsuccessful build metadata (JSON string) |

> [!NOTE]
>
> The connector filters jobs by class and aggregates supported job types. It uses folder-like containers for navigation only. In multi-controller setups, the connector adds a controller-scoped prefix to pipeline identities when job names are shared.
