Tuned Global

Social & User-Generated Content

Overview

Tuned Global's APIs support a full suite of social and community features — from user collections and playlists to artist following, public profiles, and content discovery driven by user activity. Combined with upcoming UGC video capabilities, these APIs let you build music-first social experiences where users create, share, and interact around content.

This guide covers the social and UGC APIs available through the Services API (v3) and Metadata API (v2.4), followed by optional platform features that extend the social experience further.

Prerequisites

  • A StoreId issued by Tuned Global
  • OAuth2 credentials (client ID and secret)
  • A Bearer token for authenticated user operations (see DSP Quick Start for auth steps)
  • User context — most social endpoints operate on the currently authenticated user

Quick Start: Build a Social Music Experience

This quick start walks through the core social features: creating a user collection, building a playlist, following artists, and discovering community content.

Step 1: Authenticate

Obtain a Bearer token for the user session.

Endpoint: POST https://api-authentication-connect.tunedglobal.com/oauth2/token

curl -X POST "https://api-authentication-connect.tunedglobal.com/oauth2/token" \
  -H "StoreId: YOUR_STORE_ID" \
  -H "Content-Type: application/x-www-form-urlencoded" \
  -d "grant_type=password&username=TEST_USER&password=TEST_PASSWORD"

Step 2: Add Tracks to the User's Collection

Let users save tracks they like to their personal collection — the foundation of personalisation and social sharing.

Add a single track:

Endpoint: PUT https://api-services-connect.tunedglobal.com/api/v3/collection/tracks/{trackId}

curl -X PUT "https://api-services-connect.tunedglobal.com/api/v3/collection/tracks/987654" \
  -H "StoreId: YOUR_STORE_ID" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN"

Add multiple tracks at once:

Endpoint: POST https://api-services-connect.tunedglobal.com/api/v3/collection/tracks

curl -X POST "https://api-services-connect.tunedglobal.com/api/v3/collection/tracks" \
  -H "StoreId: YOUR_STORE_ID" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '[987654, 987655, 987656]'

Retrieve the user's collection:

Endpoint: GET https://api-services-connect.tunedglobal.com/api/v3/collection/tracks

curl -X GET "https://api-services-connect.tunedglobal.com/api/v3/collection/tracks?offset=0&count=20&sortType=DateAdded" \
  -H "StoreId: YOUR_STORE_ID" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN"

Step 3: Create and Share a Playlist

User-created playlists are the core social object — they can be shared publicly and discovered by other users.

Create a playlist:

Endpoint: POST https://api-services-connect.tunedglobal.com/api/v3/playlists

curl -X POST "https://api-services-connect.tunedglobal.com/api/v3/playlists" \
  -H "StoreId: YOUR_STORE_ID" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "Name": "Friday Night Vibes",
    "Description": "Weekend warm-up mix",
    "IsPublic": true
  }'

Save the playlist ID from the response.

Add tracks to the playlist:

Endpoint: POST https://api-services-connect.tunedglobal.com/api/v3/playlists/{playlistId}/tracks

curl -X POST "https://api-services-connect.tunedglobal.com/api/v3/playlists/88001/tracks" \
  -H "StoreId: YOUR_STORE_ID" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '[987654, 987655, 987656, 987657]'

Upload a custom cover image:

Endpoint: PUT https://api-services-connect.tunedglobal.com/api/v3/playlists/{playlistId}/image/cover

curl -X PUT "https://api-services-connect.tunedglobal.com/api/v3/playlists/88001/image/cover" \
  -H "StoreId: YOUR_STORE_ID" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -H "Content-Type: multipart/form-data" \
  -F "file=@cover.jpg"

Step 4: Follow Artists

Let users follow their favourite artists to build a personalised feed and influence recommendations.

Follow an artist:

Endpoint: PUT https://api-services-connect.tunedglobal.com/api/v3/collection/followedartists/{artistId}

curl -X PUT "https://api-services-connect.tunedglobal.com/api/v3/collection/followedartists/12345" \
  -H "StoreId: YOUR_STORE_ID" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN"

Bulk follow artists:

Endpoint: PUT https://api-services-connect.tunedglobal.com/api/v3/collection/follow-artists

curl -X PUT "https://api-services-connect.tunedglobal.com/api/v3/collection/follow-artists" \
  -H "StoreId: YOUR_STORE_ID" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '[12345, 12346, 12347]'

Check if following:

Endpoint: GET https://api-services-connect.tunedglobal.com/api/v3/collection/followedartists/{artistId}/exists

List followed artists:

Endpoint: GET https://api-services-connect.tunedglobal.com/api/v3/collection/followedartists

curl -X GET "https://api-services-connect.tunedglobal.com/api/v3/collection/followedartists?offset=0&count=20" \
  -H "StoreId: YOUR_STORE_ID" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN"

Step 5: Discover Community Content

Surface playlists and profiles created by other users.

