ArtistsAPI

class minim.api.tidal.ArtistsAPI(client: APIClient, /)[source]

Bases: TIDALResourceAPI

Artist Roles and Artists API endpoints for the TIDAL API.

Important

This class is managed by TIDALAPIClient and should not be instantiated directly.

Parameters:
clientminim.api._shared.APIClient

API client instance used to make HTTP requests.

Methods

follow_artists

User Collection Artists > Add to Items Relationship: Add artists to a user collection․ User Collections > Add to Artists Relationship: Add artists to a user's collection.

get_artist_albums

Artists > Get Albums Relationship: Get TIDAL catalog information for albums by an artist.

get_artist_biography

Artists > Get Biography Relationship: Get an artist's biography.

get_artist_collection

User Collection Artists > Get User Artist Collection: Get TIDAL catalog information for a user artist collection.

get_artist_mix

Artists > Get Radio Relationship: Get TIDAL catalog information for an artist's mix.

get_artist_owners

Artists > Get Owners Relationship: Get TIDAL profile information for the owners of an artist resource.

get_artist_profile_art

Artists > Get Profile Art Relationship: Get TIDAL catalog information for the profile art for an artist.

get_artist_roles

Artists > Get Roles Relationship: Get TIDAL catalog information for an artist's roles.

get_artist_track_providers

Artists > Get Track Providers: Get TIDAL catalog information for the providers of an artist's tracks.

get_artist_tracks

Artists > Get Tracks Relationship: Get TIDAL catalog information for tracks by an artist.

get_artist_videos

Artists > Get Videos Relationship: Get TIDAL catalog information for videos by an artist.

get_artists

Artists > Get Single Artist: Get TIDAL catalog information for an artist․ Artists > Get Multiple Artists: Get TIDAL catalog information for multiple artists.

get_roles

Artist Roles > Get Single Artist Role: Get TIDAL catalog information for an artist role․ Artist Roles > Get Multiple Artist Roles: Get TIDAL catalog information for multiple artist roles.

get_similar_artists

Artists > Get Similar Artists Relationship: Get TIDAL catalog information for similar artists

get_user_followed_artists

User Collection Artists > Get Items Relationship: Get TIDAL catalog information for artists in a user collection․ User Collections > Get Artists Relationship: Get TIDAL catalog information for artists in a user's collection.

search_artists

Search Results > Get Artists Relationship: Search for artists in the TIDAL catalog.

unfollow_artists

User Collection Artists > Delete from Items Relationship: Remove artists from a user collection․ User Collections > Delete from Items Relationship: Remove artists from a user's collection.

follow_artists(artist_ids: int | str | dict[str, int | str] | list[int | str | dict[str, int | str]], /, *, collection_id: str | None = None, user_id: int | str | None = None, country_code: str | None = None) None[source]

User Collection Artists > Add to Items Relationship: Add artists to a user collection․ User Collections > Add to Artists Relationship: Add artists to a user’s collection.

Authorization scope

collection.write scope

Write access to a user’s collection.

Important

At most one of collection_id or user_id must be provided. If user_id is provided, the legacy POST /userCollections/{user_id}/relationships/artists endpoint is used.

Parameters:
artist_idsint, str, dict[str, int | str], or Collection[int | str | dict[str, int | str]]; positional-only

TIDAL IDs and/or resource identifiers of the artists.

Examples:

  • 1566

  • "4676988"

  • {"id": "1566", "types": "artists"}

  • ["4676988", {"id": "46369321", "types": "artists"}]

collection_idstr; keyword-only; optional

TIDAL ID of the user collection. If authenticated, "me" can be used in lieu of a TIDAL ID for the current user’s collection. If not specified, "me" is used.

user_idint or str; keyword-only; optional

TIDAL ID of the user.

country_codestr; keyword-only; optional

ISO 3166-1 alpha-2 country code.

Example: "US".

get_artist_albums(artist_id: int | str, /, country_code: str | None = None, *, include_metadata: bool = False, cursor: str | None = None) dict[str, Any][source]

Artists > Get Albums Relationship: Get TIDAL catalog information for albums by an artist.

Parameters:
artist_idint or str; positional-only

TIDAL ID of the artist.

Examples: 1566, "4676988".

country_codestr; optional

ISO 3166-1 alpha-2 country code.

Example: "US".

include_metadatabool; keyword-only; default: False

Whether to include metadata for the artist’s albums.

cursorstr; keyword-only; optional

Cursor for fetching the next page of results.

