class AppleMusic::Playlist
Public Class Methods
find(id, **options)
click to toggle source
e.g. AppleMusic::Playlist.find
('pl.acc464c750b94302b8806e5fcbe56e17') developer.apple.com/documentation/applemusicapi/get_a_catalog_playlist
# File lib/apple_music/playlist.rb, line 9 def find(id, **options) storefront = Storefront.lookup(options.delete(:storefront)) response = AppleMusic.get("catalog/#{storefront}/playlists/#{id}", options) Response.new(response.body).data.first end
get_collection_by_ids(ids, **options)
click to toggle source
e.g. AppleMusic::Playlist.get_collection_by_ids
(['pl.acc464c750b94302b8806e5fcbe56e17', 'pl.97c6f95b0b884bedbcce117f9ea5d54b']) developer.apple.com/documentation/applemusicapi/get_multiple_catalog_playlists
# File lib/apple_music/playlist.rb, line 24 def get_collection_by_ids(ids, **options) ids = ids.is_a?(Array) ? ids.join(',') : ids storefront = Storefront.lookup(options.delete(:storefront)) response = AppleMusic.get("catalog/#{storefront}/playlists", options.merge(ids: ids)) Response.new(response.body).data end
get_relationship(id, relationship_type, **options)
click to toggle source
e.g. AppleMusic::Playlist.get_relationship
('pl.acc464c750b94302b8806e5fcbe56e17', :curator) developer.apple.com/documentation/applemusicapi/get_a_catalog_playlist_s_relationship_directly_by_name
# File lib/apple_music/playlist.rb, line 33 def get_relationship(id, relationship_type, **options) storefront = Storefront.lookup(options.delete(:storefront)) response = AppleMusic.get("catalog/#{storefront}/playlists/#{id}/#{relationship_type}", options) Response.new(response.body).data end
list(**options)
click to toggle source
e.g. AppleMusic::Playlist.list
(ids: ['pl.acc464c750b94302b8806e5fcbe56e17', 'pl.97c6f95b0b884bedbcce117f9ea5d54b'])
# File lib/apple_music/playlist.rb, line 16 def list(**options) raise ParameterMissing, 'required parameter :ids is missing' unless options[:ids] get_collection_by_ids(options.delete(:ids), options) end
search(term, **options)
click to toggle source
# File lib/apple_music/playlist.rb, line 49 def search(term, **options) AppleMusic.search(**options.merge(term: term, types: :playlists)).playlists end