# Connect Workday (LMS) as a Training Provider

Sprinto integrates with Workday Learning (LMS) to automatically sync training data such as course completion and user progress. Once connected, Sprinto can track training compliance, trigger campaigns, and map learning records to controls without manual intervention.

This integration uses secure API-based authentication and requires configuration within both Sprinto and Workday.

***

### How it Works

Sprinto connects to Workday using API credentials generated within your Workday account. The integration is powered via a secure authentication flow that requires specific permissions and scopes.

To enable the integration:

* You create a credential in Sprinto and initiate the connection.
* Sprinto guides you through required permissions and configuration steps.
* In Workday, you:
  * Retrieve your REST API endpoint
  * Create an Integration System User (ISU)
  * Assign required domain permissions via a security group
  * Generate API credentials (Client ID, Client Secret, Refresh Token)

Once configured:

* Sprinto fetches user and course data from Workday.
* Training completion and progress are continuously synced.
* Compliance checks are automatically evaluated.

***

### Required Permissions

To successfully connect Workday (LMS) with Sprinto, you must grant specific read-only permissions to the Integration System User (ISU) via the assigned security group.

Ensure that each permission is configured with the correct access level in **Maintain Permissions for Security Group**.

#### Domain Security Policy Permissions

<table><thead><tr><th width="146.44140625">Access Type</th><th width="326.453125">Domain</th></tr></thead><tbody><tr><td>Get Only</td><td>Worker Data: Workers</td></tr><tr><td>Get Only</td><td>Worker Data: Public Worker Reports</td></tr><tr><td>Get Only</td><td>Worker Data: Current Staffing Information</td></tr><tr><td>Get Only</td><td>Person Data: Work Email</td></tr><tr><td>Get Only</td><td>Set Up: Learning Catalog</td></tr><tr><td>View Only</td><td>Set Up: Learning Catalog</td></tr><tr><td>Get Only</td><td>Reports: Learning Record</td></tr><tr><td>View Only</td><td>Reports: Learning Record</td></tr></tbody></table>

{% hint style="warning" %}

#### Important

* Select the **exact access type** (Get Only or View Only) for each domain
* Do not assign broader permissions such as *View and Modify* or *Get and Put*
* Permissions must be assigned to the **Integration System Security Group** linked to the ISU
* After assigning permissions, you must **activate pending security policy changes** for them to take effect
  {% endhint %}

***

### Use Cases

<table><thead><tr><th width="324.85546875">Use case</th><th>Description</th></tr></thead><tbody><tr><td>Automate training compliance tracking</td><td>Automatically track completion of mandatory training programmes</td></tr><tr><td>Centralise training data</td><td>Consolidate Workday learning data within Sprinto for audits</td></tr><tr><td>Reduce manual effort</td><td>Eliminate manual uploads of training records</td></tr><tr><td>Audit readiness</td><td>Provide verifiable training evidence mapped to controls</td></tr><tr><td>Continuous monitoring</td><td>Ensure ongoing compliance through automated checks</td></tr></tbody></table>

***

### Dashboard Actions

#### Step 1: Navigate to Trainings

1. Log in to the Sprinto dashboard.
2. Navigate to **Data Library → Trainings.**

<figure><img src="https://3220032727-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FEsyn5VMU6e0OyGjRtKgx%2Fuploads%2Fqou6qgD9ydsaCCJWD5yD%2FScreenshot%202026-04-20%20at%2012.21.31.png?alt=media&#x26;token=76375d1b-90e4-4502-978c-4c79518f1ff3" alt="" width="563"><figcaption></figcaption></figure>

***

#### Step 2: Add Workday as a Training Provider

1. Click **Add training provider.**
2. In the drawer, locate **Workday (LMS).**
3. Click **Connect.**

