# SailPoint Cursor Connector Documentation > Cursor Connector Documentation # Documentation # Connecting SailPoint and Cursor To connect SailPoint with Cursor, perform the following tasks: ## Adding the Source in SailPoint To connect to SailPoint, perform the following steps. Once the connection is made, you can configure it to meet your company's needs. > [!IMPORTANT] > > By default, the provisioning feature is **disabled**, and the connector only supports read-only operations. To support provisioning operations, you must manually enable the feature in the source configuration. **To configure a new source:** 1. Sign in to SailPoint. 2. Go to **Admin \> Connections \> Sources**. 3. Select **Create New**. 4. Search for the connector by entering the name in the search box, and then select **Actions**. 5. In the **Actions** dropdown list, select the setup method: - [**Express Setup**](<#configuring-a-source-using-express-setup>) - Quickly create a read-only connection to your target system by providing minimal configurations and authentication. On completion, aggregation is automatically started. > **Note** > > Express Setup supports Credential Providers. For information on supported credential providers and configuration, refer to [Credential Providers](). For more information, contact your SailPoint Customer Service Manager. - [**Standard Setup**](<#configuring-a-source-using-standard-setup>) - Provide detailed basic configuration to create the source. Once the source is created, continue with source setup. ### Configuring a Source Using Express Setup Express Setup minimizes the initial configuration process so you can quickly connect the application and immediately begin aggregating user account and entitlement data. 1. Review the directions and select **Start Express Setup**. 2. Review the pre-populated **Source Name**, **Source Owner**, and **Description**. To update, select **Edit**. > **Note** > > The source name must be unique. You can change these settings later in the source configuration. 3. (Optional) If enabled for your organization, select the **Use a Credential Provider** checkbox to manage the source's authentication using a credential provider. > **Note** > > To add a Credential Provider in SailPoint, go to **Admin \> Connections \> Credential Providers**. For more information about credential providers, refer to [Credential Providers](). 4. Configure the authentication to allow SailPoint to connect to the source. For more information, refer to the **Connection Settings** section. 5. Select **Finish**. After a successful test connection, the system creates your source and prompts you to run an aggregation. - If you want to aggregate now, select **Aggregate**. - To see the latest account aggregation history, go to **Account Management \> Account Aggregation**. - To see the list of aggregated source accounts, go to **Account Management \> Accounts**. - If you want to aggregate later, select **Exit**. This returns you to the **Sources** page. Your new source is listed, but contains no accounts or aggregation history yet. ### Configuring a Source Using Standard Setup Use Standard Setup to configure the connector for full feature support. 1. In the **Source Name** field, enter a unique and descriptive name for your source. Source names cannot exceed 128 characters. 2. In the **Description** field, provide additional details about the source to help distinguish it from similar sources. This field allows a maximum of 2,000 characters. 3. In the **Source Owner** field, begin typing the name of an owner. Matches appear after you type two or more letters. For more information, refer to [Assigning a Source Owner](). 4. (Optional) Select a governance group to grant its members [source]() or [role]() sub-admin level oversight of the source and its access. For more information, refer to [Creating and Managing Governance Groups](). 5. If this source represents a primary system containing your organization's personnel records, select the **Authoritative Source** checkbox. For more information, refer to [Creating Identity Profiles](). 6. Select **Continue**. The source is created, and you are navigated to the **Source Setup \> Base Configuration** page. Continue to configure your connected source there. ## Base Configuration Provide the base configuration parameters. Information you entered in the Create New Source dialog is automatically entered into the fields in the Base Configuration page. You can edit this information if necessary. 1. Enter a unique name and description for the source. 2. In the **Source Owner** dropdown list, select the identity that owns this source. - To find a source owner, begin entering their name. 3. (Optional) If enabled for your organization, select the **Use a Credential Provider** checkbox to manage the source's authentication using a credential provider. > **Note** > > To add a credential provider, go to **Admin \> Connections \> Credential Providers**. For more information about credential providers, refer to [Credential Providers](). 4. Configure the authentication to allow SailPoint to connect to the source. Refer to [Connection Settings](<#connection-settings>) for more information. 5. (Optional) In the **Governance Group for Source Management** dropdown list, select a governance group to associate with this source. For more information about governance groups, refer to [Associating Governance Groups with a Source](). 6. (Optional) Choose whether to enable or disable provisioning for the source. Provisioning is disabled by default. - **Enable Provisioning** - Set the toggle to **Enabled** to allow the source to create, update, and deactivate accounts in the connected source system. - **Disable Provisioning** - Set the toggle to **Disabled** to disable provisioning for the source. Disabling provisioning will prevent the creation, updating, or deactivating of accounts on this source. 7. Select **Save**. ## Connection Settings The following settings control how SailPoint connects to Cursor. > [!NOTE] > > **Screenshot** > > [![Connection Settings]()]() - **Teams Admin API Key** - Enter the Teams Admin API Key that SailPoint uses for account and group aggregation. ## Machine Identity Governance Settings Use these settings to aggregate Cursor Cloud Agents as machine identities. > [!NOTE] > > **Screenshot** > > [![Machine Identity Governance Settings]()]() 1. Select the **Enable Cursor Cloud Agents** toggle to aggregate Cursor Cloud Agents as machine identities. 2. In **Cursor Agents API Keys**, enter an **API Key Name**. 3. Enter the corresponding **API Key Value**. 4. Select **Add** to add more rows. 5. (Optional) Select **Include Archived Agents** to include archived agents in aggregation. 6. Select **Save**. ## Review and Test Perform a test to confirm the connection to SailPoint. 1. Go to **Review and Test**. 2. Confirm that the entries in each field are correct. If you note any mistakes, return to the section and make corrections. 3. Select **Test Connection**. ## SailPoint Application Onboarding SailPoint application onboarding enables you to easily onboard new applications and create sources following the successful onboarding of a discovery source. To use this feature, continue to **Discovered Applications** in the SailPoint user interface. For more information, refer to [Application Onboarding]() in the SailPoint SaaS documentation. # 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]() for more information. For more information, refer to [Managing Datasets and Resources]() 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](). ## 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](). ### 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](). ## Supported Datasets Go to **Dataset Management \> Datasets** on your Cursor 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](). The connector collects Cursor cloud and background agents in the Cursor Agents dataset. | Dataset Name | Associated Resources | Description | | --- | --- | --- | | Cursor Agents | Cursor Agent | Cursor cloud and background agents. | ## Supported Resources A resource represents a type of object the connector collects from Cursor. Each resource defines the attributes collected for that object type and how each object appears in SailPoint. For more information, refer to [Managing Resources](). > [!NOTE] > > When you enable dataset aggregation for a selected dataset, all resources in that dataset are collected at once. Activate or deactivate aggregation at the dataset level, not for individual resources. Go to **Dataset Management** \> **Resources** on your Cursor source to view each object type the connector aggregates. Select a resource to review its schema on the **Schema** tab. | Resource Name | Resource Type | Resource ID | | --- | --- | --- | | Cursor Agent | Agent | `cursor:agent` | ## Cursor Agent Attributes Schema attributes for the Cursor Agent resource. | Attribute | Type | Description | | --- | --- | --- | | apiKeyName | string | Label of the API key whose credentials returned this agent during aggregation. | | autoCreatePR | boolean | Whether Cursor automatically opens a pull request when the agent finishes. | | createdAt | string | Timestamp when the agent was created. | | env\_type | string | Deployment environment type of the agent. | | id | string | Unique identifier for the Cursor cloud agent. | | latestRunId | string | Identifier of the most recent agent run; empty when no run exists. | | name | string | Agent display name. | | repos | string | JSON array string of repository bindings of the agent. | | skipReviewerRequest | boolean | Whether Cursor skips requesting reviewers on generated pull requests. | | spBusinessApplication | string | Business application of the agent. | | spStatus | string | SailPoint-normalized agent status. | | status | string | Agent lifecycle status. | | updatedAt | string | Timestamp when the agent was last updated. | | url | string | URL to open the agent in the Cursor web UI. | | workOnCurrentBranch | boolean | Whether the agent works on the repository current branch. | # Integrating SailPoint with Cursor Use this connector to manage Cursor access in SailPoint. You can govern Cursor members as accounts, Cursor groups as entitlements, and Cursor agents as machine identities. To set up the source, go to [Connecting SailPoint and Cursor](). > [!NOTE] > > To view the latest features, enhancements, and fixes for all SaaS connectors, refer to the [SaaS Release Notes]() page. ## Supported Features The Cursor source supports these features: - **Account Aggregation** - Aggregate all members of a Team. - **Entitlement Aggregation** - Aggregate Cursor groups as entitlements. - **Add/Remove Entitlement** - **Machine Identity Governance** - **Discover Cursor Agents** Cursor cloud and background agents are machine identities that run automated tasks in your development environment. Discovering these agents in SailPoint gives you visibility into agent activity, supports owner correlation, and enables governance workflows. To discover Cursor agents with the connector, enable **Enable Cursor Cloud Agents** on **Machine Identity Governance Settings** and configure **Cursor Agents API Keys**. During dataset aggregation, the connector collects agents in the **Cursor Agents** dataset as **Cursor Agent** resources. For more information, refer to [Machine Identity Governance Settings]() and [Supported Datasets](). > **Note** > > Other than the enterprise connector discovery approach, SailPoint can automatically discover Cursor agents by using SailPoint Endpoint or Browser Agent security in SailPoint Agentic Fabric. - **Activate and Deactivate Cursor Agents** > **Note** > > When you deactivate a Cursor agent, Cursor archives the agent. When you activate a Cursor agent, Cursor unarchives the agent. ### Non-Human Identity Discovery - Aggregate Cursor agents Refer to Dataset Management for more information. Refer to [Discovering Potential Non-Human Accounts]() for more information. ## Required Permissions - For account and entitlement operations, you need Teams admin access. - For agent operations, you need admin access to the service account, or the account whose agents you want to aggregate. # 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]() for more information. > - The schema attributes that are not present by [default](<#default-account-schema>) must be defined as strings if not specified. The Cursor 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]() for more information. ### Default Account Attributes The Cursor connector supports the following default account schema attributes and customer configurable attributes. The attributes must be defined as strings if not specified. | Attribute Name | Description | | --- | --- | | id | Unique identifier for the team member. | | name | Display name of the team member. | | email | Email address of the team member. | | role | Team role of the member. | | isRemoved | Whether the member has been removed from the team. | | spendCents | On-demand spend in cents for the member in the current billing cycle. | | groups | Groups to which the member belongs. This attribute is multi-valued and marked as an entitlement. | ## 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]() 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 Cursor connector also supports groups. The following attributes must be configured on the managed system and in the SailPoint source schema to manage groups. | Attribute Name | Description | | --- | --- | | id | Unique identifier for the billing group. | | name | Name of the billing group. | | type | Type of the billing group. | | directoryGroupId | Identifier of the directory or SCIM group. | | memberCount | Number of members currently in the billing group. | | createdAt | Timestamp when the billing group was created. | | updatedAt | Timestamp when the billing group was last updated. | | spendCents | Total on-demand spend in cents for the billing group in the current billing cycle. | # Troubleshooting If you encounter any of the following issues or errors, SailPoint recommends that you follow the guidance provided below to resolve the error before contacting SailPoint Support. For issues or errors that are not addressed in this connector guide, refer to the following resources for troubleshooting information: - [SailPoint Identity Services Documentation]() - [SailPoint Support Knowledge Base]() - [SailPoint Developer Community]() ## Debug Logs For information about managing additional source settings, including debug logging and downloading connector logs, refer to [Managing Additional Settings]().