# SailPoint Argo CD Connector Documentation > Argo CD Connector Documentation # Documentation # Connecting SailPoint and Argo CD To connect SailPoint with Argo CD, 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. 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. > [!NOTE] > > The **Authoritative Source** option does not apply to Argo CD, since it is a read-only, non-human-identity discovery connector. ## 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) Select **Create Manual Work Items** to allow the connector to create manual work items for certain operations. You can also enable this option so the source supports additional source management features such as creating accounts and access profile management. > **Important** > > Once you enable this feature, you cannot disable it. For more information on manual work items in SailPoint, refer to [Work Items](). For more information on SailPoint features, refer to [SailPoint Identity Services](). 7. Select **Save**. ## Connection Settings Provide the values required for SailPoint to connect to your Argo CD deployment. > [!NOTE] > > **Screenshot** > > [![Connection Settings]()]() To configure connection settings, complete the following: 1. Enter the **Argo CD Server URL**. It is an HTTPS base URL of the Argo CD server. Do not include a trailing slash or path. Use the URL your administrators provide for API access. For example, `https://argocd.example.com` 2. Enter the **Argo CD API Token**. It is a bearer token you generated in the [Prerequisites]() step. Paste the full token string. SailPoint stores this value securely. 3. Select **Save**. ## Dataset Aggregation Configure dataset aggregation to discover machine identities from your Argo CD source. This connector supports two datasets: - Argo CD local users (`argocd:local-user`) - Argo CD project tokens (`argocd:project-token`) > [!NOTE] > > You need to configure aggregation for each dataset separately. ### Configuring Dataset Aggregation 1. Go to **Admin \> Connections \> Sources** and open your Argo CD source. 2. Select **Dataset Management \> Datasets**. 3. Select the dataset you want to configure (Argo CD local users or Argo CD project tokens). 4. Select the **Dataset Aggregations** tab. #### Scheduled Aggregation A scheduled aggregation runs automatically and aggregates all objects in the dataset. SailPoint optimizes the schedule. 1. On the **Dataset Aggregations** tab, select **Enable Scheduled**. #### Manual Aggregation A manual aggregation runs once and aggregates all objects in the dataset. 1. On the **Dataset Aggregations** tab, select **Start Aggregation**. #### Viewing Aggregation Results After an aggregation completes, review its status on the **Dataset Aggregations** tab. To view prior runs, select **Aggregation History**. ##### Next steps - For schema details, refer to [Schema Attributes](). - To assign owners to aggregated machine identities, refer to [Owner Correlation](). ## 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 Argo CD 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 uses datasets to schedule aggregation of the following resource types: | Dataset | Resource Type | Associated Resources | | --- | --- | --- | | Argo CD local users | Account | [Argo CD Local Users Resource](<#argo-cd-local-users-resource>) | | Argo CD project tokens | Credential | [Argo CD Project Tokens Resource](<#argo-cd-project-tokens-resource>) | ## Supported Resources A resource represents a type of object the connector collects from the connected system (such as, service accounts, bots or agents). Each resource defines the attributes collected for that object type (such as name, ID, or status) 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. ### Argo CD Local Users Resource | Field | Value | | --- | --- | | Resource ID | `argocd:local-user` | | Resource type | `std:account` | | Identity attribute | `identity` | | Display attribute | `name` | #### Attributes The following table lists schema attributes for the Argo CD Local Users resource: | Attribute | Description | Type | Entitlement | Multi-valued | | --- | --- | --- | --- | --- | | capabilities | Capabilities assigned to the account, such as `apiKey`. | string | No | Yes | | classification | Account classification. Local users with the `apiKey` capability are classified as machine accounts. | string | No | No | | enabled | Indicates whether the local user account is enabled. | boolean | No | No | | identity | Unique identifier for the local user in the source. Format: `local-user:{accountName}` | string | No | No | | name | Display name of the local user account. | string | No | No | | spDescription | Human-readable description for governance. | string | No | No | | spEnvironment | Deployment environment label, for example `production` or `development`. | string | No | No | | spStatus | Normalized lifecycle status: `Active`, `Inactive`, or `Pending`. | string | No | No | | tokenCount | Total number of tokens issued to the local user account. | int | No | No | | tokens | Metadata for JWT tokens issued to the local user. | string | No | Yes | ### Argo CD Project Tokens Resource | Property | Value | | --- | --- | | Resource ID | `argocd:project-token` | | Resource type | `std:credential` | | Identity attribute | `identity` | | Display attribute | `name` | #### Attributes The following table lists schema attributes for the Argo CD Project Tokens resource: | Attribute | Description | Type | Entitlement | Multi-valued | | --- | --- | --- | --- | --- | | description | Description of the token, if provided during creation. | string | No | No | | expiresAt | Date and time when the token expires, in ISO-8601 UTC format. Not present if the token does not expire. | string | No | No | | identity | Unique identifier for the token in the source. Format: `project-token:{project}:{role}:{tokenId}` | string | No | No | | isExpired | Indicates whether the token has passed its expiry date. | boolean | No | No | | issuedAt | Date and time when the token was created, in ISO-8601 UTC format. For example, `2026-03-30T02:30:00Z`. | string | No | No | | name | Display name of the token. Format: `{project}:{role}:{tokenId}` | string | No | No | | projectName | Name of the AppProject the token belongs to. | string | No | No | | role | Role associated with token, if any. | string | No | No | | spDescription | Human-readable description for governance. | string | No | No | | spEnvironment | Deployment environment label, for example production or development. | string | No | No | | spStatus | Normalized lifecycle status: `Active`, `Inactive`, or `Pending`. | string | No | No | | tokenId | Unique identifier for the token. | string | No | No | # Integrating SailPoint with Argo CD The SailPoint Argo CD connector is a read-only connector. Its purpose is to discover all machine credentials within Argo CD, such as local user accounts and project tokens, and pull them into SailPoint so they become visible to your security and governance teams. Once these machine identities are aggregated into SailPoint, you can assign ownership, conduct access reviews, run certification campaigns, and apply lifecycle management policies bringing the same level of governance to your CI/CD machine credentials that you already have for human identities. For more information, refer to [Supported Features](<#supported-features>). This guide describes how to connect SailPoint to Argo CD Cloud or another Argo CD deployment that exposes the standard Argo CD REST APIs. If you have Argo CD machine identities that you want to bring into SailPoint, start by creating a direct connect source using either Express Setup or Standard Setup. Once the source is configured, use [Dataset Management]() to configure owner correlation and dataset aggregation, discover machine identity resources such as local users and project tokens, and govern them in SailPoint. > [!NOTE] > > To view the latest features, enhancements, and fixes for all SaaS connectors, refer to the [SaaS Release Notes]() page. ## Supported Features The SailPoint Argo CD connector is a read-only connector. It supports the following features: | Feature | Description | | --- | --- | | Test Connection | Validates the Argo CD API endpoint and bearer token. | | Dataset Aggregation | Aggregates machine identities (local users and project tokens) from Argo CD. | ### Non-Human Identity Discovery - Aggregate Argo CD local users - Aggregate Argo CD project tokens Refer to Dataset Management for more information. Refer to [Discovering Potential Non-Human Accounts]() for more information. ## Supported Managed Systems The SailPoint Argo CD connector supports the following managed system: - Argo CD version 3.3.3 > [!IMPORTANT] > > Verify compatibility of Argo CD with your environment. Your Argo CD build must expose the REST endpoints this connector uses. ## Prerequisites - A running Argo CD deployment with HTTPS access to the Argo CD API endpoint. - An API token for an Argo CD account that can read the objects required for connectivity and aggregation. - Required permissions your organization requires for read-oriented discovery. For more information, refer to [Required Permissions](<#required-permissions>). ### Creating an API Token in Argo CD SailPoint authenticates to Argo CD using an API token (bearer token) associated with an Argo CD account that can call the APIs required for connectivity and aggregation. 1. Sign in to your Argo CD user interface, or use your organization's approved token-issuance process. 2. Select your **user account** or **profile**. > **Note** > > UI labels vary by version. To find user account, search for account settings or personal tokens within your Argo CD user interface. 3. Create a new API token. Choose an expiration consistent with your security policy. 4. Copy the token immediately and store it in your approved secrets tool. You will need to paste it into the SailPoint source as **Argo CD API Token**. > [!NOTE] > > UI labels and token generation flow can vary by Argo CD version and deployment. For UI-specific steps and screenshots, refer to your Argo CD vendor documentation or internal runbooks. ## Required Permissions The Argo CD account associated with your API token must be able to call the Argo CD REST APIs required for test connection and machine identity aggregation. Grant only the permissions your organization needed for read-oriented discovery. Exact RBAC settings are defined in your Argo CD policy configuration file (`policy.csv`) and role bindings. > [!NOTE] > > Regenerate and update the **Argo CD API Token** in SailPoint after you change permissions or token expiration policy in Argo CD. # 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](). ## Test connection fails **Resolution**: Verify the **Argo CD Server URL**, **Argo CD API Token**, TLS trust, and network access from SailPoint to your Argo CD endpoint. Confirm the token is not expired and has permissions to call the required Argo CD APIs. ## Machine identity aggregation returns no data **Resolution**: Confirm dataset aggregations are started or scheduled under **Dataset Management** for `argocd:local-user` and `argocd:project-token`, and that the token account can read the required Argo CD APIs.