Search user profiles:

Endpoint: GET https://api-metadata-connect.tunedglobal.com/api/v2.4/search/users

curl -X GET "https://api-metadata-connect.tunedglobal.com/api/v2.4/search/users?q=DJ%20Mike&count=10" \
  -H "StoreId: YOUR_STORE_ID"

Get a user's public playlists:

Endpoint: GET https://api-metadata-connect.tunedglobal.com/api/v2.4/playlists/public

curl -X GET "https://api-metadata-connect.tunedglobal.com/api/v2.4/playlists/public?userId=67890&count=20" \
  -H "StoreId: YOUR_STORE_ID"

Browse verified user playlists:

Endpoint: GET https://api-metadata-connect.tunedglobal.com/api/v2.4/playlists/verified

curl -X GET "https://api-metadata-connect.tunedglobal.com/api/v2.4/playlists/verified?count=20" \
  -H "StoreId: YOUR_STORE_ID"

Add a playlist to the user's collection:

Endpoint: PUT https://api-services-connect.tunedglobal.com/api/v3/collection/playlists/{playlistId}

curl -X PUT "https://api-services-connect.tunedglobal.com/api/v3/collection/playlists/88001" \
  -H "StoreId: YOUR_STORE_ID" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN"

Playlist Management

Full CRUD operations for user playlists.

Action Method Endpoint
Create playlist POST /api/v3/playlists
Get my playlists GET /api/v3/playlists
Get playlist details GET /api/v3/playlists/{id}
Edit playlist metadata PATCH /api/v3/playlists/{id}
Delete playlist DELETE /api/v3/playlists/{id}
Add tracks POST /api/v3/playlists/{id}/tracks
Remove tracks DELETE /api/v3/playlists/{id}/tracks
Replace all tracks PUT /api/v3/playlists/{id}/tracks
Clear all tracks DELETE /api/v3/playlists/{id}/tracks/all
Reorder tracks PATCH /api/v3/playlists/{id}/tracks
Upload cover art PUT /api/v3/playlists/{id}/image/cover
Delete cover art DELETE /api/v3/playlists/{id}/image/cover
Get playlist context GET /api/v3/playlists/{id}/context
Download to cloud POST /api/v3/playlists/{id}/download-to-cloud

Collection Management

Users can save content across all media types to their personal collection.

Content Type Add Remove List
Tracks PUT /api/v3/collection/tracks/{id} DELETE /api/v3/collection/tracks/{id} GET /api/v3/collection/tracks
Releases/Albums PUT /api/v3/collection/releases/{id} DELETE /api/v3/collection/releases/{id}
Playlists PUT /api/v3/collection/playlists/{id} DELETE /api/v3/collection/playlists/{id} GET /api/v3/collection/playlists
Stations PUT /api/v3/collection/stations/{id} DELETE /api/v3/collection/stations/{id}
Podcasts PUT /api/v3/collection/podcasts/{id} DELETE /api/v3/collection/podcasts/{id} GET /api/v3/collection/fav-podcasts
Audiobooks PUT /api/v3/collection/audiobooks/{id} DELETE /api/v3/collection/audiobooks/{id} GET /api/v3/collection/audiobooks
Artists (follow) PUT /api/v3/collection/followedartists/{id} DELETE /api/v3/collection/followedartists/{id} GET /api/v3/collection/followedartists

User Context Endpoints

Check whether the current user has interacted with specific content:

Endpoint Description
GET /api/v3/albums/{id}/context User's relationship to an album (collected, etc.)
GET /api/v3/artists/{id}/context User's relationship to an artist (following, etc.)
GET /api/v3/playlists/{id}/context User's relationship to a playlist
GET /api/v3/podcasts/{id}/context User's relationship to a podcast
GET /api/v3/audiobooks/{id}/context User's relationship to an audiobook

UGC Video (Coming Soon)

Tuned Global is adding API support for user-generated video content. Users will be able to submit video through the API, which will be processed and output as HLS (HTTP Live Streaming) in multiple quality tiers for adaptive playback.

Output Profiles

Resolution Use Case
1080p Full HD — desktop, smart TV, tablets
720p HD — standard mobile playback
480p SD — bandwidth-constrained connections
360p Low — minimal bandwidth, background playback

HLS adaptive bitrate streaming automatically selects the best quality for each viewer's connection, with seamless quality switching during playback.

Planned Capabilities

  • Video upload via API endpoint
  • Automatic transcoding to HLS with multi-resolution output
  • CDN delivery of processed video
  • Metadata association (title, description, tags, linked tracks)
  • Integration with existing playlist and collection systems

Status: UGC video APIs are currently in development. Contact Tuned Global for early access and integration planning.

Optional Platform Features

The following features extend the social experience beyond the core APIs. Each is available as an SDK or add-on — contact Tuned Global to enable for your service.

Social Radio

