Reference / @open-music-sdk/client-catalog / getSongRelationship
Function: getSongRelationship()
function getSongRelationship<K>(
client,
id,
name,
options?
): Promise<tRelationshipPage<Omit<tSongRelationships, "library">, K>>;Defined in: clients/client-catalog/src/resources.ts:232
One relationship of a song, such as its albums, a page at a time. The library relationship needs the listener, and is not among the names.
Type Parameters
K
K extends | "genres" | "music-videos" | "albums" | "artists" | "composers" | "station"
Parameters
client
The client to ask with.
id
string
The song's id.
name
K
The relationship's name, one of the song's as the type has them; Apple says whether there is such a one.
options?
tReadOptions<tRelationshipPage<Omit<tSongRelationships, "library">, K>> & tStorefrontOption & object & tWalkOptions
The storefront to ask in, how many to send in one page, where to start, what to send beside them, and the signal and schema of the request.
Returns
Promise<tRelationshipPage<Omit<tSongRelationships, "library">, K>>
What Apple answered: the first page, with next where there is more; maxPages plays no part.
Throws
TypeError if client is no client or an argument is not what it should be, before Apple is asked.
Throws
AppleMusicError if Apple, the network, or a token provider fails, if the client has no storefront to ask in, or a schema finds issues; _tag says which.
Throws
The reason options.signal aborted with, when it does.
Throws
Whatever a token provider, store, schema, hook or rate limiter throws, as client.request passes it on.