# Connecting SailPoint and SuccessFactors SaaS

To connect SailPoint and SuccessFactors SaaS, perform the following tasks:

## Enable SOAP API in SuccessFactors SaaS

1. In SuccessFactors, sign in to the **Provisioning Access Console**. Select your company, and go to **Company Settings**.

   > **Note**
   >
   > Refer to the SuccessFactors product documentation for more information.
2. Under **Web Services** enable the following items:

   - **SFAPI** - SFAPI is SuccessFactors' Data API. It is a SOAP Web Service designed to import and export data to and from your SuccessFactors deployment. For more information about SFAPI, refer to [SAP Support Portal](<https://support.sap.com/>).
   - Employee Central SOAP API
   - To provide information about global assignments, such as dependents accompanying an employee on a global assignment:

     - Enable Global Assignment Management
     - Enable Dependents Management

## Register a Client Application in SuccessFactors

Register SailPoint with the managed system so it can access the SuccessFactors REST APIs. This process involves registering a client application, generating a certificate, and obtaining Client ID attributes. For detailed information about registering a client application in SuccessFactors, refer to [Registering Your Client Application in the SAP Help Portal](<https://help.sap.com/docs/SAP_SUCCESSFACTORS_PEOPLE_ANALYTICS/6d67a922bf7c4a79b1e3088247341d28/77c5e140ac3d47ba80e1e58d33abc477.html>).

> [!NOTE]
>
> The linked document is not maintained by SailPoint and is subject to change without notice.

1. Register your client application with SuccessFactors by going to **Admin Center \> Company Settings \> Manage OAuth2 Client Applications \> Register Client Application**.
2. Provide information for the mandatory fields such as **Application Name**, **Description**, and **Application URL**.

   For example, the application name value can be "SailPointApp" and the URL can be `https://SailPointApp`
3. Select **Generate X.509 Certificate** and enter the values as required.
4. Select **Generate** and download a copy of the **X.509** certificate on your computer.
5. Open the **X.509** certificate file. The **X.509** certificate includes:

   - Private key
   - Certificate
6. Copy the characters between `-----BEGIN ENCRYPTED PRIVATE KEY-----` and `-----END ENCRYPTED PRIVATE KEY-----` and paste it in the **Private Key** field. This private key is used as a configuration parameter for test connection operations.
7. Select **Register**.

> [!NOTE]
>
> Save the generated API Key. The key is used as the Client ID configuration parameter for test connection operations.

To connect SailPoint with SuccessFactors, 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 **Configure**.
5. In the **Source Name** field, enter a unique and descriptive name for your source. Source names cannot exceed 128 characters.
6. 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.
7. 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](<https://documentation.sailpoint.com/saas/help/sources/index.html#assigning-a-source-owner>).
8. (Optional) Select a governance group to grant its members [source](<https://documentation.sailpoint.com/saas/help/common/users/user_levels.html#source-sub-admin-user-level>) or [role](<https://documentation.sailpoint.com/saas/help/common/users/user_levels.html#role-sub-admin-user-level>) sub-admin level oversight of the source and its access. For more information, refer to [Creating and Managing Governance Groups](<https://documentation.sailpoint.com/saas/help/common/users/governance_groups.html>).
9. 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](<https://documentation.sailpoint.com/saas/help/setup/identity_profiles.html>).
10. 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](<https://documentation.sailpoint.com/connectors/help/credential_providers.html>).
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](<https://documentation.sailpoint.com/saas/help/common/users/governance_groups.html#associating-a-governance-group-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

Provide the information required for the source to connect and interact with the source.

> [!NOTE]
>
> **Screenshot**
>
> [![Connection Settings](<https://documentation.sailpoint.com/connectors/successfactors/saas/help/img/connection_settings.png>)](<https://documentation.sailpoint.com/connectors/successfactors/saas/help/img/connection_settings.png>)

1. Enter the unique **Base URL** to connect to the SuccessFactors system through an API. For example:

   `https://<hostname.successfactors.com>:<port>`

   1. The Base URL is usually the API Service endpoint of your company instance and it tends to be similar to `https://api<number>.sapsf.com`. For reference: [List of SAP SuccessFactors API Servers | SAP Help Portal](<https://help.sap.com/docs/SAP_SUCCESSFACTORS_PLATFORM/d599f15995d348a1b45ba5603e2aba9b/af2b8d5437494b12be88fe374eba75b6.html>).
   2. This connector will try to add the string "api" at the beginning of the base URL in case the already added base URL doesn't start with "api".
2. Select an **Authentication Type** from the drop-down menu.
3. Select a **Grant Type** from the drop-down menu.
4. Enter the **Company ID** for user provisioning.

   During licensing of the SuccessFactors solution, you are provided a unique company ID. The OData API uses the company ID attribute to validate your access token.
5. Enter the **Client ID** the authorization client issued you during the registration process. You receive the client ID when you [Register a Client Application in SuccessFactors SaaS](<#register-a-client-application-in-successfactors>).

   > **Note**
   >
   > The Client ID is required for OAuth 2.0 authentication.
6. Enter the SuccessFactors **User ID** that has the appropriate permissions as described in [Required Permissions](<https://documentation.sailpoint.com/connectors/successfactors/saas/help/index.html#required-permissions>).
7. Enter the extracted **Private Key** from the X.509 certificate that was generated when you [Register a Client Application in SuccessFactors SaaS](<#register-a-client-application-in-successfactors>).

   > **Note**
   >
   > Private key information is required for OAuth 2.0 authentication for accessing SuccessFactors OData API.
8. Select **Save**.

## Configuring Additional Features

After establishing the connection, configure the source based on your requirements:

- [Configuring Aggregation Settings](<https://documentation.sailpoint.com/connectors/successfactors/saas/help/aggregation_settings.html>)
- [Configuring Picklists](<https://documentation.sailpoint.com/connectors/successfactors/saas/help/picklist_configuration.html>)
- [Configuring Advanced Settings](<https://documentation.sailpoint.com/connectors/successfactors/saas/help/advanced_settings.html>)

## Additional Settings

Configure optional settings to modify the aggregation page size, API server URL, and API timeout.

> [!NOTE]
>
> **Screenshot**
>
> [![Additional Settings](<https://documentation.sailpoint.com/connectors/successfactors/saas/help/img/additional_settings.png>)](<https://documentation.sailpoint.com/connectors/successfactors/saas/help/img/additional_settings.png>)

1. In **Time Zone** Select the SuccessFactors Server Time Zone to use for all connector operations. If UTC is chosen, the connector will operate using the UTC time zone.
2. Enter **Page Size** to specify the number of records fetched in a single call. You must use a number between 200 and 800 records. The default value is 200 records.
3. Enter the **API Server URL** if the SuccessFactors API URL is different than the Base URL using the format `https://<host>:<port>`.
4. Enter the SuccessFactors **API Timeout** duration in minutes. The default value is `5` minutes.
5. 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](<https://documentation.sailpoint.com/saas/help/ai/app_onboarding/index.html>) in the SailPoint SaaS documentation.
