iSpring Learn (iSpring LMS) logo iSpring Learn (iSpring LMS) automation

Enroll an iSpring Learn department in a course

A new compliance course goes live, and someone has to pick the right department, check who already has the course, set the dates and press Enroll in the wizard, again for every team.

Cotlet does it in your own iSpring Learn (iSpring LMS) account with list_courses, list_departments, list_users, list_enrollments and enroll_users, called by your AI agent, an n8n workflow or a script.

Hosted · nothing to install or maintain

Can iSpring Learn (iSpring LMS) do this on its own?

iSpring Learn has the Enroll Users wizard and, on the Business subscription, a REST API with an enrollment call (checked 20 Oct 2026). A Zapier action, Enroll Users in Courses, takes users you already picked. Nothing in iSpring Learn repeats the choice of department, dates and exclusions from a sentence.

How you do it in iSpring Learn (iSpring LMS) today

  1. An administrator opens Learning Content, Courses, picks the course and clicks Enroll Users in the top menu, or opens the course's Edit Course page and its Enrollments tab.
  2. The wizard runs Courses, Users, Parameters. On Users the administrator uses Advanced Search to pick a department, a group or a profile field such as position or country.
  3. On Parameters the administrator sets the start date and one of four due date options: Use course settings, By Date, For a period or No Due Date, and may tick Restrict access after due date.
  4. After Enroll, learners get a notification in the user portal and by email, and the course shows in My Courses.
  5. Nothing in the wizard repeats for the next team: the administrator opens it again, and the course's Enrollments tab is the only place to check who already had it.

How to enroll an iSpring Learn department in a course

Prompt

Enroll everyone in the Sales department who is not yet in Information Security Basics. Start on 2 November, due 30 November, and list who you skipped.
  1. 01

    Find the department

    Your agent calls list_departments with the name from your prompt and takes its department_id. If two departments match, it asks which one before touching anyone. A Department Administrator sees only the departments they manage, so a department outside that list is not found.

  2. 02

    List the people who can be enrolled

    list_users runs with that department_id and status active. Inactive users are left out on purpose: iSpring Learn does not let an inactive user be assigned to a course.

  3. 03

    Skip who already has the course

    list_enrollments for the course gives everyone already enrolled, whatever their status. The agent removes them from the list, so nobody gets a second enrollment or a fresh start date over their progress.

  4. 04

    Pick the dates

    The agent passes start_date and due_mode from your prompt. With no dates it uses use_course_settings, which takes the due date from the Availability tab of the course. A month counts as 30 days and a year as 365, so "for 2 months" is 60 days.

  5. 05

    Enroll once

    enroll_users sends one call for the whole list and waits for your OK by default. The agent then reports who was enrolled and who was skipped, with the reason.

What you get back

Example data

Information Security Basics, Sales department
Enrolled 12, start 2 Nov 2026 09:00, due 30 Nov 2026
Skipped 5 (already enrolled)
Skipped 2 (inactive accounts)
Learners were notified in the portal and by email

Other ways to ask

  • Enroll the New hires 2026 group in Onboarding for New Hires, due 14 days after their start.
  • Enroll the Support department in two courses at once, and set Restrict access after due date.
  • Show who in Sales is not in Information Security Basics, but enroll nobody.
  • Every Monday, enroll people who joined the department last week in its onboarding course.

What iSpring Learn (iSpring LMS) allows, and what to know first

  • iSpring Learn counts a month as 30 days and a year as 365 in a For a period due date.
  • Department Administrators and custom roles can enroll only users from the departments they manage and their sub-departments.
  • Restrict access after due date is available with By Date or For a period, and learners cannot study the content once the date passes.
  • In a course that contains a training, the training start date coincides with the course start date, and a session that starts before the course start is an error.
  • An administrator enrolled as a learner counts in reports when they preview the course from the administrator portal.

enroll_users asks for your OK by default. To run it on a schedule without you, switch confirmation off for that tool in your dashboard.

Sources: iSpring Help: Enrolling Learners in a Course · iSpring Help: Course Notifications · iSpring Help: REST API · iSpring Learn on Zapier MCP

Call enroll_users from a script

curl

curl -X POST https://cotlet.dev/api/v1/ispring/users/enroll \
  -H "Authorization: Bearer $COTLET_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"course_ids":["c_4f2a91"],"user_ids":["u_81c2d4","u_81c2e9"],"start_date":"2026-11-02T09:00","due_mode":"by_date","due_date":"2026-11-30"}'

Example response

{
  "enrolled": 2,
  "enrollments": [
    {
      "enrollment_id": "e_70a1b3",
      "user": "Ana Lopez",
      "course": "Information Security Basics",
      "start_date": "2026-11-02T09:00:00",
      "due_date": "2026-11-30T00:00:00"
    },
    {
      "enrollment_id": "e_70a1b4",
      "user": "Tom Becker",
      "course": "Information Security Basics",
      "start_date": "2026-11-02T09:00:00",
      "due_date": "2026-11-30T00:00:00"
    }
  ]
}

MCP: add https://cotlet.dev/mcp/v1 with the same key; the call is ispring_write → enroll_users. Example data.

Schedule it in n8n, Make, Zapier or cron

iSpring Learn (iSpring LMS) tools this automation uses

Cotlet iSpring Learn (iSpring LMS) tools used to enroll an iSpring Learn department in a course
Tool Parameters
list_courses query, limit, cursor
list_departments query
list_users query, department_id, group_id, status, limit, cursor
list_enrollments course_id, status, overdue_only, cursor
enroll_users course_ids, user_ids, start_date, due_mode, due_date, due_period, restrict_access_after_due
All 12 iSpring Learn (iSpring LMS) tools with descriptions

Frequently asked questions

Do learners get an email when my agent enrolls them?

Yes. iSpring Learn sends the enrollment notification in the user portal and by email, using the text in the Notifications tab of the course. That is why enroll_users waits for your OK by default.

Is it safe to connect iSpring Learn (iSpring LMS) to Cotlet?

Yes. You sign in to iSpring Learn (iSpring LMS) yourself, in your own Cloud Browser in the EU, and we never save your password. Your agents only get iSpring Learn (iSpring LMS) once you enable it, every background request is listed, and the browser profile is stored encrypted with AES-256-GCM, the cipher 1Password uses for its vaults. The AI model never sees a login, posts and messages wait for your OK, and Disable for agents cuts access in one click. Independent scanners grade cotlet.dev A+ on Qualys SSL Labs, securityheaders.com and Mozilla Observatory; live results are on https://cotlet.dev/security.

Give your agent access to iSpring Learn (iSpring LMS).

Free 7-day trial with 2,000 credits, no card needed. Cotlet is independent and not affiliated with iSpring Learn (iSpring LMS).