Using 7Digital API

Overview

Capitol Music Group and its parent Universal Music Group have made a catalog of their songs available for the Hackathon
    ≈ 1,500 unique artists (US and Canadian)
    ≈ 4,500 different albums/singles - all with cover artwork
    ≈ 14,000 tracks - all with full length audio streams
    The 7digital API’s can be used to
      Browse the catalog by Artist and then find tracks for that artist
      Stream the full-length audio for all tracks
      Access cover artwork image files for all albums and singles in the catalog
    Each team will be given an API key and secret to access the APIs
      Only the API key is required to browse the catalog
      However, in order to stream the audio you will need to sign the API call with your key and secret

Important Information

    API Keys
      Key = 7d4vr6cgb392
      Secret = m4ntskavq56rddsa
    You need to add the following parameter to all API calls
      &shopId=2020
    When calling track and release endpoints, always use parameter
      &usageTypes=adsupportedstreaming
    Terminology
      Release = Album or Single

API Schema

Catalog Endpoints

Link to Documentation
Description & Sample Call
Returns a list of artists whose names match the start letter(s) supplied - http://api.7digital.com/1.2/artist/browse?letter=p&shopId=2020&oauth_consumer_key=7d4vr6cgb392
For JSON responses
    Add “accept: application/json” to your http header request
    curl -H “Accept: application/json” ‘http://api.7digital.com…..’

Accessing Album/Single Cover Art

The release endpoint responses return a link to the album artwork - example from (1st) call above
Sizes available - 33, 50, 100, 180, 182, 200, 350, 500 and 800 pixels
The size of images returned by any API response can be adjusted by adding imageSize parameter to the request

Catalog Metadata

Streaming Audio

To stream a track you will need to build your own API call to the 7digital streaming service
    All streaming links need to be "Oauth" signed using the API Key & Secret
    Once generated a streaming link is only valid for 60 minutes and can only be used once
In order to stream a specific track you must specify a 7digital trackId
    7digital trackId's are returned by the catalog search API endpoints
Documentation on how to build a streaming link can be found here - GET /stream/catalogue

Building & Signing Streaming Links

To help build streaming links and sign them with Oauth headers we have a form that you can use here - 7digital Oauth signature reference
Here is an example of how to complete that form

Streaming Parts Of a Track

If you want to stream part of a track (clip) then you can use the range request on your streaming link
curl -v -o partial.mp4 -H "Range:bytes=81920-" "{url to aac stream}"
Please note - you'll need to calculate the number of bytes that you want to start and/or finish at
Last modified 2yr ago