class AppleMusic::Artist

developer.apple.com/documentation/applemusicapi/artist

Public Class Methods

find(id, **options) click to toggle source

e.g. AppleMusic::Artist.find(178834) developer.apple.com/documentation/applemusicapi/get_a_catalog_artist

# File lib/apple_music/artist.rb, line 9
def find(id, **options)
  storefront = Storefront.lookup(options.delete(:storefront))
  response = AppleMusic.get("catalog/#{storefront}/artists/#{id}", options)
  Response.new(response.body).data.first
end
get_collection_by_ids(ids, **options) click to toggle source

e.g. AppleMusic::Artist.get_collection_by_ids([178834, 462006]) developer.apple.com/documentation/applemusicapi/get_multiple_catalog_artists

# File lib/apple_music/artist.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}/artists", options.merge(ids: ids))
  Response.new(response.body).data
end
get_relationship(id, relationship_type, **options) click to toggle source

e.g. AppleMusic::Artist.get_relationship(178834, :albums) developer.apple.com/documentation/applemusicapi/get_a_catalog_artist_s_relationship_directly_by_name

# File lib/apple_music/artist.rb, line 33
def get_relationship(id, relationship_type, **options)
  storefront = Storefront.lookup(options.delete(:storefront))
  response = AppleMusic.get("catalog/#{storefront}/artists/#{id}/#{relationship_type}", options)
  Response.new(response.body).data
end
list(**options) click to toggle source

e.g. AppleMusic::Artist.list(ids: [178834, 462006])

# File lib/apple_music/artist.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