Example: "3nI1Esi".

Returns:
albumsdict[str, Any]

Page of TIDAL metadata for the artist’s albums.

get_artist_biography(artist_id: int | str, /, country_code: str | None = None, *, include_metadata: bool = False) dict[str, Any][source]

Artists > Get Biography Relationship: Get an artist’s biography.

Parameters:
artist_idint or str; positional-only

TIDAL ID of the artist.

Examples: 1566, "4676988".

country_codestr; optional

ISO 3166-1 alpha-2 country code.

Example: "US".

include_metadatabool; keyword-only; default: False

Whether to include metadata for the artist’s biography.

Returns:
biographydict[str, Any]

TIDAL metadata for the artist’s biography.

get_artist_collection(collection_id: str | None = None, /, *, country_code: str | None = None, locale: str | None = None, expand: str | Collection[str] | None = None) dict[str, Any][source]

User Collection Artists > Get User Artist Collection: Get TIDAL catalog information for a user artist collection.

Authorization scope

collection.read scope

Read access to a user’s collection.

Parameters:
collection_idstr; positional-only; optional

TIDAL ID of the user collection. If authenticated, "me" can be used in lieu of a TIDAL ID for the current user’s collection. If not specified, "me" is used.

country_codestr; keyword-only; optional

ISO 3166-1 alpha-2 country code.

Example: "US".

localestr; keyword-only; optional

IETF BCP 47 language tag.

expandstr or Collection[str]; keyword-only; optional

Related resources to include metadata for in the response.

Valid values: "items", "owners".

Examples: "items", ["items", "owners"].

Returns:
collectiondict[str, Any]

TIDAL metadata for the user artist collection.

get_artist_mix(artist_id: int | str, /, country_code: str | None = None, *, include_metadata: bool = False, cursor: str | None = None) dict[str, Any][source]

Artists > Get Radio Relationship: Get TIDAL catalog information for an artist’s mix.

Parameters:
artist_idint or str; positional-only

TIDAL ID of the artist.

Examples: 1566, "4676988".

country_codestr; optional

ISO 3166-1 alpha-2 country code.

Example: "US".

include_metadatabool; keyword-only; default: False

Whether to include metadata for the artist’s mix.

cursorstr; keyword-only; optional

Cursor for fetching the next page of results.

Example: "3nI1Esi".

Returns:
mixdict[str, Any]

Page of TIDAL metadata for the artist’s mix.

get_artist_owners(artist_id: int | str, /, *, include_metadata: bool = False, cursor: str | None = None) dict[str, Any][source]

Artists > Get Owners Relationship: Get TIDAL profile information for the owners of an artist resource.

Parameters:
artist_idint or str; positional-only

TIDAL ID of the artist.

Examples: 1566, "4676988".

include_metadatabool; keyword-only; default: False

Whether to include metadata for the owners.

cursorstr; keyword-only; optional

Cursor for fetching the next page of results.

Example: "3nI1Esi".

Returns:
ownersdict[str, Any]

Page of TIDAL profile information for the artist resource’s owners.

get_artist_profile_art(artist_id: int | str, /, country_code: str | None = None, *, include_metadata: bool = False, cursor: str | None = None) dict[str, Any][source]

Artists > Get Profile Art Relationship: Get TIDAL catalog information for the profile art for an artist.

Parameters:
artist_idint or str; positional-only

TIDAL ID of the artist.

Examples: 1566, "4676988".

country_codestr; optional

ISO 3166-1 alpha-2 country code. Example: "US".

include_metadatabool; keyword-only; default: False

Whether to include metadata for the artist’s profile art.

cursorstr; keyword-only; optional

Cursor for fetching the next page of results.

Example: "3nI1Esi".

Returns:
profile_artdict[str, Any]

Page of TIDAL metadata for the artist’s profile art.

get_artist_roles(artist_id: int | str, /, *, include_metadata: bool = False, cursor: str | None = None) dict[str, Any][source]

Artists > Get Roles Relationship: Get TIDAL catalog information for an artist’s roles.

Parameters:
artist_idint or str; positional-only

TIDAL ID of the artist.

Examples: 1566, "4676988".

include_metadatabool; keyword-only; default: False

Whether to include metadata for the artist’s roles.

cursorstr; keyword-only; optional

Cursor for fetching the next page of results.

Example: "3nI1Esi".

Returns:
rolesdict[str, Any]

Page of TIDAL metadata for the artist’s roles.