<figure><img src="https://3220032727-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FEsyn5VMU6e0OyGjRtKgx%2Fuploads%2FgVgf6ZAMUEVtCCv68hNI%2FScreenshot%202026-04-20%20at%2012.22.36.png?alt=media&#x26;token=757f6b26-3c47-44ff-8091-12db6440eb7f" alt="" width="375"><figcaption></figcaption></figure>

***

#### Step 3: Create Credential

1. Select **Credential Type** as *Workday (LMS).*
2. Enter a **Credential Name.**
3. Add a description.
4. Click **Create Credential.**

<figure><img src="https://3220032727-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FEsyn5VMU6e0OyGjRtKgx%2Fuploads%2F3dADOK00Mu7Ha0avX3Hl%2FScreenshot%202026-04-20%20at%2012.23.44.png?alt=media&#x26;token=23cfac68-b671-4d9b-b598-8666242a06ad" alt="" width="375"><figcaption></figcaption></figure>

This opens the Workday connection flow.

***

#### Step 4: Review and Approve Permissions

1. Review all requested permissions in the Workday pop-up.
2. Expand each section:
   * Read users
   * Read courses
   * Read course revisions
   * Read course progressions
3. Click **Continue.**

<figure><img src="https://3220032727-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FEsyn5VMU6e0OyGjRtKgx%2Fuploads%2Fd0gaJuUSAWuwhQZs5qIT%2FScreenshot%202026-04-20%20at%2012.59.22.png?alt=media&#x26;token=1902b249-75d3-40a6-af2e-66684d3169e4" alt="" width="369"><figcaption></figcaption></figure>

***

#### Step 5: Add Workday REST API Endpoint

1. In your Workday account, use the **Search** bar at the top and enter **View API Clients**.
2. From the results, click on the **View API Clients** task to open the API Clients page.

<figure><img src="https://3220032727-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FEsyn5VMU6e0OyGjRtKgx%2Fuploads%2FFR7FiNrOBRTBwJoBLM5x%2FWorkday%20find%20Service%20URL1.png?alt=media&#x26;token=7e901916-39f1-4544-9733-478e710a27d5" alt=""><figcaption></figcaption></figure>

3. On the **View API Clients** page, locate the field labelled **Workday REST API Endpoint**.
4. Copy the endpoint value. The URL will follow this format:\
   `https://{domain}/ccx/api/v1/{tenant}`

<figure><img src="https://3220032727-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FEsyn5VMU6e0OyGjRtKgx%2Fuploads%2FvWq3jtHXm53lTGmVvmo0%2FWorkday%20see%20Service%20URL2.png?alt=media&#x26;token=f745679a-341c-438e-bfc5-5a3e6ddd1c8d" alt="" width="563"><figcaption></figcaption></figure>

5. Return to Sprinto and paste the copied value into the **Workday REST API Endpoint** field.
6. Click **Continue** to proceed.

<figure><img src="https://3220032727-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FEsyn5VMU6e0OyGjRtKgx%2Fuploads%2FVeCLsxSbEDyumVDB7QXJ%2FScreenshot%202026-04-20%20at%2013.04.27.png?alt=media&#x26;token=a6873ba1-1947-479c-9174-72ec2dfdf011" alt="" width="368"><figcaption></figcaption></figure>

***

#### Step 6: Create Integration System User (ISU)

1. In your Workday account, use the **Search** bar at the top and enter **Create Integration System User**.
2. From the results, click on the **Create Integration System User** task.

<figure><img src="https://3220032727-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FEsyn5VMU6e0OyGjRtKgx%2Fuploads%2FeXf7e1fwchp3jv4acZ1m%2FWorkday%20create%20ISU3.png?alt=media&#x26;token=3ed97d06-0f73-4c44-b581-2704f614493a" alt=""><figcaption></figcaption></figure>

3. In the dialog that appears, enter the following details:
   * **Username** for the integration user
   * **Password** (ensure it meets Workday’s password requirements)
