TIDAL Users API
User account management surface. Read user profile and country, manage accepted terms, list registered installations and clients, submit user reports, and request data exports for GDPR/CCPA compliance.
User account management surface. Read user profile and country, manage accepted terms, list registered installations and clients, submit user reports, and request data exports for GDPR/CCPA compliance.
openapi: 3.0.1
info:
title: TIDAL Catalog acceptedTerms users API
version: 1.10.14
description: 'Browse TIDAL''s high-fidelity music catalog: albums, artists, tracks, videos, genres, lyrics, credits, and artwork. JSON:API compliant with relationship traversal.'
x-source: https://tidal-music.github.io/tidal-api-reference/tidal-api-oas.json
servers:
- url: https://openapi.tidal.com/v2
description: Production
tags:
- name: users
paths:
/users/{id}:
get:
description: Retrieves single user by id.
parameters:
- description: User id. Use `me` for the authenticated user's resource
example: me
in: path
name: id
required: true
schema:
type: string
responses:
'200':
content:
application/vnd.api+json:
schema:
$ref: '#/components/schemas/Users_Single_Resource_Data_Document'
description: Successful response
'400':
$ref: '#/components/responses/Default400Response'
'404':
$ref: '#/components/responses/Default404Response'
'405':
$ref: '#/components/responses/Default405Response'
'406':
$ref: '#/components/responses/Default406Response'
'415':
$ref: '#/components/responses/Default415Response'
'429':
$ref: '#/components/responses/Default429Response'
'500':
$ref: '#/components/responses/Default500Response'
'503':
$ref: '#/components/responses/Default503Response'
security:
- Authorization_Code_PKCE:
- r_usr
- user.read
summary: Get single user.
tags:
- users
x-path-item-properties:
required-access-tier: THIRD_PARTY
components:
schemas:
TrackFiles_Attributes:
type: object
properties:
albumAudioNormalizationData:
$ref: '#/components/schemas/AudioNormalizationData'
format:
type: string
description: File's audio format
enum:
- HEAACV1
- AACLC
- FLAC
- FLAC_HIRES
- EAC3_JOC
trackAudioNormalizationData:
$ref: '#/components/schemas/AudioNormalizationData'
trackPresentation:
type: string
description: Track presentation
enum:
- FULL
- PREVIEW
url:
type: string
description: File URL
PlayQueues_Future_Multi_Relationship_Data_Document:
required:
- links
type: object
properties:
data:
type: array
items:
$ref: '#/components/schemas/PlayQueues_Future_Resource_Identifier'
included:
$ref: '#/components/schemas/Included'
links:
$ref: '#/components/schemas/Links'
UserCollectionArtists_Attributes:
required:
- numberOfItems
type: object
properties:
lastModifiedAt:
type: string
description: When the collection was last modified
format: date-time
numberOfItems:
type: integer
description: Number of items in the collection
format: int32
UserCollectionAlbums_Items_Multi_Relationship_Data_Document:
required:
- links
type: object
properties:
data:
type: array
items:
$ref: '#/components/schemas/UserCollectionAlbums_Items_Resource_Identifier'
included:
$ref: '#/components/schemas/Included'
links:
$ref: '#/components/schemas/Links'
TrackSourceFiles_Relationships:
properties:
owners:
$ref: '#/components/schemas/Multi_Relationship_Data_Document'
ProviderProductInfos_Resource_Object:
required:
- id
- type
type: object
properties:
attributes:
$ref: '#/components/schemas/ProviderProductInfos_Attributes'
id:
type: string
description: Resource id
example: '12345'
relationships:
$ref: '#/components/schemas/ProviderProductInfos_Relationships'
type:
minLength: 1
type: string
description: Resource type
example: tracks
Artists_Followers_Resource_Identifier_Meta:
type: object
properties:
viewer:
$ref: '#/components/schemas/Artists_Followers_Resource_Meta_ViewerContext'
UserCollectionTracks_Attributes:
required:
- numberOfItems
type: object
properties:
lastModifiedAt:
type: string
description: When the collection was last modified
format: date-time
numberOfItems:
type: integer
description: Number of items in the collection
format: int32
Terms_Attributes:
required:
- contentLink
- countryCode
- effectiveAt
- termsType
type: object
properties:
contentLink:
$ref: '#/components/schemas/Link_Object'
countryCode:
type: string
effectiveAt:
type: string
format: date-time
termsType:
type: string
enum:
- DEVELOPER
- UPLOAD_MARKETPLACE
Lyrics_Attributes:
required:
- technicalStatus
type: object
properties:
direction:
type: string
enum:
- LEFT_TO_RIGHT
- RIGHT_TO_LEFT
lrcText:
type: string
provider:
oneOf:
- $ref: '#/components/schemas/ThirdPartyLyricsProvider'
- $ref: '#/components/schemas/TidalLyricsProvider'
technicalStatus:
type: string
enum:
- PENDING
- PROCESSING
- ERROR
- OK
text:
type: string
DynamicPages_Relationships:
properties:
dynamicModules:
$ref: '#/components/schemas/Multi_Relationship_Data_Document'
subject:
$ref: '#/components/schemas/Single_Relationship_Data_Document'
Albums_SuggestedCoverArts_Resource_Identifier:
required:
- id
- type
type: object
properties:
id:
type: string
description: Resource id
example: '12345'
meta:
$ref: '#/components/schemas/Albums_SuggestedCoverArts_Resource_Identifier_Meta'
type:
type: string
description: Resource type
example: tracks
Artists_Followers_Multi_Relationship_Data_Document:
required:
- links
type: object
properties:
data:
type: array
items:
$ref: '#/components/schemas/Artists_Followers_Resource_Identifier'
included:
$ref: '#/components/schemas/Included'
links:
$ref: '#/components/schemas/Links'
AlbumStatistics_Resource_Object:
required:
- id
- type
type: object
properties:
attributes:
$ref: '#/components/schemas/AlbumStatistics_Attributes'
id:
type: string
description: Resource id
example: '12345'
relationships:
$ref: '#/components/schemas/AlbumStatistics_Relationships'
type:
minLength: 1
type: string
description: Resource type
example: tracks
Comments_Relationships:
properties:
ownerProfiles:
$ref: '#/components/schemas/Multi_Relationship_Data_Document'
owners:
$ref: '#/components/schemas/Multi_Relationship_Data_Document'
parentComment:
$ref: '#/components/schemas/Single_Relationship_Data_Document'
UserOfflineMixes_Resource_Object:
required:
- id
- type
type: object
properties:
attributes:
$ref: '#/components/schemas/UserOfflineMixes_Attributes'
id:
type: string
description: Resource id
example: '12345'
relationships:
$ref: '#/components/schemas/UserOfflineMixes_Relationships'
type:
minLength: 1
type: string
description: Resource type
example: tracks
SearchSuggestions_Suggestions:
required:
- query
type: object
properties:
highlights:
type: array
items:
$ref: '#/components/schemas/SearchSuggestions_Highlights'
query:
minLength: 1
type: string
description: Suggested search queries
UserOfflineMixes_Relationships:
properties:
items:
$ref: '#/components/schemas/Multi_Relationship_Data_Document'
DspSharingLinks_Resource_Object:
required:
- id
- type
type: object
properties:
attributes:
$ref: '#/components/schemas/DspSharingLinks_Attributes'
id:
type: string
description: Resource id
example: '12345'
relationships:
$ref: '#/components/schemas/DspSharingLinks_Relationships'
type:
minLength: 1
type: string
description: Resource type
example: tracks
ProviderProductInfos_Attributes:
required:
- barcodeId
type: object
properties:
barcodeId:
type: string
broken:
type: boolean
brokenCode:
type: integer
format: int32
tracks:
type: array
items:
$ref: '#/components/schemas/TrackInfo'
UserCollections_Tracks_Resource_Identifier_Meta:
required:
- addedAt
type: object
properties:
addedAt:
type: string
format: date-time
UserCollections_Artists_Resource_Identifier_Meta:
required:
- addedAt
type: object
properties:
addedAt:
type: string
format: date-time
UserDailyMixes_Resource_Object:
required:
- id
- type
type: object
properties:
attributes:
$ref: '#/components/schemas/UserDailyMixes_Attributes'
id:
type: string
description: Resource id
example: '12345'
relationships:
$ref: '#/components/schemas/UserDailyMixes_Relationships'
type:
minLength: 1
type: string
description: Resource type
example: tracks
UserCollectionVideos_Attributes:
required:
- numberOfItems
type: object
properties:
lastModifiedAt:
type: string
description: When the collection was last modified
format: date-time
numberOfItems:
type: integer
description: Number of items in the collection
format: int32
AcceptedTerms_Resource_Object:
required:
- id
- type
type: object
properties:
attributes:
$ref: '#/components/schemas/AcceptedTerms_Attributes'
id:
type: string
description: Resource id
example: '12345'
relationships:
$ref: '#/components/schemas/AcceptedTerms_Relationships'
type:
minLength: 1
type: string
description: Resource type
example: tracks
Videos_Resource_Object:
required:
- id
- type
type: object
properties:
attributes:
$ref: '#/components/schemas/Videos_Attributes'
id:
type: string
description: Resource id
example: '12345'
relationships:
$ref: '#/components/schemas/Videos_Relationships'
type:
minLength: 1
type: string
description: Resource type
example: tracks
SearchResults_Attributes:
required:
- trackingId
type: object
properties:
didYouMean:
type: string
description: '''did you mean'' prompt'
example: beatles
trackingId:
type: string
description: search request unique tracking number
example: 5896e37d-e847-4ca6-9629-ef8001719f7f
External_Link:
required:
- href
- meta
type: object
properties:
href:
type: string
meta:
$ref: '#/components/schemas/External_Link_Meta'
UsageRules_Attributes:
required:
- countryCode
type: object
properties:
countryCode:
type: string
description: Country code (ISO 3166-1 alpha-2)
free:
type: array
description: Usage types allowed for free/ad-supported model
items:
type: string
description: Usage types allowed for free/ad-supported model
enum:
- STREAM
- DJ
- STEM
- DOWNLOAD
inherited:
type: boolean
description: 'Whether these usage rules are inherited from a parent (e.g. a track inheriting from its album). Tri-state: true means the rules are inherited, false means an explicit per-track override, null means the value is unknown or not applicable (albums, videos, and legacy data).'
paid:
type: array
description: Usage types allowed for paid/purchase model
items:
type: string
description: Usage types allowed for paid/purchase model
enum:
- STREAM
- DJ
- STEM
- DOWNLOAD
subscription:
type: array
description: Usage types allowed for subscription model
items:
type: string
description: Usage types allowed for subscription model
enum:
- STREAM
- DJ
- STEM
- DOWNLOAD
validFrom:
type: string
description: Datetime from which these usage rules are valid (ISO 8601)
format: date-time
TemporaryUserTokens_Resource_Object:
required:
- id
- type
type: object
properties:
attributes:
$ref: '#/components/schemas/TemporaryUserTokens_Attributes'
id:
type: string
description: Resource id
example: '12345'
relationships:
$ref: '#/components/schemas/TemporaryUserTokens_Relationships'
type:
minLength: 1
type: string
description: Resource type
example: tracks
Downloads_Resource_Object:
required:
- id
- type
type: object
properties:
attributes:
$ref: '#/components/schemas/Downloads_Attributes'
id:
type: string
description: Resource id
example: '12345'
relationships:
$ref: '#/components/schemas/Downloads_Relationships'
type:
minLength: 1
type: string
description: Resource type
example: tracks
TrackStatistics_Resource_Object:
required:
- id
- type
type: object
properties:
attributes:
$ref: '#/components/schemas/TrackStatistics_Attributes'
id:
type: string
description: Resource id
example: '12345'
relationships:
$ref: '#/components/schemas/TrackStatistics_Relationships'
type:
minLength: 1
type: string
description: Resource type
example: tracks
Artwork_File:
required:
- href
type: object
properties:
href:
type: string
description: Artwork file href
meta:
$ref: '#/components/schemas/Artwork_File_Meta'
description: Artwork files
Links:
required:
- self
type: object
properties:
meta:
$ref: '#/components/schemas/Links_Meta'
next:
type: string
description: Link to next page
example: /artists/xyz/relationships/tracks?page[cursor]=zyx
self:
type: string
description: Link to self
example: /artists/xyz/relationships/tracks
AudioNormalizationData:
type: object
properties:
peakAmplitude:
type: number
format: float
replayGain:
type: number
format: float
description: Track normalization data
UserCollectionArtists_Items_Resource_Identifier:
required:
- id
- type
type: object
properties:
id:
type: string
description: Resource id
example: '12345'
meta:
$ref: '#/components/schemas/UserCollectionArtists_Items_Resource_Identifier_Meta'
type:
type: string
description: Resource type
example: tracks
UserCollectionFolders_Attributes:
required:
- collectionType
- createdAt
- lastModifiedAt
- name
type: object
properties:
collectionType:
type: string
enum:
- PLAYLISTS
createdAt:
type: string
format: date-time
lastModifiedAt:
type: string
format: date-time
name:
type: string
numberOfItems:
type: integer
format: int32
Tracks_Attributes:
required:
- duration
- explicit
- isrc
- key
- keyScale
- mediaTags
- popularity
- title
type: object
properties:
accessType:
type: string
description: Access type
example: PRIVATE
enum:
- PUBLIC
- UNLISTED
- PRIVATE
ai:
type: boolean
description: Whether the track is AI-generated
example: false
availability:
type: array
description: 'Available usage for this track. Deprecated: use ''usageRules'' instead. This field will be removed in a future version.'
deprecated: true
items:
type: string
deprecated: true
enum:
- STREAM
- DJ
- STEM
bpm:
type: number
description: Beats per minute
format: float
example: 60.0
copyright:
$ref: '#/components/schemas/Copyright'
createdAt:
type: string
description: Datetime of track creation (ISO 8601)
format: date-time
duration:
type: string
description: Duration (ISO 8601)
example: PT2M58S
explicit:
type: boolean
description: Explicit content
example: false
externalLinks:
type: array
description: Track links external to TIDAL API
items:
$ref: '#/components/schemas/External_Link'
isrc:
type: string
description: International Standard Recording Code (ISRC)
example: QMJMT1701229
key:
type: string
description: Key
enum:
- UNKNOWN
- C
- CSharp
- D
- Eb
- E
- F
- FSharp
- G
- Ab
- A
- Bb
- B
keyScale:
type: string
description: The scale of the key
enum:
- UNKNOWN
- MAJOR
- MINOR
- AEOLIAN
- BLUES
- DORIAN
- HARMONIC_MINOR
- LOCRIAN
- LYDIAN
- MIXOLYDIAN
- PENTATONIC_MAJOR
- PHRYGIAN
- MELODIC_MINOR
- PENTATONIC_MINOR
mediaTags:
type: array
items:
type: string
description: Media metadata tags
example: HIRES_LOSSLESS
popularity:
type: number
description: Popularity (0.0 - 1.0)
format: double
example: 0.56
spotlighted:
type: boolean
description: Is the track spotlighted?
example: true
title:
type: string
description: Track title
example: Kill Jay Z
toneTags:
type: array
items:
type: string
description: Tone tags
example: Happy
version:
type: string
description: Track version, complements title
example: original, mix etc
UserDiscoveryMixes_Relationships:
properties:
items:
$ref: '#/components/schemas/Multi_Relationship_Data_Document'
PlayQueues_Past_Resource_Identifier:
required:
- id
- type
type: object
properties:
id:
type: string
description: Resource id
example: '12345'
meta:
$ref: '#/components/schemas/PlayQueues_Past_Resource_Identifier_Meta'
type:
type: string
description: Resource type
example: tracks
PlayQueues_Resource_Object:
required:
- id
- type
type: object
properties:
attributes:
$ref: '#/components/schemas/PlayQueues_Attributes'
id:
type: string
description: Resource id
example: '12345'
relationships:
$ref: '#/components/schemas/PlayQueues_Relationships'
type:
minLength: 1
type: string
description: Resource type
example: tracks
PlayQueues_Future_Resource_Identifier:
required:
- id
- type
type: object
properties:
id:
type: string
description: Resource id
example: '12345'
meta:
$ref: '#/components/schemas/PlayQueues_Future_Resource_Identifier_Meta'
type:
type: string
description: Resource type
example: tracks
UserCollectionTracks_Resource_Object:
required:
- id
- type
type: object
properties:
attributes:
$ref: '#/components/schemas/UserCollectionTracks_Attributes'
id:
type: string
description: Resource id
example: '12345'
relationships:
$ref: '#/components/schemas/UserCollectionTracks_Relationships'
type:
minLength: 1
type: string
description: Resource type
example: tracks
Albums_Relationships:
properties:
albumStatistics:
$ref: '#/components/schemas/Single_Relationship_Data_Document'
artists:
$ref: '#/components/schemas/Multi_Relationship_Data_Document'
coverArt:
$ref: '#/components/schemas/Multi_Relationship_Data_Document'
genres:
$ref: '#/components/schemas/Multi_Relationship_Data_Document'
items:
$ref: '#/components/schemas/Albums_Items_Multi_Relationship_Data_Document'
owners:
$ref: '#/components/schemas/Multi_Relationship_Data_Document'
priceConfig:
$ref: '#/components/schemas/Single_Relationship_Data_Document'
providers:
$ref: '#/components/schemas/Multi_Relationship_Data_Document'
replacement:
$ref: '#/components/schemas/Single_Relationship_Data_Document'
shares:
$ref: '#/components/schemas/Multi_Relationship_Data_Document'
similarAlbums:
$ref: '#/components/schemas/Multi_Relationship_Data_Document'
suggestedCoverArts:
$ref: '#/components/schemas/Albums_SuggestedCoverArts_Multi_Relationship_Data_Document'
usageRules:
$ref: '#/components/schemas/Single_Relationship_Data_Document'
UserCollectionTracks_Relationships:
properties:
items:
$ref: '#/components/schemas/UserCollectionTracks_Items_Multi_Relationship_Data_Document'
owners:
$ref: '#/components/schemas/Multi_Relationship_Data_Document'
Artists_TrackProviders_Multi_Relationship_Data_Document:
required:
- links
type: object
properties:
data:
type: array
items:
$ref: '#/components/schemas/Artists_TrackProviders_Resource_Identifier'
included:
$ref: '#/components/schemas/Included'
links:
$ref: '#/components/schemas/Links'
Artwork_File_Meta:
required:
- height
- width
type: object
properties:
height:
type: integer
description: Height (in pixels)
format: int32
example: 80
width:
type: integer
description: Width (in pixels)
format: int32
example: 80
description: Metadata about an artwork file
Albums_Resource_Object:
required:
- id
- type
type: object
properties:
attributes:
$ref: '#/components/schemas/Albums_Attributes'
id:
type: string
description: Resource id
example: '12345'
relationships:
$ref: '#/components/schemas/Albums_Relationships'
type:
minLength: 1
type: string
description: Resource type
example: tracks
ProviderProductInfos_Relationships:
properties:
provider:
$ref: '#/components/schemas/Single_Relationship_Data_Document'
subject:
$ref: '#/components/schemas/Single_Relationship_Data_Document'
Playlists_Resource_Object:
required:
- id
- type
type: object
properties:
attributes:
$ref: '#/components/schemas/Playlists_Attributes'
id:
type: string
description: Resource id
example: '12345'
relationships:
$ref: '#/components/schemas/Playlists_Relationships'
type:
minLength: 1
type: string
description: Resource type
example: tracks
UserCollectionPlaylists_Items_Resource_Identifier_Meta:
required:
- addedAt
type: object
properties:
addedAt:
type: string
format: date-time
LegacyBarcodeId:
type: object
properties:
value:
type: string
description: List of UPCs retrieved from the DSP
UserCollectionArtists_Relationships:
properties:
items:
$ref: '#/components/schemas/UserCollectionArtists_Items_Multi_Relationship_Data_Document'
owners:
$ref: '#/components/schemas/Multi_Relationship_Data_Document'
Credits_Attributes:
required:
- name
- role
type: object
properties:
name:
type: string
description: Credit name
example: John Lennon
role:
type: string
description: Credit role
example: Vocals
Copyright:
required:
- text
type: object
properties:
text:
maxLength: 1024
minLength: 1
type: string
description: Copyright information
Appreciations_Resource_Object:
required:
- id
- type
type: object
properties:
attributes:
$ref: '#/components/schemas/Appreciations_Attributes'
id:
type: string
description: Resource id
example: '12345'
type:
minLength: 1
type: string
description: Resource type
example: tracks
UserCollectionFolders_Relationships:
properties:
items:
$ref: '#/components/schemas/UserCollectionFolders_Items_Multi_Relationship_Data_Document'
owners:
$ref: '#/components/schemas/Multi_Relationship_Data_Document'
Playlists_Items_Multi_Relationship_Data_Document:
required:
- links
type: object
properties:
data:
type: array
items:
$ref: '#/components/schemas/Playlists_Items_Resource_Identifier'
included:
$ref: '#/components/schemas/Included'
links:
$ref: '#/components/schemas/Links'
PlayQueues_Future_Resource_Identifier_Meta:
required:
- batchId
- itemId
type: object
properties:
batchId:
type: string
format: uuid
itemId:
minLength: 1
type: string
legacySource:
$ref: '#/components/schemas/LegacySource'
TrackSourceFiles_Resource_Object:
required:
- id
- type
type: object
properties:
attributes:
$ref: '#/components/schemas/TrackSourceFiles_Attributes'
id:
type: string
description: Resource id
example: '12345'
relationships:
$ref: '#/components/schemas/TrackSourceFiles_Relationships'
type:
minLength: 1
type: string
description: Resource type
example: tracks
PriceConfigurations_Attributes:
required:
- currency
- price
type: object
properties:
currency:
type: string
description: Currency code (ISO 4217)
enum:
- USD
price:
type: string
description: Price amount with max 2 decimal places
example: '9.99'
Link_Object:
type: object
properties:
href:
type: string
description: A JSON:API link object
OfflineTasks_Resource_Object:
required:
- id
- type
type: object
properties:
attributes:
$ref: '#/components/schemas/OfflineTasks_Attributes'
id:
type: string
description: Resource id
example: '12345'
relationships:
$ref: '#/components/schemas/OfflineTasks_Relationships'
type:
minLength: 1
type: string
description: Resource type
example: tracks
Users_Single_Resource_Data_Document:
required:
- data
- links
type: object
properties:
data:
$ref: '#/components/schemas/Users_Resource_Object'
included:
$ref: '#/components/schemas/Included'
links:
$ref: '#/components/schemas/Links'
UsageRules_Resource_Object:
required:
- id
- type
type: object
properties:
attributes:
$ref: '#/components/schemas/UsageRules_Attributes'
id:
type: string
description: Resource id
example: '12345'
type:
minLength: 1
type: string
description: Resource type
example: tracks
Shares_Relationships:
properties:
owners:
$ref: '#/components/schemas/Multi_Relationship_Data_Document'
sharedResources:
$ref: '#/components/schemas/Multi_Relationship_Data_Document'
Terms_Resource_Object:
required:
- id
- type
type: object
properties:
attributes:
$ref: '#/components/schemas/Terms_Attributes'
id:
type: string
description: Resource id
example: '12345'
type:
minLength: 1
type: string
description: Resource type
example: tracks
UserCollectionAlbums_Items_Resource_Identifier_Meta:
required:
- addedAt
type: object
properties:
addedAt:
type: string
format: date-time
Tracks_Resource_Object:
required:
- id
- type
type: object
properties:
attributes:
$ref: '#/components/schemas/Tracks_Attributes'
id:
type: string
description: Resource id
example: '12345'
relationships:
$ref: '#/components/schemas/Tracks_Relationships'
type:
minLength: 1
type: string
description: Resource type
example: tracks
UserCollections_Videos_Resource_Identifier:
required:
- id
- type
type: object
properties:
id:
type: string
description: Resource id
example: '12345'
meta:
$ref: '#/components/schemas/UserCollections_Videos_Resource_Identifier_Meta'
type:
type: string
description: Resource type
example
# --- truncated at 32 KB (136 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/tidal/refs/heads/main/openapi/tidal-users-api-openapi.yml