get_artist_track_providers(artist_id: int | str, /, *, include_metadata: bool = False, cursor: str | None = None) dict[str, Any][source]

Artists > Get Track Providers: Get TIDAL catalog information for the providers of an artist’s tracks.

Parameters:
artist_idint or str; positional-only

TIDAL ID of the artist.

Examples: 1566, "4676988".

country_codestr; optional

ISO 3166-1 alpha-2 country code.

Example: "US".

include_metadatabool; keyword-only; default: False

Whether to include metadata for the artist’s track providers.

cursorstr; keyword-only; optional

Cursor for fetching the next page of results.

Example: "3nI1Esi".

Returns:
providersdict[str, Any]

Page of TIDAL metadata for the artist’s track providers.

get_artist_tracks(artist_id: int | str, /, country_code: str | None = None, *, group_by: str = 'FINGERPRINT', include_metadata: bool = False, cursor: str | None = None) dict[str, Any][source]

Artists > Get Tracks Relationship: Get TIDAL catalog information for tracks by an artist.

Parameters:
artist_idint or str; positional-only

TIDAL ID of the artist.

Examples: 1566, "4676988".

country_codestr; optional

ISO 3166-1 alpha-2 country code.

Example: "US".

group_bystr; keyword-only; default: "FINGERPRINT"

How the returned tracks are grouped.

Valid values:

  • "FINGERPRINT" – Collapses tracks that share the same audio fingerprint.

  • "ID" – Returns every track as a separate item.

include_metadatabool; keyword-only; default: False

Whether to include metadata for the artist’s tracks.

cursorstr; keyword-only; optional

Cursor for fetching the next page of results.

Example: "3nI1Esi".

Returns:
tracksdict[str, Any]

Page of TIDAL metadata for the artist’s tracks.

get_artist_videos(artist_id: int | str, /, country_code: str | None = None, *, include_metadata: bool = False, cursor: str | None = None) dict[str, Any][source]

Artists > Get Videos Relationship: Get TIDAL catalog information for videos by an artist.

Parameters:
artist_idint or str; positional-only

TIDAL ID of the artist.

Examples: 1566, "4676988".

country_codestr; optional

ISO 3166-1 alpha-2 country code.

Example: "US".

include_metadatabool; keyword-only; default: False

Whether to include metadata for the artist’s videos.

cursorstr; keyword-only; optional

Cursor for fetching the next page of results.

Example: "3nI1Esi".

Returns:
videosdict[str, Any]

Page of TIDAL metadata for the artist’s videos.

get_artists(artist_ids: int | str | Collection[int | str] | None = None, /, *, handles: str | Collection[str] | None = None, owner_ids: int | str | Collection[int | str] | None = None, country_code: str | None = None, expand: str | Collection[str] | None = None) dict[str, Any][source]

Artists > Get Single Artist: Get TIDAL catalog information for an artist․ Artists > Get Multiple Artists: Get TIDAL catalog information for multiple artists.

Important

Exactly one of artist_ids, handles, or owner_ids must be provided. When handles or owner_ids is specified, the request will always be sent to the endpoint for multiple artists.

Parameters:
artist_idsint, str, or Collection[int | str]; positional-only; optional

TIDAL IDs of the artists.

Examples: 1566, "4676988", [1566, "4676988"].

handlesstr or Collection[str]; keyword-only; optional

Artist handles.

Example: "jayz".

owner_idsint, str, or Collection[int | str]; keyword-only; optional

TIDAL IDs of the artist resources’ owners. If authenticated, "me" can be used in lieu of a TIDAL ID for the current user.