An SDK that transforms your music app into an interactive broadcasting platform. Users, artists, and creators can host live shows with real-time audience interaction.

Key capabilities:

  • Live broadcasting — instant show launch with single-click activation or pre-curated playlist modes
  • Voice overlays — real-time voice commentary between or over tracks with automatic volume levelling
  • Audience interaction — live comments, emoji reactions, and real-time feedback loops
  • Sound effects — customisable audio effects (airhorns, reverb, applause) and branded overlays
  • Tipping — fans can send tips and virtual gifts to hosts in real time
  • Data capture — every interaction is timestamped, providing listener emotion and engagement data
  • Scale — supports thousands of concurrent shows

Built on Pacemaker's patented Recipe format, Social Radio operates exclusively with licensed catalogues — no derivative works are created, eliminating remix-related licensing complications.

AutomixIQ (Pacemaker)

An SDK that delivers AI-powered DJ-quality transitions between songs in any music app. AutomixIQ analyses beats, loudness, vocals, and tempo to create seamless transitions live during playback.

Key capabilities:

  • Intelligent beatmatching — analyses audio characteristics for harmonious transitions between different tempos and keys
  • Real-time processing — transitions happen live and are not saved or recorded (licensing compliant)
  • Studio mode — optional user controls for fade in/out, zooming, and volume adjustments
  • Cross-platform — SDKs available for both Android and iOS

AutomixIQ uses only licensed tracks already in your streaming service. The proprietary transition technology avoids creating derivative works.

Unified Listening

Enables synchronised listening sessions where multiple users hear the same content simultaneously — ideal for shared experiences, listening parties, and co-listening features in social apps.

Live HLS Radio

Deliver live radio streams via HLS (HTTP Live Streaming) protocol. Integrates with existing radio station infrastructure to provide low-latency, adaptive-bitrate live audio through the Tuned Global platform.

Note: Social Radio, AutomixIQ, Unified Listening, and Live HLS Radio are separately licensed features requiring SDK integration. Contact Tuned Global for availability, pricing, and technical integration support.

Quick Reference — Social & UGC Endpoints

Services API (v3) — Playlists

Endpoint                                      Method   Description
--------------------------------------------  ------   ----------------------------------
/api/v3/playlists                             POST     Create playlist
/api/v3/playlists                             GET      List user's playlists
/api/v3/playlists/{id}                        GET      Get playlist details
/api/v3/playlists/{id}                        PATCH    Edit playlist metadata
/api/v3/playlists/{id}                        DELETE   Delete playlist
/api/v3/playlists/{id}/tracks                 POST     Add tracks
/api/v3/playlists/{id}/tracks                 DELETE   Remove tracks
/api/v3/playlists/{id}/tracks                 PUT      Replace all tracks
/api/v3/playlists/{id}/tracks                 PATCH    Reorder tracks
/api/v3/playlists/{id}/tracks/all             DELETE   Clear all tracks
/api/v3/playlists/{id}/image/cover            PUT      Upload cover art
/api/v3/playlists/{id}/context                GET      User context for playlist

Services API (v3) — Collections & Following

Endpoint                                      Method   Description
--------------------------------------------  ------   ----------------------------------
/api/v3/collection/tracks/{id}                PUT      Add track to collection
/api/v3/collection/tracks/{id}                DELETE   Remove track from collection
/api/v3/collection/tracks                     POST     Bulk add tracks
/api/v3/collection/tracks                     GET      List user's tracks
/api/v3/collection/releases/{id}              PUT      Add album to collection
/api/v3/collection/playlists/{id}             PUT      Add playlist to collection
/api/v3/collection/stations/{id}              PUT      Favourite a station
/api/v3/collection/podcasts/{id}              PUT      Add podcast to collection
/api/v3/collection/audiobooks/{id}            PUT      Add audiobook to collection
/api/v3/collection/followedartists/{id}       PUT      Follow an artist
/api/v3/collection/followedartists/{id}       DELETE   Unfollow an artist
/api/v3/collection/follow-artists             PUT      Bulk follow artists
/api/v3/collection/followedartists/{id}/exists GET     Check follow status
/api/v3/collection/followedartists            GET      List followed artists

Metadata API (v2.4) — Community Discovery

Endpoint                                      Method   Description
--------------------------------------------  ------   ----------------------------------
/api/v2.4/search/users                        GET      Search user profiles
/api/v2.4/playlists/public                    GET      User's public playlists
/api/v2.4/playlists/by-verified-user          GET      Verified user's playlists
/api/v2.4/playlists/verified                  GET      All verified user playlists

Notes

  • Services API endpoints use v3 and require Authorization: Bearer {token}.
  • Metadata API endpoints use v2.4 and require StoreId header.
  • Social Radio and AutomixIQ are SDK-based features — contact Tuned Global for integration packages.
  • UGC video submission APIs are in development — contact Tuned Global for early access.

On this page