Public/Get-CategoryPlaylists.ps1
function Get-CategoryPlaylists { <# .SYNOPSIS Gets a category's playlists. .DESCRIPTION Get a list of Spotify playlists tagged with a particular category. .EXAMPLE PS C:\> Get-CategoryPlaylists "toplists" Retrieves details on a specific category with Id "toplists" .PARAMETER Id This should be a string The Id of the category we want to pull info on. #> param( # Id [Parameter(Mandatory)] [String] $Id ) $Limit = "50" $Offset = "0" $Query = "?&limit=$Limit&offset=$Offset" Write-Verbose "Attempting to return playlists that belong to category with Id $Id" $Method = "Get" $Uri = "https://api.spotify.com/v1/browse/categories/" + $Id + "/playlists" + $Query $Response = (Send-SpotifyCall -Method $Method -Uri $Uri -ErrorAction Stop).playlists # if we have to get more results because they weren't all included in the intial batch if ($Response.next) { # this is a bit messy for now, but shows the user that there were multiple calls that went above the API limit $ResponseArray = @() $ResponseArray += $Response While ($Response.next) { $Response = (Send-SpotifyCall -Method $Method -Uri $Response.next -ErrorAction Stop).playlists $ResponseArray += $Response } $ResponseArray += $Response return $ResponseArray } else { return $Response } } |