Examples: :code:”me”, :code:`123456, "654321", [123456, "654321"].

country_codestr; keyword-only; optional

ISO 3166-1 alpha-2 country code.

Example: "US".

expandstr or Collection[str]; keyword-only; optional

Related resources to include metadata for in the response.

Valid values: "albums", "biography", "followers", "following", "owners", "profileArt", "radio", "roles", "similarArtists", "trackProviders", "tracks", "videos".

Examples: "profileArt", ["albums", "tracks"].

Returns:
artistsdict[str, Any]

TIDAL metadata for the artists.

get_roles(artist_role_ids: int | str | Collection[int | str], /) dict[str, Any][source]

Artist Roles > Get Single Artist Role: Get TIDAL catalog information for an artist role․ Artist Roles > Get Multiple Artist Roles: Get TIDAL catalog information for multiple artist roles.

Parameters:
artist_role_idsint, str, or Collection[int | str]; positional-only

TIDAL IDs of the artist roles.

Examples: 1, "2", [3, "4"].

Returns:
artist_rolesdict[str, Any]

TIDAL catalog information for the artist roles.

get_similar_artists(artist_id: int | str, /, country_code: str | None = None, *, include_metadata: bool = False, cursor: str | None = None) dict[str, Any][source]

Artists > Get Similar Artists Relationship: Get TIDAL catalog information for similar artists

Parameters:
artist_idint or str; positional-only

TIDAL ID of the artist.

Examples: 1566, "4676988".

country_codestr; optional

ISO 3166-1 alpha-2 country code.

Example: "US".

include_metadatabool; keyword-only; default: False

Whether to include metadata for the similar artists.

cursorstr; keyword-only; optional

Cursor for fetching the next page of results.

Example: "3nI1Esi".

Returns:
artistsdict[str, Any]

Page of TIDAL metadata for the similar artists.

get_user_followed_artists(*, collection_id: str | None = None, user_id: int | str | None = None, country_code: str | None = None, locale: str | None = None, include_metadata: bool = False, cursor: str | None = None, sort_by: str | None = None, descending: bool | None = None) dict[str, Any][source]

User Collection Artists > Get Items Relationship: Get TIDAL catalog information for artists in a user collection․ User Collections > Get Artists Relationship: Get TIDAL catalog information for artists in a user’s collection.

Authorization scope

collection.read scope

Read access to a user’s collection.

Important

At most one of collection_id or user_id must be provided. If user_id is provided, the legacy GET /userCollections/{user_id}/relationships/artists endpoint is used.

Parameters:
collection_idstr; keyword-only; optional

TIDAL ID of the user collection. If authenticated, "me" can be used in lieu of a TIDAL ID for the current user’s collection. If not specified, "me" is used.

user_idint or str; keyword-only; optional

TIDAL ID of the user.

country_codestr; keyword-only; optional

ISO 3166-1 alpha-2 country code.

Example: "US".

localestr; keyword-only; optional

IETF BCP 47 language tag.

include_metadatabool; keyword-only; default: False

Whether to include metadata for the artists in the user’s collection.

cursorstr; keyword-only; optional

Cursor for fetching the next page of results.

Example: "3nI1Esi".

sort_bystr; keyword-only; optional

Field to sort the artists by.

Valid values: "addedAt", "name".

descendingbool; keyword-only; optional

Whether to sort in descending order.

API default: False.

Returns:
artistsdict[str, Any]

Page of TIDAL metadata for the artists in the user’s collection.

search_artists(query: str, /, country_code: str | None = None, *, include_explicit: bool | None = None, include_metadata: bool = False, cursor: str | None = None) dict[str, Any][source]

Search Results > Get Artists Relationship: Search for artists in the TIDAL catalog.

Parameters:
querystr; positional-only

Search query.

country_codestr; optional

ISO 3166-1 alpha-2 country code.

Example: "US".

include_explicitbool; keyword-only; optional

Whether to include items with explicit language.

API default: True.

include_metadatabool; keyword-only; default: False

Whether to include metadata for the matching artists.

cursorstr; keyword-only; optional

Cursor for fetching the next page of results.

Example: "3nI1Esi".

Returns:
artistsdict[str, Any]

Page of TIDAL metadata for the matching artists.

unfollow_artists(artist_ids: int | str | dict[str, int | str] | list[int | str | dict[str, int | str]], /, *, collection_id: str | None = None, user_id: int | str | None = None, country_code: str | None = None) None[source]

User Collection Artists > Delete from Items Relationship: Remove artists from a user collection․ User Collections > Delete from Items Relationship: Remove artists from a user’s collection.

Authorization scope

collection.write scope

Write access to a user’s collection.

Important

At most one of collection_id or user_id must be provided. If user_id is provided, the legacy DELETE /userCollections/{user_id}/relationships /artists endpoint is used.

Parameters:
artist_idsint, str, dict[str, int | str], or Collection[int | str | dict[str, int | str]]; positional-only

TIDAL IDs and/or resource identifiers of the artists.

Examples:

  • 1566

  • "4676988"

  • {"id": "1566", "types": "artists"}

  • ["4676988", {"id": "46369321", "types": "artists"}]

collection_idstr; keyword-only; optional

TIDAL ID of the user collection. If authenticated, "me" can be used in lieu of a TIDAL ID for the current user’s collection. If not specified, "me" is used.

user_idint or str; keyword-only; optional

TIDAL ID of the user.