functions/Get-BBUserMemberships.ps1

<#
.Synopsis
   Given a user ID, get all user enrollments.
.DESCRIPTION
   Given a user ID, get all user enrollments.
.EXAMPLE
   Get-BBUsers
   Get-BBUserMemberships -UserId '_11_' -Filter "role=Student&availability.available=Yes" -ExpandCourse = $true
#>

function Get-BBUserMemberships
{
    [CmdletBinding()]
    [Alias()]
    Param
    (
      [Alias("id")]
      [parameter(mandatory,ValueFromPipelineByPropertyName)][string]$UserID,
      [string]$Filter,
      [bool]$ExpandCourse=$false,
      [string]$Environment = 'Production'
    )

    Begin
    {

    }
    Process
    {
       if ($ExpandCourse -eq $true){
          if ($Filter -eq ""){
            $Filter = "expand=course"
          }else {
             $Filter += "&expand=course"
          }

       }
        $apiurl = "/learn/api/public/v1/users/$UserID/courses"
        Invoke-BBRestMethod -API $apiurl `
                    -Method Get `
                    -ContentType application/json `
                    -Filter $Filter `
                    -Environment $Environment
    }
    End
    {
    }
}