4. (Optional but recommended) Select **Generate Random Password** or create a strong password manually and store it securely.
5. Enable the checkbox **Do Not Allow UI Sessions** to restrict interactive login for this user.
6. You can leave the remaining fields (such as session timeout settings) as default unless your organisation requires specific configurations.
7. Click **OK** to create the Integration System User.

<figure><img src="https://3220032727-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FEsyn5VMU6e0OyGjRtKgx%2Fuploads%2FW6ZybaoWb69KXDNlyEeE%2Fworkday4.png?alt=media&#x26;token=0ce3f56f-270e-4552-a049-cb3da2abdfa4" alt="" width="563"><figcaption></figcaption></figure>

***

#### Step 7: Create Security Group and Assign User

1. In your Workday account, use the **Search** bar at the top and enter **Create Security Group**.
2. From the results, click on the **Create Security Group** task.

<figure><img src="https://3220032727-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FEsyn5VMU6e0OyGjRtKgx%2Fuploads%2FQW7wGNwhETwiVWAlGpDT%2FWorkday%20create%20security%20group5.png?alt=media&#x26;token=b5d52aee-c6c7-422d-8673-4ddf2da92590" alt=""><figcaption></figcaption></figure>

3. On the **Create Security Group** screen:
   1. Locate the dropdown **Type of Tenanted Security Group.**
   2. Select **Integration System Security Group (Unconstrained).**
4. In the **Name** field, enter the same value as the **Integration System User (ISU) username** you created earlier.
5. Click **OK** to create the security group.

<figure><img src="https://3220032727-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FEsyn5VMU6e0OyGjRtKgx%2Fuploads%2FTnj8a6bxasRTM8e2O7V3%2FWorkday%20configure%20security%20group6.png?alt=media&#x26;token=bc969cd2-7ba7-48e5-965e-1565ff0fbc4c" alt="" width="523"><figcaption></figcaption></figure>

6. On the next screen (Edit Security Group):
   1. Locate the **Integration System Users** field.
   2. Add the ISU you created earlier by searching and selecting the username.
7. (Optional) You can leave other fields such as comments or context type unchanged unless required by your organisation.
8. Click **OK** to save and assign the user to the security group.

<figure><img src="https://3220032727-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FEsyn5VMU6e0OyGjRtKgx%2Fuploads%2F0B96rS3TZAFeW83Aarm5%2FWorkday%20edit%20security%20group7.png?alt=media&#x26;token=a6caf837-a588-49bc-91a9-c125c4b9f8a7" alt="" width="375"><figcaption></figcaption></figure>

***

#### Step 8: Assign Required Domain Permissions

1. In Workday, use the **Search** bar and enter **Maintain Permissions for Security Group**.
2. Select the task **Maintain Permissions for Security Group** from the results.

<figure><img src="https://3220032727-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FEsyn5VMU6e0OyGjRtKgx%2Fuploads%2FaI5SiYybHG36HH5ohOBt%2FWorkday%20maintain%20permissions%20of%20security%20gruop8.png?alt=media&#x26;token=12d33b36-500c-4b96-a92e-8b41a4832eee" alt=""><figcaption></figcaption></figure>

3. In the window that opens:
   1. Ensure the **Operation** is set to **Maintain.**
   2. In the **Source Security Group** field, search for and select the security group you created earlier (same name as the ISU).
4. Click **OK** to proceed.

<figure><img src="https://3220032727-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FEsyn5VMU6e0OyGjRtKgx%2Fuploads%2FSQ8hNIrdizUyNBgPRpXz%2FWorkday%20select%20security%20group%20to%20maintain9.png?alt=media&#x26;token=559650d9-fce8-4337-8343-81fc7b47ce53" alt="" width="563"><figcaption></figcaption></figure>

5. You will be redirected to the permissions configuration page. Ensure the tab **Domain Security Policy Permissions** is selected.
6. Click the **“+” (Add)** icon to start adding permissions.

