TIDAL website screenshot

TIDAL

TIDAL is a high-fidelity music streaming service owned by Block (Square's parent, acquired 2021) offering HiRes Lossless FLAC audio up to 192 kHz / 24-bit and Dolby Atmos Music across a 100M+ track catalog. TIDAL's developer platform exposes a unified JSON:API web API at openapi.tidal.com/v2 covering catalog metadata, personalized recommendations, playlists, user collections, playback manifests, search, social features, creator commerce, and artist claims. Playback bytes are restricted to the official TIDAL Player SDK for Web, iOS, and Android. All APIs use OAuth 2.0 — Authorization Code with PKCE for user-context flows and Client Credentials for server-to-server use. TIDAL also operates the TIDAL Embed Player and the open-source tidal-music GitHub organization.

10 APIs 17 Features
MusicStreamingHi-FiHiRes LosslessAudioBlockSquare

APIs

TIDAL Catalog API

Browse TIDAL's high-fidelity music catalog. Resource-oriented JSON:API surface for albums, artists, tracks, videos, genres, lyrics, credits, artworks, providers, and biographies...

TIDAL Search API

Search the TIDAL catalog with personalized search results, type-ahead suggestions, and per-user search history. Supports filtering by entity type and respects user locale and co...

TIDAL Playlists API

Create, read, update, delete, and reorder TIDAL playlists. Manage playlist items, cover art, owners, and editorial vs. user-created classifications. Requires playlists.read and ...

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 f...

TIDAL User Collections API

TIDAL's My Collection — the user's saved albums, artists, tracks, videos, playlists, folders, and save-for-later items. Add, remove, organize into folders, and traverse the coll...

TIDAL Recommendations API

Personalized recommendations powered by TIDAL's algorithmic mixes. Daily Mix, Discovery Mix, New Release Mix, and Offline Mix, plus dynamic editorial pages and modules curated f...

TIDAL Playback API

Playback prerequisites — play queues, encrypted track manifests (HLS/DASH with HI_RES_LOSSLESS, LOSSLESS, HIGH, LOW quality tiers), video manifests, offline tasks, downloads, an...

TIDAL Social API

TIDAL's social surface — shares, saved shares, DSP sharing links (deep links to TIDAL content from other DSPs), comments, reactions, and artist appreciations across albums, arti...

TIDAL Commerce API

TIDAL's marketplace and creator-commerce surface — direct fan purchases of music, artist price configurations, Stripe and Square connections (reflecting TIDAL's Block / Square p...

TIDAL Claims API

Artist verification and content rights claims for the TIDAL Artist platform. Artists claim profiles, content owners assert ownership of catalog items, and TIDAL operations revie...

Collections

TIDAL Users API

POSTMAN

Arazzo Workflows

TIDAL Album Tracklist Explorer

Read an album, enumerate its items, then resolve the first track and its artist.

ARAZZO

TIDAL Artist Discography Explorer

Resolve an artist, then walk their albums, top tracks, and similar artists.

ARAZZO

TIDAL Browse Collection Tracks

Read the user's saved tracks, then enrich the first track with its catalog detail.

ARAZZO

TIDAL Create Playlist and Add Tracks

Create a new playlist, then add a track to its items relationship.

ARAZZO

TIDAL Discovery Mix Tracks

Read the user's discovery mix, enumerate its items, then resolve the first track.

ARAZZO

TIDAL Search and Save Track to Collection

Search for a track, confirm it, then add it to the user's collection.

ARAZZO

TIDAL Search to Track and Album

Run a catalog search, pick a matching track, then resolve that track and its album.

ARAZZO

TIDAL Track Playback Manifest

Resolve a track by ISRC, confirm it, then fetch its playback manifest.

ARAZZO

TIDAL Video Explorer

Read a music video, resolve its artist, and surface similar videos.

ARAZZO

GraphQL

TIDAL GraphQL API

TIDAL is a music streaming service offering high-fidelity audio. The API covers track catalog, artist pages, album details, playlist management, user library, music metadata, an...

GRAPHQL

Pricing Plans

Tidal Plans Pricing

6 plans

PLANS

Rate Limits

Tidal Rate Limits

4 limits

RATE LIMITS

FinOps

Tidal Finops

FINOPS

Features

JSON:API-compliant catalog spanning albums, artists, tracks, videos, genres, lyrics, credits, and artwork
HiRes Lossless audio (FLAC up to 192 kHz / 24-bit) and Dolby Atmos Music for premium tiers
100M+ track catalog with high-quality metadata, credits, and lyrics
Personalized Daily Mixes, Discovery Mix, New Release Mix, and Offline Mix recommendations
User Collections (My Collection) — albums, artists, playlists, tracks, videos, folders, save-for-later
Playback via signed track and video manifests (HLS / DASH) restricted to the TIDAL Player SDK
Search with personalized results, type-ahead suggestions, and per-user search history
Social surface — shares, comments, reactions, appreciations, and DSP sharing deep-links
Creator commerce — direct fan purchases, artist price configurations, Stripe and Square connections
Artist platform — artist claims, content claims, and manual artist verification workflows
OAuth 2.0 Authorization Code with PKCE (user-context) and Client Credentials (server-to-server)
Granular OAuth scopes — collection.read/write, playlists.read/write, playback, recommendations.read, search.read/write, user.read, entitlements.read
Official SDKs for Web (TypeScript), iOS (Swift), and Android (Kotlin)
Embed Player for in-page TIDAL playback on third-party sites
Open-source algorithmic mixes (Python) and OpenAPI generator fork
JSON:API features — cursor pagination, sparse fieldsets, sort, filter, compound documents via `include`
Single canonical OpenAPI spec aggregating 240+ paths and 320+ operations published at developer.tidal.com

Semantic Vocabularies

Tidal Context

0 classes · 18 properties

JSON-LD

API Governance Rules

TIDAL API Rules

8 rules · 2 errors 4 warnings 2 info

SPECTRAL

Example Payloads

Tidal Get Album Example

2 fields

EXAMPLE

Tidal Search Example

2 fields

EXAMPLE

Tidal Track Manifest Example

2 fields

EXAMPLE

Resources

🔗
PostmanWorkspace
PostmanWorkspace
🔗
Arazzo
Arazzo
🔗
Arazzo
Arazzo
🔗
Arazzo
Arazzo
🔗
Arazzo
Arazzo
🔗
Arazzo
Arazzo
🔗
Arazzo
Arazzo
🔗
Arazzo
Arazzo
🔗
Arazzo
Arazzo
🔗
Arazzo
Arazzo
🌐
Portal
Portal
🔗
Documentation
Documentation
🔗
Documentation
Documentation
🔗
Documentation
Documentation
🚀
GettingStarted
GettingStarted
🔑
Authentication
Authentication
📝
Signup
Signup
📜
TermsOfService
TermsOfService
🔗
Documentation
Documentation
🔗
Documentation
Documentation
🔗
Documentation
Documentation
📰
Blog
Blog
📰
Blog
Blog
📜
PrivacyPolicy
PrivacyPolicy
📜
TermsOfService
TermsOfService
🟢
StatusPage
StatusPage
👥
GitHubOrganization
GitHubOrganization
📦
SDKs
SDKs
📦
SDKs
SDKs
📦
SDKs
SDKs
📦
SDKs
SDKs
🔧
Tools
Tools
🔧
Tools
Tools
🔧
Tools
Tools
🔧
Tools
Tools
🔧
Tools
Tools
🔗
Forums
Forums
🔗
Documentation
Documentation
🔗
Plans
Plans
🔗
Plans
Plans
🔗
RateLimits
RateLimits
🔗
FinOps
FinOps

Sources

Raw ↑
opencollection: 1.0.0
info:
  name: TIDAL Users API
  version: 1.10.14
items:
- info:
    name: acceptedTerms
    type: folder
  items:
  - info:
      name: Get multiple acceptedTerms.
      type: http
    http:
      method: GET
      url: https://openapi.tidal.com/v2/acceptedTerms
      params:
      - name: include
        value: owners
        type: query
        description: 'Allows the client to customize which related resources should be returned. Available options: owners,
          terms'
      - name: filter[owners.id]
        value: ''
        type: query
        description: User id. Use `me` for the authenticated user
      - name: filter[terms.isLatestVersion]
        value: ''
        type: query
        description: Filter by terms.isLatestVersion
      - name: filter[terms.termsType]
        value: ''
        type: query
        description: 'One of: DEVELOPER, UPLOAD_MARKETPLACE (e.g. `DEVELOPER`)'
      auth:
        type: oauth2
        flow: authorization_code
        authorizationUrl: https://login.tidal.com/authorize
        accessTokenUrl: https://auth.tidal.com/v1/oauth2/token
        credentials:
          clientId: '{{clientId}}'
          clientSecret: '{{clientSecret}}'
    docs: Retrieves multiple acceptedTerms by available filters, or without if applicable.
  - info:
      name: Create single acceptedTerm.
      type: http
    http:
      method: POST
      url: https://openapi.tidal.com/v2/acceptedTerms
      body:
        type: json
        data: '{}'
      auth:
        type: oauth2
        flow: authorization_code
        authorizationUrl: https://login.tidal.com/authorize
        accessTokenUrl: https://auth.tidal.com/v1/oauth2/token
        credentials:
          clientId: '{{clientId}}'
          clientSecret: '{{clientSecret}}'
    docs: Creates a new acceptedTerm.
  - info:
      name: Get owners relationship ("to-many").
      type: http
    http:
      method: GET
      url: https://openapi.tidal.com/v2/acceptedTerms/:id/relationships/owners
      params:
      - name: id
        value: a468bee88def
        type: path
        description: Accepted terms id
      - name: include
        value: owners
        type: query
        description: 'Allows the client to customize which related resources should be returned. Available options: owners'
      - name: page[cursor]
        value: ''
        type: query
        description: Server-generated cursor value pointing a certain page of items. Optional, targets first page if not specified
      auth:
        type: oauth2
        flow: authorization_code
        authorizationUrl: https://login.tidal.com/authorize
        accessTokenUrl: https://auth.tidal.com/v1/oauth2/token
        credentials:
          clientId: '{{clientId}}'
          clientSecret: '{{clientSecret}}'
    docs: Retrieves owners relationship.
  - info:
      name: Get terms relationship ("to-one").
      type: http
    http:
      method: GET
      url: https://openapi.tidal.com/v2/acceptedTerms/:id/relationships/terms
      params:
      - name: id
        value: a468bee88def
        type: path
        description: Accepted terms id
      - name: include
        value: terms
        type: query
        description: 'Allows the client to customize which related resources should be returned. Available options: terms'
      auth:
        type: oauth2
        flow: authorization_code
        authorizationUrl: https://login.tidal.com/authorize
        accessTokenUrl: https://auth.tidal.com/v1/oauth2/token
        credentials:
          clientId: '{{clientId}}'
          clientSecret: '{{clientSecret}}'
    docs: Retrieves terms relationship.
- info:
    name: clients
    type: folder
  items:
  - info:
      name: Get multiple clients.
      type: http
    http:
      method: GET
      url: https://openapi.tidal.com/v2/clients
      params:
      - name: include
        value: owners
        type: query
        description: 'Allows the client to customize which related resources should be returned. Available options: owners'
      - name: filter[owners.id]
        value: ''
        type: query
        description: User id. Use `me` for the authenticated user
      auth:
        type: oauth2
        flow: authorization_code
        authorizationUrl: https://login.tidal.com/authorize
        accessTokenUrl: https://auth.tidal.com/v1/oauth2/token
        credentials:
          clientId: '{{clientId}}'
          clientSecret: '{{clientSecret}}'
    docs: Retrieves multiple clients by available filters, or without if applicable.
  - info:
      name: Create single client.
      type: http
    http:
      method: POST
      url: https://openapi.tidal.com/v2/clients
      body:
        type: json
        data: '{}'
      auth:
        type: oauth2
        flow: authorization_code
        authorizationUrl: https://login.tidal.com/authorize
        accessTokenUrl: https://auth.tidal.com/v1/oauth2/token
        credentials:
          clientId: '{{clientId}}'
          clientSecret: '{{clientSecret}}'
    docs: Creates a new client.
  - info:
      name: Get single client.
      type: http
    http:
      method: GET
      url: https://openapi.tidal.com/v2/clients/:id
      params:
      - name: id
        value: a468bee88def
        type: path
        description: OAuth client identifier
      - name: include
        value: owners
        type: query
        description: 'Allows the client to customize which related resources should be returned. Available options: owners'
      auth:
        type: oauth2
        flow: authorization_code
        authorizationUrl: https://login.tidal.com/authorize
        accessTokenUrl: https://auth.tidal.com/v1/oauth2/token
        credentials:
          clientId: '{{clientId}}'
          clientSecret: '{{clientSecret}}'
    docs: Retrieves single client by id.
  - info:
      name: Update single client.
      type: http
    http:
      method: PATCH
      url: https://openapi.tidal.com/v2/clients/:id
      params:
      - name: id
        value: a468bee88def
        type: path
        description: OAuth client identifier
      body:
        type: json
        data: '{}'
      auth:
        type: oauth2
        flow: authorization_code
        authorizationUrl: https://login.tidal.com/authorize
        accessTokenUrl: https://auth.tidal.com/v1/oauth2/token
        credentials:
          clientId: '{{clientId}}'
          clientSecret: '{{clientSecret}}'
    docs: Updates existing client.
  - info:
      name: Delete single client.
      type: http
    http:
      method: DELETE
      url: https://openapi.tidal.com/v2/clients/:id
      params:
      - name: id
        value: a468bee88def
        type: path
        description: OAuth client identifier
      auth:
        type: oauth2
        flow: authorization_code
        authorizationUrl: https://login.tidal.com/authorize
        accessTokenUrl: https://auth.tidal.com/v1/oauth2/token
        credentials:
          clientId: '{{clientId}}'
          clientSecret: '{{clientSecret}}'
    docs: Deletes existing client.
  - info:
      name: Get owners relationship ("to-many").
      type: http
    http:
      method: GET
      url: https://openapi.tidal.com/v2/clients/:id/relationships/owners
      params:
      - name: id
        value: a468bee88def
        type: path
        description: OAuth client identifier
      - name: include
        value: owners
        type: query
        description: 'Allows the client to customize which related resources should be returned. Available options: owners'
      - name: page[cursor]
        value: ''
        type: query
        description: Server-generated cursor value pointing a certain page of items. Optional, targets first page if not specified
      auth:
        type: oauth2
        flow: authorization_code
        authorizationUrl: https://login.tidal.com/authorize
        accessTokenUrl: https://auth.tidal.com/v1/oauth2/token
        credentials:
          clientId: '{{clientId}}'
          clientSecret: '{{clientSecret}}'
    docs: Retrieves owners relationship.
- info:
    name: installations
    type: folder
  items:
  - info:
      name: Get multiple installations.
      type: http
    http:
      method: GET
      url: https://openapi.tidal.com/v2/installations
      params:
      - name: page[cursor]
        value: ''
        type: query
        description: Server-generated cursor value pointing a certain page of items. Optional, targets first page if not specified
      - name: include
        value: offlineInventory
        type: query
        description: 'Allows the client to customize which related resources should be returned. Available options: offlineInventory,
          owners'
      - name: filter[clientProvidedInstallationId]
        value: ''
        type: query
        description: Client-provided installation identifier to filter by (e.g. `a468bee88def`)
      - name: filter[id]
        value: ''
        type: query
        description: List of installation IDs (e.g. `a468bee88def`)
      - name: filter[owners.id]
        value: ''
        type: query
        description: User ID to filter by. Use `me` for the authenticated user
      auth:
        type: oauth2
        flow: authorization_code
        authorizationUrl: https://login.tidal.com/authorize
        accessTokenUrl: https://auth.tidal.com/v1/oauth2/token
        credentials:
          clientId: '{{clientId}}'
          clientSecret: '{{clientSecret}}'
    docs: Retrieves multiple installations by available filters, or without if applicable.
  - info:
      name: Create single installation.
      type: http
    http:
      method: POST
      url: https://openapi.tidal.com/v2/installations
      body:
        type: json
        data: '{}'
      auth:
        type: oauth2
        flow: authorization_code
        authorizationUrl: https://login.tidal.com/authorize
        accessTokenUrl: https://auth.tidal.com/v1/oauth2/token
        credentials:
          clientId: '{{clientId}}'
          clientSecret: '{{clientSecret}}'
    docs: Creates a new installation.
  - info:
      name: Get single installation.
      type: http
    http:
      method: GET
      url: https://openapi.tidal.com/v2/installations/:id
      params:
      - name: id
        value: a468bee88def
        type: path
        description: Installation id
      - name: include
        value: offlineInventory
        type: query
        description: 'Allows the client to customize which related resources should be returned. Available options: offlineInventory,
          owners'
      auth:
        type: oauth2
        flow: authorization_code
        authorizationUrl: https://login.tidal.com/authorize
        accessTokenUrl: https://auth.tidal.com/v1/oauth2/token
        credentials:
          clientId: '{{clientId}}'
          clientSecret: '{{clientSecret}}'
    docs: Retrieves single installation by id.
  - info:
      name: Get offlineInventory relationship ("to-many").
      type: http
    http:
      method: GET
      url: https://openapi.tidal.com/v2/installations/:id/relationships/offlineInventory
      params:
      - name: id
        value: a468bee88def
        type: path
        description: Installation id
      - name: page[cursor]
        value: ''
        type: query
        description: Server-generated cursor value pointing a certain page of items. Optional, targets first page if not specified
      - name: include
        value: offlineInventory
        type: query
        description: 'Allows the client to customize which related resources should be returned. Available options: offlineInventory'
      - name: filter[id]
        value: ''
        type: query
        description: Offline item id (e.g. `1234`)
      - name: filter[state]
        value: ''
        type: query
        description: 'One of: PENDING, STORED (e.g. `PENDING`)'
      - name: filter[type]
        value: ''
        type: query
        description: 'One of: tracks, videos, albums, playlists, userCollectionTracks (e.g. `tracks`)'
      auth:
        type: oauth2
        flow: authorization_code
        authorizationUrl: https://login.tidal.com/authorize
        accessTokenUrl: https://auth.tidal.com/v1/oauth2/token
        credentials:
          clientId: '{{clientId}}'
          clientSecret: '{{clientSecret}}'
    docs: Retrieves offlineInventory relationship.
  - info:
      name: Add to offlineInventory relationship ("to-many").
      type: http
    http:
      method: POST
      url: https://openapi.tidal.com/v2/installations/:id/relationships/offlineInventory
      params:
      - name: id
        value: a468bee88def
        type: path
        description: Installation id
      body:
        type: json
        data: '{}'
      auth:
        type: oauth2
        flow: authorization_code
        authorizationUrl: https://login.tidal.com/authorize
        accessTokenUrl: https://auth.tidal.com/v1/oauth2/token
        credentials:
          clientId: '{{clientId}}'
          clientSecret: '{{clientSecret}}'
    docs: Adds item(s) to offlineInventory relationship.
  - info:
      name: Delete from offlineInventory relationship ("to-many").
      type: http
    http:
      method: DELETE
      url: https://openapi.tidal.com/v2/installations/:id/relationships/offlineInventory
      params:
      - name: id
        value: a468bee88def
        type: path
        description: Installation id
      body:
        type: json
        data: '{}'
      auth:
        type: oauth2
        flow: authorization_code
        authorizationUrl: https://login.tidal.com/authorize
        accessTokenUrl: https://auth.tidal.com/v1/oauth2/token
        credentials:
          clientId: '{{clientId}}'
          clientSecret: '{{clientSecret}}'
    docs: Deletes item(s) from offlineInventory relationship.
  - info:
      name: Get owners relationship ("to-many").
      type: http
    http:
      method: GET
      url: https://openapi.tidal.com/v2/installations/:id/relationships/owners
      params:
      - name: id
        value: a468bee88def
        type: path
        description: Installation id
      - name: include
        value: owners
        type: query
        description: 'Allows the client to customize which related resources should be returned. Available options: owners'
      - name: page[cursor]
        value: ''
        type: query
        description: Server-generated cursor value pointing a certain page of items. Optional, targets first page if not specified
      auth:
        type: oauth2
        flow: authorization_code
        authorizationUrl: https://login.tidal.com/authorize
        accessTokenUrl: https://auth.tidal.com/v1/oauth2/token
        credentials:
          clientId: '{{clientId}}'
          clientSecret: '{{clientSecret}}'
    docs: Retrieves owners relationship.
- info:
    name: temporaryUserTokens
    type: folder
  items:
  - info:
      name: Create single temporaryUserToken.
      type: http
    http:
      method: POST
      url: https://openapi.tidal.com/v2/temporaryUserTokens
      body:
        type: json
        data: '{}'
      auth:
        type: oauth2
        flow: authorization_code
        authorizationUrl: https://login.tidal.com/authorize
        accessTokenUrl: https://auth.tidal.com/v1/oauth2/token
        credentials:
          clientId: '{{clientId}}'
          clientSecret: '{{clientSecret}}'
    docs: Creates a new temporaryUserToken.
  - info:
      name: Get single temporaryUserToken.
      type: http
    http:
      method: GET
      url: https://openapi.tidal.com/v2/temporaryUserTokens/:id
      params:
      - name: id
        value: abc123
        type: path
        description: Temporary user token id
      - name: include
        value: owners
        type: query
        description: 'Allows the client to customize which related resources should be returned. Available options: owners'
      auth:
        type: oauth2
        flow: authorization_code
        authorizationUrl: https://login.tidal.com/authorize
        accessTokenUrl: https://auth.tidal.com/v1/oauth2/token
        credentials:
          clientId: '{{clientId}}'
          clientSecret: '{{clientSecret}}'
    docs: Retrieves single temporaryUserToken by id.
  - info:
      name: Get owners relationship ("to-many").
      type: http
    http:
      method: GET
      url: https://openapi.tidal.com/v2/temporaryUserTokens/:id/relationships/owners
      params:
      - name: id
        value: abc123
        type: path
        description: Temporary user token id
      - name: include
        value: owners
        type: query
        description: 'Allows the client to customize which related resources should be returned. Available options: owners'
      - name: page[cursor]
        value: ''
        type: query
        description: Server-generated cursor value pointing a certain page of items. Optional, targets first page if not specified
      auth:
        type: oauth2
        flow: authorization_code
        authorizationUrl: https://login.tidal.com/authorize
        accessTokenUrl: https://auth.tidal.com/v1/oauth2/token
        credentials:
          clientId: '{{clientId}}'
          clientSecret: '{{clientSecret}}'
    docs: Retrieves owners relationship.
- info:
    name: terms
    type: folder
  items:
  - info:
      name: Get multiple terms.
      type: http
    http:
      method: GET
      url: https://openapi.tidal.com/v2/terms
      params:
      - name: filter[countryCode]
        value: ''
        type: query
        description: Filter by countryCode
      - name: filter[id]
        value: ''
        type: query
        description: Terms id (e.g. `a468bee88def`)
      - name: filter[isLatestVersion]
        value: ''
        type: query
        description: Filter by isLatestVersion
      - name: filter[termsType]
        value: ''
        type: query
        description: 'One of: DEVELOPER, UPLOAD_MARKETPLACE (e.g. `DEVELOPER`)'
      auth:
        type: oauth2
        flow: client_credentials
        accessTokenUrl: https://auth.tidal.com/v1/oauth2/token
        credentials:
          clientId: '{{clientId}}'
          clientSecret: '{{clientSecret}}'
    docs: Retrieves multiple terms by available filters, or without if applicable.
  - info:
      name: Get single term.
      type: http
    http:
      method: GET
      url: https://openapi.tidal.com/v2/terms/:id
      params:
      - name: id
        value: a468bee88def
        type: path
        description: Terms id
      auth:
        type: oauth2
        flow: client_credentials
        accessTokenUrl: https://auth.tidal.com/v1/oauth2/token
        credentials:
          clientId: '{{clientId}}'
          clientSecret: '{{clientSecret}}'
    docs: Retrieves single term by id.
- info:
    name: userDataExportRequests
    type: folder
  items:
  - info:
      name: Create single userDataExportRequest.
      type: http
    http:
      method: POST
      url: https://openapi.tidal.com/v2/userDataExportRequests
      body:
        type: json
        data: '{}'
      auth:
        type: oauth2
        flow: authorization_code
        authorizationUrl: https://login.tidal.com/authorize
        accessTokenUrl: https://auth.tidal.com/v1/oauth2/token
        credentials:
          clientId: '{{clientId}}'
          clientSecret: '{{clientSecret}}'
    docs: Creates a new userDataExportRequest.
- info:
    name: userReports
    type: folder
  items:
  - info:
      name: Create single userReport.
      type: http
    http:
      method: POST
      url: https://openapi.tidal.com/v2/userReports
      body:
        type: json
        data: '{}'
      auth:
        type: oauth2
        flow: authorization_code
        authorizationUrl: https://login.tidal.com/authorize
        accessTokenUrl: https://auth.tidal.com/v1/oauth2/token
        credentials:
          clientId: '{{clientId}}'
          clientSecret: '{{clientSecret}}'
    docs: Creates a new userReport.
- info:
    name: users
    type: folder
  items:
  - info:
      name: Get single user.
      type: http
    http:
      method: GET
      url: https://openapi.tidal.com/v2/users/:id
      params:
      - name: id
        value: me
        type: path
        description: User id. Use `me` for the authenticated user's resource
      auth:
        type: oauth2
        flow: authorization_code
        authorizationUrl: https://login.tidal.com/authorize
        accessTokenUrl: https://auth.tidal.com/v1/oauth2/token
        credentials:
          clientId: '{{clientId}}'
          clientSecret: '{{clientSecret}}'
    docs: Retrieves single user by id.
bundled: true