PrivatePagesAPI¶
- class minim.api.tidal.PrivatePagesAPI(client: APIClient, /)[source]¶
Bases:
PrivateTIDALResourceAPIPages API endpoints for the private TIDAL API.
Important
This class is managed by
PrivateTIDALAPIClientand should not be instantiated directly.- Parameters:
- clientminim.api._shared.APIClient
API client instance used to make HTTP requests.
Methods
Get the TIDAL page layout for an album.
Get the TIDAL page layout for an artist.
Get the TIDAL page layout for a mix.
Get the TIDAL page layout for the current user's explore page.
Get the TIDAL page layout for the current user's home page.
Get the TIDAL page layout for personalized mixes.
Get the TIDAL page layout for a video.
- get_album_page(album_id: int | str, /, country_code: str | None = None, *, device_type: str = 'BROWSER', locale: str | None = None) dict[str, Any][source]¶
Get the TIDAL page layout for an album.
- Parameters:
- album_idint or str; positional-only
TIDAL ID of the album.
Examples:
46369321,"251380836".- country_codestr; optional
ISO 3166-1 alpha-2 country code. If not provided, the country associated with the current user account or IP address is used.
Example:
"US".- device_typestr; keyword-only; default:
"BROWSER" Device type.
Valid values:
"BROWSER"– Web browser."DESKTOP"– Desktop TIDAL application."PHONE"– Mobile TIDAL application."TV"– Smart TV TIDAL application.
- localestr; keyword-only; optional
IETF BCP 47 language tag.
API default:
"en_US"– English (U.S.).
- Returns:
- pagedict[str, Any]
Layout for the album page.
Sample response
{ "id": <str>, "rows": [ { "modules": [ { "album": { "allowStreaming": <bool>, "artists": [ { "contributionLinkUrl": <str>, "handle": <str>, "id": <int>, "name": <str>, "picture": <str>, "type": <str>, "userId": <int> } ], "audioModes": <list[str]>, "audioQuality": <str>, "copyright": <str>, "cover": <str>, "duration": <int>, "explicit": <bool>, "id": <int>, "mediaMetadata": { "tags": <list[str]> }, "numberOfTracks": <int>, "numberOfVideos": <int>, "numberOfVolumes": <int>, "payToStream": <bool>, "popularity": <int>, "releaseDate": <str>, "streamReady": <bool>, "streamStartDate": <str>, "title": <str>, "type": <str>, "upload": <bool>, "url": <str>, "version": <str>, "videoCover": <str> }, "credits": { "items": [ { "contributors": [ { "id": <int>, "name": <str> } ], "type": <str> } ] }, "description": <str>, "id": <str>, "playbackControls": [ { "icon": <str>, "playbackMode": <str>, "shuffle": <bool>, "targetModuleId": <str>, "title": <str> } ], "preTitle": <str>, "review": { "source": <str>, "text": <str> }, "title": <str>, "type": "ALBUM_HEADER", "width": <int> } ] }, { "modules": [ { "copyright": <str>, "description": <str>, "id": <str>, "listFormat": <str>, "pagedList": { "dataApiPath": <str>, "items": [ { "item": { "accessType": <str>, "adSupportedStreamReady": <bool>, "album": { "cover": <str>, "id": <int>, "releaseDate": <str>, "title": <str>, "url": <str>, "vibrantColor": <str>, "videoCover": <str> }, "allowStreaming": <bool>, "artists": [ { "handle": <str>, "id": <int>, "name": <str>, "picture": <str>, "type": <str>, "userId": <int> } ], "audioModes": <list[str]>, "audioQuality": <str>, "djReady": <bool>, "doublePopularity": <float>, "duration": <int>, "editable": <bool>, "explicit": <bool>, "id": <int>, "mediaMetadata": { "tags": <list[str]> }, "mixes": { "TRACK_MIX": <str> }, "payToStream": <bool>, "popularity": <int>, "replayGain": <float>, "spotlighted": <bool>, "stemReady": <bool>, "streamReady": <bool>, "streamStartDate": <str>, "title": <str>, "trackNumber": <int>, "upload": <bool>, "url": <str>, "version": <str>, "volumeNumber": <int> }, "type": "track" } ], "limit": <int>, "offset": <int>, "totalNumberOfItems": <int> }, "playButton": <bool>, "preTitle": <str>, "quickPlay": <bool>, "releaseDate": <str>, "showMore": { "apiPath": <str>, "title": <str> }, "shuffleButton": <bool>, "supportsPaging": <bool>, "title": <str>, "type": "ALBUM_ITEMS", "width": <int> } ] }, { "modules": [ { "description": <str>, "header": <str>, "id": <str>, "layout": <str>, "listFormat": <str>, "pagedList": { "dataApiPath": <str>, "items": [ { "allowStreaming": <bool>, "artists": [ { "contributionLinkUrl": <str>, "handle": <str>, "id": <int>, "name": <str>, "picture": <str>, "type": <str>, "userId": <int> } ], "audioModes": <list[str]>, "audioQuality": <str>, "cover": <str>, "duration": <int>, "explicit": <bool>, "id": <int>, "mediaMetadata": { "tags": <list[str]> }, "numberOfTracks": <int>, "numberOfVideos": <int>, "payToStream": <bool>, "releaseDate": <str>, "streamReady": <bool>, "streamStartDate": <str>, "title": <str>, "upload": <bool>, "url": <str>, "vibrantColor": <str>, "videoCover": <str> } ], "limit": <int>, "offset": <int>, "totalNumberOfItems": <int> }, "preTitle": <str>, "quickPlay": <bool>, "scroll": <str>, "showMore": { "apiPath": <str>, "title": <str> }, "supportsPaging": <bool>, "title": <str>, "type": "ALBUM_LIST", "width": <int> } ] }, { "modules": [ { "description": <str>, "header": <str>, "id": <str>, "layout": <str>, "pagedList": { "dataApiPath": <str>, "items": [ { "artistRoles": [ { "category": <str>, "categoryId": <int> } ], "artistTypes": <list[str]>, "id": <int>, "mixes": { "ARTIST_MIX": <str> }, "name": <str>, "picture": <str>, "selectedAlbumCoverFallback": None } ], "limit": <int>, "offset": <int>, "totalNumberOfItems": <int> }, "preTitle": <str>, "quickPlay": <bool>, "scroll": <str>, "showMore": { "apiPath": <str>, "title": <str> }, "supportsPaging": <bool>, "title": <str>, "type": "ARTIST_LIST", "width": <int> } ] } ], "selfLink": <str>, "title": <str> }
- get_artist_page(artist_id: int | str, /, country_code: str | None = None, *, device_type: str = 'BROWSER', locale: str | None = None) dict[str, Any][source]¶
Get the TIDAL page layout 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. If not provided, the country associated with the current user account or IP address is used.
Example:
"US".- device_typestr; keyword-only; default:
"BROWSER" Device type.
Valid values:
"BROWSER"– Web browser."DESKTOP"– Desktop TIDAL application."PHONE"– Mobile TIDAL application."TV"– Smart TV TIDAL application.
- localestr; keyword-only; optional
IETF BCP 47 language tag.
API default:
"en_US"– English (U.S.).
- Returns:
- pagedict[str, Any]
Layout for the artist page.
Sample response
{ "id": <str>, "rows": [ { "modules": [ { "artist": { "artistTypes": <list[str]>, "handle": <str>, "id": <int>, "mixes": { "ARTIST_MIX": <str> }, "name": <str>, "picture": <str>, "selectedAlbumCoverFallback": None, "url": <str> }, "artistMix": { "id": <str> }, "bio": { "source": <str>, "text": <str> }, "description": <str>, "id": <str>, "mixes": { "ARTIST_MIX": <str> }, "playbackControls": [ { "icon": <str>, "playbackMode": <str>, "shuffle": <bool>, "targetModuleId": <str>, "title": <str> } ], "preTitle": <str>, "roleCategories": <Any>, "store": <Any>, "title": <str>, "type": "ARTIST_HEADER", "width": <int> } ] }, { "modules": [ { "description": <str>, "id": <str>, "layout": <str>, "listFormat": <str>, "pagedList": { "dataApiPath": <str>, "items": [ { "accessType": <str>, "adSupportedStreamReady": <bool>, "album": { "cover": <str>, "id": <int>, "releaseDate": <str>, "title": <str>, "url": <str>, "vibrantColor": <str>, "videoCover": <str> }, "allowStreaming": <bool>, "artists": [ { "handle": <str>, "id": <int>, "name": <str>, "picture": <str>, "type": <str>, "userId": <int> } ], "audioModes": <list[str]>, "audioQuality": <str>, "djReady": <bool>, "doublePopularity": <float>, "duration": <int>, "editable": <bool>, "explicit": <bool>, "id": <int>, "mediaMetadata": { "tags": <list[str]> }, "mixes": { "TRACK_MIX": <str> }, "payToStream": <bool>, "popularity": <int>, "replayGain": <float>, "spotlighted": <bool>, "stemReady": <bool>, "streamReady": <bool>, "streamStartDate": <str>, "title": <str>, "trackNumber": <int>, "upload": <bool>, "url": <str>, "version": <str>, "volumeNumber": <int> } ], "limit": <int>, "offset": <int>, "totalNumberOfItems": <int> }, "preTitle": <str>, "quickPlay": <bool>, "scroll": <bool>, "showMore": { "apiPath": <str>, "title": <str> }, "showTableHeaders": <bool>, "supportsPaging": <bool>, "title": <str>, "type": "TRACK_LIST", "width": <int> } ] }, { "modules": [ { "description": <str>, "header": <str>, "id": <str>, "layout": <str>, "listFormat": <str>, "pagedList": { "dataApiPath": <str>, "items": [ { "allowStreaming": <bool>, "artists": [ { "contributionLinkUrl": <str>, "handle": <str>, "id": <int>, "name": <str>, "picture": <str>, "type": <str>, "userId": <int> } ], "audioModes": <list[str]>, "audioQuality": <str>, "cover": <str>, "duration": <int>, "explicit": <bool>, "id": <int>, "mediaMetadata": { "tags": <list[str]> }, "numberOfTracks": <int>, "numberOfVideos": <int>, "payToStream": <bool>, "releaseDate": <str>, "streamReady": <bool>, "streamStartDate": <str>, "title": <str>, "upload": <bool>, "url":<str>, "vibrantColor": <str>, "videoCover": <str> } ], "limit": <int>, "offset": <int>, "totalNumberOfItems": <int> }, "preTitle": <str>, "quickPlay": <bool>, "scroll": <str>, "showMore": { "apiPath": <str>, "title": <str> }, "supportsPaging": <bool>, "title": <str>, "type": "ALBUM_LIST", "width": <int> } ] }, { "modules": [ { "description": <str>, "id": <str>, "pagedList": { "dataApiPath": <str>, "items": [ { "item": { "creators": <list[Any]>, "description": <str>, "duration": <int>, "image": <str>, "lastItemAddedAt": <str>, "numberOfTracks": <int>, "numberOfVideos": <int>, "promotedArtists": [ { "contributionLinkUrl": <str>, "handle": <str>, "id": <int>, "name": <str>, "picture": <str>, "type": <str>, "userId": <int> } ], "squareImage": <str>, "title": <str>, "type": "EDITORIAL", "url": <str>, "uuid": <str> }, "type": "PLAYLIST" } ], "limit": <int>, "offset": <int>, "totalNumberOfItems": <int> }, "preTitle": <str>, "quickPlay": <bool>, "scroll": <str>, "showMore": { "apiPath": <str>, "title": <str> }, "supportsPaging": <bool>, "title": <str>, "type": "MIXED_TYPES_LIST", "width": <int> } ] }, { "modules": [ { "description": <str>, "id": <str>, "layout": <str>, "listFormat": <str>, "pagedList": { "dataApiPath": <str>, "items": [ { "adSupportedStreamReady": <bool>, "adsPrePaywallOnly": <bool>, "adsUrl": <str>, "album": { "cover": <str>, "id": <int>, "title": <str>, "vibrantColor": <str>, "videoCover": <str> }, "allowStreaming": <bool>, "artists": [ { "handle": <str>, "id": <int>, "name": <str>, "picture": <str>, "type": <str>, "userId": <int> } ], "djReady": <bool>, "doublePopularity": <float>, "duration": <int>, "explicit": <bool>, "id": <int>, "imageId": <str>, "popularity": <int>, "releaseDate": <str>, "stemReady": <bool>, "streamReady": <bool>, "streamStartDate": <str>, "title": <str>, "trackNumber": <int>, "type": "Music Video", "url": <str>, "version": <str>, "vibrantColor": <str>, "volumeNumber": <int> } ], "limit": <int>, "offset": <int>, "totalNumberOfItems": <int> }, "preTitle": <str>, "quickPlay": <bool>, "scroll": <str>, "showMore": { "apiPath": <str>, "title": <str> }, "showTableHeaders": <bool>, "supportsPaging": <bool>, "title": <str>, "type": "VIDEO_LIST", "width": <int> } ] }, { "modules": [ { "description": <str>, "header": <str>, "id": <str>, "layout": <str>, "pagedList": { "dataApiPath": <str>, "items": [ { "artistRoles": [ { "category": <str>, "categoryId": <int> } ], "artistTypes": <list[str]>, "id": <int>, "mixes": { "ARTIST_MIX": <str> }, "name": <str>, "picture": <str>, "selectedAlbumCoverFallback": None } ], "limit": <int>, "offset": <int>, "totalNumberOfItems": <int> }, "preTitle": <str>, "quickPlay": <bool>, "scroll": <str>, "showMore": { "apiPath": <str>, "title": <str> }, "supportsPaging": <bool>, "title": <str>, "type": "ARTIST_LIST", "width": <int> } ] } ], "selfLink": <str>, "title": <str> }
- get_mix_page(mix_id: str, /, country_code: str | None = None, *, device_type: str = 'BROWSER', locale: str | None = None) dict[str, Any][source]¶
Get the TIDAL page layout for a mix.
- Parameters:
- mix_idstr; positional-only
TIDAL ID of the mix.
Example:
"000ec0b01da1ddd752ec5dee553d48".- country_codestr; optional
ISO 3166-1 alpha-2 country code. If not provided, the country associated with the current user account or IP address is used.
Example:
"US".- device_typestr; keyword-only; default:
"BROWSER" Device type.
Valid values:
"BROWSER"– Web browser."DESKTOP"– Desktop TIDAL application."PHONE"– Mobile TIDAL application."TV"– Smart TV TIDAL application.
- localestr; keyword-only; optional
IETF BCP 47 language tag.
API default:
"en_US"– English (U.S.).
- Returns:
- pagedict[str, Any]
Layout for the mix page.
Sample response
{ "id": <str>, "rows": [ { "modules": [ { "description": <str>, "id": <str>, "mix": { "contentBehavior": <str>, "description": <str>, "descriptionColor": <str>, "detailImages": { "LARGE": { "height": <int>, "url": <str>, "width": <int> }, "MEDIUM": { "height": <int>, "url": <str>, "width": <int> }, "SMALL": { "height": <int>, "url": <str>, "width": <int> } }, "graphic": { "images": [ { "id": <str>, "type": "ARTIST", "vibrantColor": <str> } ], "text": <str>, "type": "SQUARES_GRID" }, "id": <str>, "images": { "LARGE": { "height": <int>, "url": <str>, "width": <int> }, "MEDIUM": { "height": <int>, "url": <str>, "width": <int> }, "SMALL": { "height": <int>, "url": <str>, "width": <int> } }, "master": <bool>, "mixNumber": <int>, "mixType": <str>, "sharingImages": <Any>, "shortSubtitle": <str>, "subTitle": <str>, "subTitleColor": <str>, "title": <str>, "titleColor": <str> }, "playbackControls": [ { "icon": <str>, "playbackMode": <str>, "shuffle": <bool>, "targetModuleId": <str>, "title": <str> } ], "preTitle":<str>, "title": <str>, "type": "MIX_HEADER", "width": <int> } ] }, { "modules": [ { "description": <str>, "id": <str>, "layout": <str>, "listFormat": <str>, "pagedList": { "dataApiPath": <str>, "items": [ { "accessType": <str>, "adSupportedStreamReady": <bool>, "album": { "cover": <str>, "id": <int>, "releaseDate": <str>, "title": <str>, "url": <str>, "vibrantColor": <str>, "videoCover": <str> }, "allowStreaming": <bool>, "artists": [ { "handle": <str>, "id": <int>, "name": <str>, "picture": <str>, "type": <str>, "userId": <int> } ], "audioModes": <list[str]>, "audioQuality": <str>, "djReady": <bool>, "doublePopularity": <float>, "duration": <int>, "editable": <bool>, "explicit": <bool>, "id": <int>, "mediaMetadata": { "tags": <list[str]> }, "mixes": { "TRACK_MIX": <str> }, "payToStream": <bool>, "popularity": <int>, "replayGain": <float>, "spotlighted": <bool>, "stemReady": <bool>, "streamReady": <bool>, "streamStartDate": <str>, "title": <str>, "trackNumber": <int>, "upload": <bool>, "url": <str>, "version": <str>, "volumeNumber": <int> } ], "limit": <int>, "offset": <int>, "totalNumberOfItems": <int> }, "preTitle": <str>, "quickPlay": <bool>, "scroll": <str>, "showMore": { "apiPath": <str>, "title": <str> }, "showTableHeaders": <bool>, "supportsPaging": <bool>, "title": <str>, "type": "TRACK_LIST", "width": <int> } ] } ], "selfLink": <str>, "title": <str> }
- get_my_explore_page(country_code: str | None = None, *, device_type: str = 'BROWSER', locale: str | None = None) dict[str, Any][source]¶
Get the TIDAL page layout for the current user’s explore page.
- Parameters:
- country_codestr; optional
ISO 3166-1 alpha-2 country code. If not provided, the country associated with the current user account or IP address is used.
Example:
"US".- device_typestr; keyword-only; default:
"BROWSER" Device type.
Valid values:
"BROWSER"– Web browser."DESKTOP"– Desktop TIDAL application."PHONE"– Mobile TIDAL application."TV"– Smart TV TIDAL application.
- localestr; keyword-only; optional
IETF BCP 47 language tag.
API default:
"en_US"– English (U.S.).
- Returns:
- pagedict[str, Any]
Layout for the explore page.
Sample response
{ "id": <str>, "rows": [ { "modules": [ { "description": <str>, "id": <str>, "items": [ { "artifactId": <str>, "featured": <bool>, "header": <str>, "imageId": <str>, "shortHeader": <str>, "shortSubHeader": <str>, "text": <str>, "type": <str> } ], "preTitle": <str>, "title": <str>, "type": "FEATURED_PROMOTIONS", "width": <int> } ] }, { "modules": [ { "description":<str>, "id": <str>, "lines": <int>, "pagedList": { "dataApiPath": <str>, "items": [ { "apiPath": <str>, "icon": <str>, "imageId": <str>, "title": <str> } ], "limit": <int>, "offset": <int>, "totalNumberOfItems": <int> }, "preTitle": <str>, "showMore": { "apiPath": <str>, "title": <str> }, "title": <str>, "type": "PAGE_LINKS_CLOUD", "width": <int> } ] } { "modules": [ { "description": <str>, "id": <str>, "pagedList": { "items": [ { "apiPath": <str>, "icon": <str>, "imageId": <str>, "title": <str> } ], "limit": <int>, "offset": <int>, "totalNumberOfItems": <int> }, "preTitle": <str>, "title": <str>, "type": "PAGE_LINKS", "width": <int> } ] } ], "selfLink": <str>, "title": "Explore" }
- get_my_home_page(country_code: str | None = None, *, device_type: str = 'BROWSER', locale: str | None = None) dict[str, Any][source]¶
Get the TIDAL page layout for the current user’s home page.
- Parameters:
- country_codestr; optional
ISO 3166-1 alpha-2 country code. If not provided, the country associated with the current user account or IP address is used.
Example:
"US".- device_typestr; keyword-only; default:
"BROWSER" Device type.
Valid values:
"BROWSER"– Web browser."DESKTOP"– Desktop TIDAL application."PHONE"– Mobile TIDAL application."TV"– Smart TV TIDAL application.
- localestr; keyword-only; optional
IETF BCP 47 language tag.
API default:
"en_US"– English (U.S.).
- Returns:
- pagedict[str, Any]
Layout for the home page.
Sample response
{ "id": <str>, "rows": [ { "modules": [ { "description": <str>, "id": <str>, "layout": <str>, "pagedList": { "dataApiPath": <str>, "items": [ { "creators": <list[Any]>, "description": <str>, "duration": <int>, "image": <str>, "lastItemAddedAt": <str>, "numberOfTracks": <int>, "numberOfVideos": <int>, "promotedArtists": [ { "contributionLinkUrl": <str>, "handle": <str>, "id": <int>, "name": <str>, "picture": <str>, "type": <str>, "userId": <int> } ], "squareImage": <str>, "title": <str>, "type": "EDITORIAL", "url": <str>, "uuid": <str> } ], "limit": <int>, "offset": <int>, "totalNumberOfItems": <int> }, "playlistStyle": <Any>, "preTitle": <str>, "quickPlay": <bool>, "scroll": <str>, "showMore": { "apiPath": <str>, "title": <str> }, "supportsPaging": <bool>, "title": <str>, "type": "PLAYLIST_LIST", "width": <int> } ] }, { "modules": [ { "description": <str>, "id": <str>, "layout": null, "listFormat": <str>, "pagedList": { "dataApiPath": <str>, "items": [ { "accessType": <str>, "adSupportedStreamReady": <bool>, "album": { "cover": <str>, "id": <int>, "releaseDate": <str>, "title": <str>, "url": <str>, "vibrantColor": <str>, "videoCover": <str> }, "allowStreaming": <bool>, "artists": [ { "handle": <str>, "id": <int>, "name": <str>, "picture": <str>, "type": <str>, "userId": <int> } ], "audioModes": <list[str]>, "audioQuality": <str>, "djReady": <bool>, "doublePopularity": <float>, "duration": <int>, "editable": <bool>, "explicit": <bool>, "id": <int>, "mediaMetadata": { "tags": <list[str]> }, "mixes": { "TRACK_MIX": <str> }, "payToStream": <bool>, "popularity": <int>, "replayGain": <float>, "spotlighted": <bool>, "stemReady": <bool>, "streamReady": <bool>, "streamStartDate": <str>, "title": <str>, "trackNumber": <int>, "upload": <bool>, "url": <str>, "version": <str>, "volumeNumber": <int> } ], "limit": <int>, "offset": <int>, "totalNumberOfItems": <int> }, "preTitle": <str>, "quickPlay": <bool>, "scroll": <str>, "showMore": { "apiPath": <str>, "title": <str> }, "showTableHeaders": <bool>, "supportsPaging": <bool>, "title": <str>, "type": "TRACK_LIST", "width": <int> } ] }, { "modules": [ { "description": <bool>, "header": <str>, "id": <str>, "layout": <str>, "listFormat": <str>, "pagedList": { "dataApiPath": <str>, "items": [ { "allowStreaming": <bool>, "artists": [ { "contributionLinkUrl": <str>, "handle": <str>, "id": <int>, "name": <str>, "picture": <str>, "type": <str>, "userId": <int> } ], "audioModes": <list[str]>, "audioQuality": <str>, "cover": <str>, "duration": <int>, "explicit": <bool>, "id": <int>, "mediaMetadata": { "tags": <list[str]> }, "numberOfTracks": <int>, "numberOfVideos": <int>, "payToStream": <bool>, "releaseDate": <str>, "streamReady": <bool>, "streamStartDate": <str>, "title": <str>, "upload": <bool>, "url": <str>, "vibrantColor": <str>, "videoCover": <str> } ], "limit": <int>, "offset": <int>, "totalNumberOfItems": <int> }, "preTitle": <str>, "quickPlay": <bool>, "scroll": <str>, "showMore": { "apiPath": <str>, "title": <str> }, "supportsPaging": <bool>, "title": <str>, "type": "ALBUM_LIST", "width": <int> } ] } ], "selfLink": <str>, "title": "Home" }
- get_personalized_mixes_page(country_code: str | None = None, *, device_type: str = 'BROWSER', locale: str | None = None) dict[str, Any][source]¶
Get the TIDAL page layout for personalized mixes.
- Parameters:
- country_codestr; optional
ISO 3166-1 alpha-2 country code. If not provided, the country associated with the current user account or IP address is used.
Example:
"US".- device_typestr; keyword-only; default:
"BROWSER" Device type.
Valid values:
"BROWSER"– Web browser."DESKTOP"– Desktop TIDAL application."PHONE"– Mobile TIDAL application."TV"– Smart TV TIDAL application.
- localestr; keyword-only; optional
IETF BCP 47 language tag.
API default:
"en_US"– English (U.S.).
- Returns:
- pagedict[str, Any]
Layout for the personalized mixes page.
Sample response
{ "id": <str>, "rows": [ { "modules": [ { "collapse": <bool>, "description": <str>, "icon": <str>, "id": <str>, "preTitle": <str>, "text":<str>, "title": <str>, "type": "TEXT_BLOCK", "width": <int> } ] } ], "selfLink": <str>, "title": <str> }
- get_video_page(video_id: int | str, /, country_code: str | None = None, *, device_type: str = 'BROWSER', locale: str | None = None) dict[str, Any][source]¶
Get the TIDAL page layout for a video.
- Parameters:
- video_idint or str; positional-only
TIDAL ID of the video.
Examples:
53315642,"75623239".- country_codestr; optional
ISO 3166-1 alpha-2 country code. If not provided, the country associated with the current user account or IP address is used.
Example:
"US".- device_typestr; keyword-only; default:
"BROWSER" Device type.
Valid values:
"BROWSER"– Web browser."DESKTOP"– Desktop TIDAL application."PHONE"– Mobile TIDAL application."TV"– Smart TV TIDAL application.
- localestr; keyword-only; optional
IETF BCP 47 language tag.
API default:
"en_US"– English (U.S.).
- Returns:
- pagedict[str, Any]
Layout for the video page.
Sample response
{ "id": <str>, "rows": [ { "modules": [ { "description": <str>, "id": <str>, "items": [ { "artifactId": <str>, "featured": <bool>, "header": <str>, "imageId": <str>, "shortHeader": <str>, "shortSubHeader": <str>, "text": <str>, "type": "VIDEO" } ], "preTitle": <str>, "title": <str>, "type": "MULTIPLE_TOP_PROMOTIONS", "width": <int> } ] }, { "modules": [ { "description": <str>, "id": <str>, "layout": <str>, "pagedList": { "dataApiPath": <str>, "items": [ { "creators": <list[Any]>, "description": <str>, "duration": <int>, "image": <str>, "lastItemAddedAt": <str>, "numberOfTracks": <int>, "numberOfVideos": <int>, "promotedArtists": [ { "contributionLinkUrl": <str>, "handle": <str>, "id": <int>, "name": <str>, "picture": <str>, "type": <str>, "userId": <int> } ], "squareImage": <str>, "title": <str>, "type": "EDITORIAL", "url": <str>, "uuid": <str> } ], "limit": <int>, "offset": <int>, "totalNumberOfItems": <int> }, "playlistStyle": <Any>, "preTitle": <str>, "quickPlay": <bool>, "scroll": <str>, "showMore": { "apiPath": <str>, "title": <str> }, "supportsPaging": <bool>, "title": <str>, "type": "PLAYLIST_LIST", "width": <int> } ] }, { "modules": [ { "description": <str>, "id": <str>, "layout": <str>, "listFormat": <str>, "pagedList": { "dataApiPath": <str>, "items": [ { "adSupportedStreamReady": <bool>, "adsPrePaywallOnly": <bool>, "adsUrl": <str>, "album": { "cover": <str>, "id": <int>, "title": <str>, "vibrantColor": <str>, "videoCover": <str> }, "allowStreaming": <bool>, "artists": [ { "handle": <str>, "id": <int>, "name": <str>, "picture": <str>, "type": <str>, "userId": <int> } ], "djReady": <bool>, "doublePopularity": <float>, "duration": <int>, "explicit": <bool>, "id": <int>, "imageId": <str>, "popularity": <int>, "releaseDate": <str>, "stemReady": <bool>, "streamReady": <bool>, "streamStartDate": <str>, "title": <str>, "trackNumber": <int>, "type": "Music Video", "url": <str>, "version": <str>, "vibrantColor": <str>, "volumeNumber": <int> } ], "limit": <int>, "offset": <int>, "totalNumberOfItems": <int> }, "preTitle": <str>, "quickPlay": <bool>, "scroll": <str>, "showMore": { "apiPath": <str>, "title": <str> }, "showTableHeaders": <bool>, "supportsPaging": <bool>, "title": <str>, "type": "VIDEO_LIST", "width": <int> } ] } ], "selfLink": <str>, "title": "Videos" }