<figure><img src="https://3220032727-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FEsyn5VMU6e0OyGjRtKgx%2Fuploads%2FGg4K69vyqCEeuIVady3u%2Fworkday01.png?alt=media&#x26;token=e8d4ff7b-6ceb-4f87-bd2c-ea1aca26c115" alt="" width="542"><figcaption></figcaption></figure>

7. For each required permission, repeat the following steps:
   1. In the **View/Modify Access** column:
      * Select the appropriate access type (**Get Only** or **View Only**) from the dropdown.
   2. In the **Domain Security Policy** column:
      * Use the search field to enter the domain name.
      * Select the correct domain from the search results.
   3. See the example image given below.

<figure><img src="https://3220032727-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FEsyn5VMU6e0OyGjRtKgx%2Fuploads%2FnUNA2qiO9yn4qckaFEji%2Fworkday02.png?alt=media&#x26;token=99243b1d-fe60-4934-82bc-6c6820f30544" alt="" width="563"><figcaption></figcaption></figure>

8. Add the following permissions:
   * **Get Only**: Worker Data: Workers
   * **Get Only**: Worker Data: Public Worker Reports
   * **Get Only**: Worker Data: Current Staffing Information
   * **Get Only**: Person Data: Work Email
   * **Get Only**: Set Up: Learning Catalog
   * **View Only**: Set Up: Learning Catalog
   * **Get Only**: Reports: Learning Record
   * **View Only**: Reports: Learning Record
9. Continue adding entries until all required permissions are configured.
10. Once completed, click **OK** to save the permissions.

***

#### Step 9: Activate Security Changes

1. In Workday, use the **Search** bar and enter **Activate Pending Security Policy Changes**.
2. Select the task **Activate Pending Security Policy Changes** from the results.

<figure><img src="https://3220032727-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FEsyn5VMU6e0OyGjRtKgx%2Fuploads%2FaYlGPqK8i2n5B1yibOiT%2FWorkday03.png?alt=media&#x26;token=353ef975-44f7-45eb-ad4b-5c6fcbbb7d6d" alt=""><figcaption></figcaption></figure>

3. In the window that appears:
   1. Enter a **comment** describing the changes (optional but recommended)
      * Example: *Grant ISU required permissions for Sprinto integration*
4. Click **OK**.

<figure><img src="https://3220032727-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FEsyn5VMU6e0OyGjRtKgx%2Fuploads%2Fl8zYxzze2NaHzOqYB3KH%2FWorkday04.png?alt=media&#x26;token=d821b535-0ce9-4693-94ce-78e234bbe01b" alt="" width="375"><figcaption></figcaption></figure>

5. In the confirmation screen:
   1. Review the **Current Security Evaluation Moment** and **Proposed Security Evaluation Moment.**
   2. Verify that your recent changes are included.
6. Select the **Confirm** checkbox to approve the changes.
7. Click **OK** to apply the updates.

<figure><img src="https://3220032727-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FEsyn5VMU6e0OyGjRtKgx%2Fuploads%2FLK24UgpEjp17zMk8VeC0%2FWorkday05.png?alt=media&#x26;token=a0da780b-07d2-4d2f-8acc-7fed5048956d" alt="" width="356"><figcaption></figcaption></figure>

***

#### Step 10: Create API Client

1. In Workday, use the **Search** bar and enter **Register API Client for Integrations**.
2. Select the task **Register API Client for Integrations** from the results.

<figure><img src="https://3220032727-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FEsyn5VMU6e0OyGjRtKgx%2Fuploads%2Fd9DC0dJXTlUUiriFBV7c%2Fwork1.png?alt=media&#x26;token=1b11da1a-e40e-4f2f-90cf-ba50126c79bb" alt=""><figcaption></figcaption></figure>

3. In the window that appears:
   * Enter a **Client Name.**
     * Example: *Sprinto API Client* (or any identifiable name).
4. Enable **Non-Expiring Refresh Tokens**
5. In the **Scope (Functional Areas)** field:
   * Add the required scopes for LMS integrations:
     * **Tenant Non-Configurable**
     * **Staffing**
     * **Contact Information**
     * **Learning Core**
