# Schema Reference

The application schema is used to configure the objects returned from a connector.

> [!NOTE]
>
> - The **Account Schema** tab is used to define the attributes for each object type in the application being configured. The schema attributes can be defined as **Entitlement** or **Multi-Valued**. Refer to [Managing Source Account Schemas](<https://documentation.sailpoint.com/saas/help/accounts/schema.html>) for more information.
> - The schema attributes that are not present by [default](<#default-account-schema>) must be defined as strings if not specified.

The CyberArk PAM (Self-Hosted) connector uses the following default correlation and object configurations.

## Default Account Schema

Each source supports a variety of details, or attributes, about each user who has an account, such as their name, email address, manager name, and location.

The set of account attributes each source stores and how they're organized is known as the account's *schema*. To best represent your data, you can configure sources to use an account schema matching the one you use in the external connector. Refer to [Managing Source Account Schemas](<https://documentation.sailpoint.com/saas/help/accounts/schema.html>) for more information.

### Default Account ID

SailPoint requires that certain attributes remain in your configuration. These attributes are referred to as *account IDs*.

> [!CAUTION]
>
> Changing the attribute marked as the account ID after aggregating accounts can result in duplicate accounts being created. To avoid this, either reset the accounts on this source before editing the account ID attribute or edit the account ID attribute before aggregating accounts.
>
> To resolve issues caused by changing account IDs, reconfigure them to their default values.

The following table lists the default account IDs for this connector:

| Account ID | Schema Object Type |
| --- | --- |
| id | Account |
| id | Group |

### Default Account Attributes

The CyberArk PAM (Self-Hosted) connector supports the following default account schema attributes and customer configurable attributes. The attributes must be defined as strings if not specified.

The following is the limited list of account attributes supported by SailPoint CyberArk Privilege (Self-Hosted). This list can't be extended.

| Attribute Name | Description |
| --- | --- |
| id | A Unique ID of the user. This is an Account ID which must not be changed. |
| userName | The username of the user Avoid using userName with special characters like `&`, `%`, `+`, `#`, `?`, `<`, `>`, `*`, `"`, `/` or `\`, as they are not supported by CyberArk PAM (Self-Hosted). |
| name.familyName | The family name |
| name.givenName | The last name of the user |
| name.middleName | The middle name of the user |
| displayName | The display name of the user |
| userType | The type of the user |
| active | Determines whether user is active on the managed system |
| organization | The organization of the user |
| department | The department for the user |
| meta.resourceType | The SCIM resource type |
| meta.created | Resource creation date and time |
| meta.lastModified | Last modified date and time |
| meta.locaton | The URL to access SCIM resource |
| directoryType | The directory type for the user |
| LinkedObject.source | Name of the external application on which the object lives. If this is a PAM local object, use `null` as its value. |
| LinkedObject.nativeIdentifier | The native identifier of the object on the external application (for example, LDAP DN). If this is a PAM local object, use `null` as its value. |
| entitlements | The list of entitlements associated with the user |
| groups | The list of groups user belongs to |

## Default Entitlement Attributes

Entitlement attributes define the entitlements, such as groups or roles, that can be assigned to the managed system's user accounts. Refer to [Managing Entitlements](<https://documentation.sailpoint.com/saas/help/access/entitlements.html>) for more information.

> [!CAUTION]
>
> Changing the attribute marked as the Entitlement ID after aggregating accounts or entitlements can result in duplicate entitlements being created, or access profiles and roles breaking. To avoid this, edit the entitlement schema before performing any aggregations.

### Default Group Attributes

The CyberArk PAM (Self-Hosted) connector also supports groups. The following attributes must be configured on the managed system and in the SailPoint source schema to manage groups.

The following is the limited list of group attributes supported by the SailPoint CyberArk PAM (Self-Hosted) connector. This list can't be extended.

| Attribute Name | Description |
| --- | --- |
| id | A unique ID for the group. This is an Account ID which must not be changed. |
| displayName | The display name for the group |
| members | A list containing each group member's `id` and `displayName` values. If you have an existing source, you must manually add this attribute to the group schema and set `multivalued` to `true` using the REST API. You can also select the **Multi-Valued** checkbox in the attribute configuration interface in SailPoint. |
| members.value | List of the group members. |
| LinkedObject.directory | The name of the external application from which the group is synced |
| LinkedObject.directoryName | The address of the directory |
