PowerShell Mindflash Automation

Having a position where part of my job is to administrate users within Mindflash I am frequently completing the following tasks on Mindflash:

  • Creating Users
  • Enrolling users in courses
  • Resetting user passwords

Often these tasks need to be completed for either an individual user or a batch of users at any given time. While Mindflash provides some bulk administration options through their web portal I found it a little limiting and a little clunky to use.

So naturally been a fan on the command line and primarily a Linux user I thought it would be great to be able to administer Mindflash users from a command line, In this case PowerShell. I have created Get-MindflashUser, A PowerShell cmdlet that hooks into the Mindflash API allowing for administration of users.

Get-MindflashUser allows you to complete all of the following tasks without ever leaving the PowerShell window.

  • Get a list of all Mindflash users
  • Get a list of all Mindflash courses
  • Get a list of all users in a specific course
  • Get a specific users details
  • Get a specific users details including course enrolment details
  • Get course progress for a given user and course
  • Invite users to a course
  • Reset user password
  • Create new users

In addition to all of this, you would obviously be able to use Get-MindflashUser within you own scripts to automate repetitive tasks or generate reports.

Some Examples of Use

Resetting a users password:

get-MindflashUser -email user@email.com -resetPassword true -newPassword P@ssword21 –Key

Creating a new user:

get-MindflashUser -email user@email.com -first michael -last cho -newUser true -newPassword P@ssword21 –Key

You can find the script available on my GitHub: get-MindFlashUser.ps1