6. Click **OK** to create the API client.

<figure><img src="https://3220032727-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FEsyn5VMU6e0OyGjRtKgx%2Fuploads%2FQZu2TPyJ36E2RhRRFCSD%2Fwork2.png?alt=media&#x26;token=f8b99464-6f53-4340-bb32-9812db100398" alt="" width="563"><figcaption></figcaption></figure>

***

#### Retrieve Client Credentials

6. After creation, a details page will appear:

   * Copy and securely store:
     * **Client ID**
     * **Client Secret**

   These values will be required when completing the integration in Sprinto.

<figure><img src="https://3220032727-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FEsyn5VMU6e0OyGjRtKgx%2Fuploads%2Fi94oxEnDHYEuBvB9aOkd%2Fwork3.png?alt=media&#x26;token=d9c7b237-0b45-4025-9c0a-b38cb16401e9" alt="" width="563"><figcaption></figcaption></figure>

***

#### Generate Refresh Token

7. On the same page:
   1. Click the **three-dot menu (⋯)** at the top.
   2. Navigate to **API Client → Manage Refresh Tokens for Integrations.**

<figure><img src="https://3220032727-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FEsyn5VMU6e0OyGjRtKgx%2Fuploads%2FvoXuBYw9xg4tRwbe7FVN%2Fwork4.png?alt=media&#x26;token=f977da9f-bfe8-4d98-96b6-7606e5aebafe" alt="" width="563"><figcaption></figcaption></figure>

8. In the dialog, select the **Workday Account** (enter the ISU created earlier)
9. Click **OK**.

<figure><img src="https://3220032727-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FEsyn5VMU6e0OyGjRtKgx%2Fuploads%2F0o73puYNp2slpJhjFn2N%2Fwork5.png?alt=media&#x26;token=5ff93c1c-b78d-4f64-9162-dd405c38cd95" alt=""><figcaption></figcaption></figure>

10. In the next screen, select **Generate New Refresh Token.**
11. Click **OK**.

<figure><img src="https://3220032727-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FEsyn5VMU6e0OyGjRtKgx%2Fuploads%2FW65HztmGbJzbuLCQ73Ht%2Fwork6.png?alt=media&#x26;token=6e3db622-92ae-42e7-8012-15a3ca474b0f" alt="" width="563"><figcaption></figcaption></figure>

12. Once the token is generated:
    1. Copy the **Refresh Token.**
    2. Store it securely for later use in Sprinto.

<figure><img src="https://3220032727-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FEsyn5VMU6e0OyGjRtKgx%2Fuploads%2F0IlirlFyUkwa1lUwxuu1%2Fwork7.png?alt=media&#x26;token=230c52dc-5f1b-4809-b631-f4d0a477d4a6" alt="" width="563"><figcaption></figcaption></figure>

{% hint style="warning" %}

#### Important

* The refresh token is required to complete authentication with Sprinto.
* Ensure you copy all credentials (**Client ID, Client Secret, Refresh Token**) before exiting the screen.
  {% endhint %}

***

#### Step 11: Complete Integration in Sprinto

1. Enter:
   * Client ID
   * Client Secret
   * Refresh Token
2. Click **Set up integration.**

<figure><img src="https://3220032727-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FEsyn5VMU6e0OyGjRtKgx%2Fuploads%2FtSY0Ub8OMgt55xQKAj2q%2FScreenshot%202026-04-20%20at%2014.51.12.png?alt=media&#x26;token=2c2a9f31-6bd1-4972-b562-323838c843bf" alt="" width="563"><figcaption></figcaption></figure>

Once successful, Sprinto begins syncing Workday training data.

***

### Summary

By integrating Workday LMS with Sprinto, you enable automated syncing of training data, allowing continuous monitoring of employee learning and compliance. This removes manual effort and ensures audit readiness with real-time evidence collection.
