Access to 7digital services is provided through a REST style interface.
The production API is located at the following address:
A typical API request will look as follows:
http://api.7digital.com/1.2/artist/details?country=GB&oauth_consumer_key=YOUR_KEY_HERE&artistId=1
The supported HTTP methods are displayed underneath each API method in our documentation, e.g. GET or POST.
HTTP POST requests to the 7digital API require all their parameters (including country, page, etc.) to be supplied within the POST body in the application/x-www-form-urlencoded content type format, e.g.
POST http://api.7digital.com/1.2/user/signup
emailaddress=test%2540test.com&password=123&country=GB&oauth_consumer_key=YOUR_KEY_HERE
Access to the 7digital API is controlled by a consumer key, which needs to be passed in as a parameter named oauth_consumer_key with every request. API keys with access to our free endpoints are issued upon request. To obtain one, please apply here.
Throughout the documentation, endpoints that require OAuth signatures, access tokens and premium subscriptions are marked with various icons, as described below.
Icon | Description |
---|---|
Requests must be made using HTTPS | |
Premium* access required | |
OAuth signature required | |
User access token or id required |
*Premium access is subject to contract. Get in touch for more information.
Standard responses will be returned in XML format.
A successful response will have the following format:
<response status="ok" version="1.2">
<response_content />
</response>
A response status of error means an error has occurred whilst processing a request. A failed request will contain an error message element:
<response status="error" version="1.2">
<error code="1001">
<errorMessage>Missing artist ID</errorMessage>
</error>
</response>
Error codes can be split into following categories:
1xxx - Invalid or missing input parameters
Code | Description |
---|---|
1001 | Required parameter missing |
1002 | Invalid parameter value |
1003 | Parameter value out of allowable range |
1006 | Invalid enumeration value |
1007 | Query string parameters are not permitted when performing HTTP Post. Please use Post body or header. |
2xxx - Invalid resource reference
Code | Description |
---|---|
2001 | Resource cannot be found |
2002 | Resource is not available in current context |
2003 | Resource already exists |
3xxx - User has restrictions
Code | Description |
---|---|
3001 | The user's card has expired |
3002 | The user has no card details saved |
3003 | Payment for this purchase has failed |
3005 | This card was issued in a country that is not valid for purchases in this shop. Please use another card. |
3201 | Simultaneous stream requests from multiple devices - streaming access temporarily disabled. |
7xxx - 7digital API application error
Code | Description |
---|---|
7001 | Unable to perform action |
7002 | Application configuration error |
7003 | Operation timed out |
9xxx - Internal server error
Code | Description |
---|---|
9001 | Unexpected internal server error |
Should your API request fail authentication, a response with HTTP Status Code 401 will be returned, along with plain text message describing the reason for the authentication failure.
Please ensure you're using a valid API key and accessing the correct API endpoint.
Requests to some special methods will return a client redirect (e.g. basket/checkout) or serve a media file (e.g. clip/{trackId}) instead of an XML response.
For applications with high-volume usage or with frequent requests for the same data, you are expected to store API responses in a local cache instead of making repeated requests.
This will also allow you to get the most out of a free API key and avoid errors related to exceeding your daily request limit.
The easiest way to enable caching in your application is by setting-up a proxy server between your application and the 7digital API, subsequently making all API calls through this proxy. Alternatively you can implement caching directly in your code.
For your convenience we provide HTTP cache control headers with each API response, which will provide you with information whether to cache a response from a particular API method and for how long. These are generally recommended values adjusted for each API method but you are free to use your own caching strategy should it suit your application better.
The following HTTP Cache control headers will be returned for methods that are recommended to be cached:
Cache-Control: private, max-age=432000
Last-Modified: Tue, 13 Apr 2010 15:03:49 GMT
The parameter "max-age" returns the time in seconds.
For methods that are not recommended to be cached you will receive the below HTTP header:
Cache-Control: no-cache, no-store
Depending on the service level you have agreed with 7digital, access to the 7digital API may be rate limited. The limit applies to the number of API requests made using a single API key per day (i.e. it is not split across end users or IP addresses).
Responses from all rate limited API methods will include the following HTTP headers:
X-RateLimit-Limit: 4000
X-RateLimit-Current: 100
X-RateLimit-Reset: 123465
You can minimize the size of all XML responses by using gzip compression. To get a compressed response you will need to provide the following header with your request:
Accept-Encoding: gzip
The maximum time recomended to store the provided response in your cache can be found in the cache header parameter "max-age".
7digital releases and tracks are available in several sets of formats, with each set having terms of availability. For example, lossless formats may be retailed at a different price than lossy formats, and lossless formats will be made available only to particular commercial clients. The download packages section in responses of our Catalogue API logically groups the formats available to you along with the price of a given package.
Formats are grouped in packages as follows:
Package ID: 2, package description: standard
Package ID: 9, package description: premium
Package ID: 12, package description: deluxe tier 1
Package ID: 16, package description: deluxe tier 2
Package ID: 17, package description: deluxe tier 3
In addition, digital booklets are available on some releases, and in those cases will typically be present across all packages:
7digital download stores are available in several countries across the world. In order to be able to provide users with the maximum amount of content available in their country and display prices in their local currency whenever possible, all API methods require the parameter country. This parameter expects an ISO 3166-1 alpha-2 two-letter country code (eg. GB, US, DE).
Commercial customers who have a dedicated shop with custom content set up should instead of country code use parameter shopId set to the id assigned to them. Please contact our commercial team to enquire about this option.
All API methods that return a list of items in the response accept the following paging parameters:
Name | Type | Use | Description |
---|---|---|---|
page | integer | optional | Page number - defaults to 1 |
pageSize | integer | optional | Number of items to be returned per page. Defaults to 10. Maximum page size is 50 |
Paging information will also be included in the response as per the format below:
<page>1</page>
<itemsPerPage>10</itemsPerPage>
<totalItems>21</totalItems>
The value of totalItems is the maximum number of results. There will sometimes be fewer results available than the totalItems count. This is more noticeable when paging through a large result set. As you advance through the pages the totalItems count may drop.
Some API responses may contain URL's of cover art and artist pictures.
For release cover art images the following sizes are supported:
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
Name | Type | Use | Description |
---|---|---|---|
imageSize | integer | optional | the requested width of the image in pixels |
*Cover art at this size is not available for some releases (less than 0.1% of the catalogue)
Example
http://api.7digital.com/1.2/artist/releases?artistId=1&imageSize=350&oauth_consumer_key=YOUR_KEY_HERE
Artist pictures are available in these sizes::
150, 200 and 300 pixels
Please note: The image size is defined by the width of the picture. The height of the picture may vary.
Example
http://api.7digital.com/1.2/artist/details?artistId=1&imageSize=200&oauth_consumer_key=YOUR_KEY_HERE
Most of the API responses will be comprised of standard objects, which are described below. Not all possible fields are returned in each endpoint's response. In the examples below, all possible fields are included.
Example response:
<artist id="14">
<name>The Charlatans</name>
<sortName>Charlatans, The</sortName>
<appearsAs>The Charlatans</appearsAs>
<slug>the-charlatans</slug>
<image>http://artwork-cdn.7static.com/static/img/artistimages/00/000/000/0000000014_50.jpg</image>
<popularity>0.53</popularity>
<isPlaceholderImage>true</isPlaceholderImage>
</artist>
Description of response fields:
Name | Type | Description |
---|---|---|
artist@id | integer | unique identifier of artist in 7digital catalogue |
name | string | name of the artist (e.g. "The Pogues") |
appearsAs | string | name of the artist as it appears on the track or release (this field is only available when artist object is returned attached to a track or release, e.g. "The Pogues feat. Kirsty MacColl") |
sortName | string | name of the artist as used for sorting (e.g. "Pogues, The"), only available on some endpoints |
image | URL | url of a picture of the artist |
slug | string | url slug of the artist, only available on some endpoints |
popularity | decimal | a figure between 0 and 1 representing the artists popularity, currently only available on the artist/search and artist/bytag/top endpoints |
isPlaceholderImage | boolean | DEPRECATED always returns true, only available on some endpoints |
Albums, singles and videos are all considered and referred to as releases.
Example response:
<release id="1046">
<title>No Surprises</title>
<version />
<type>Single</type>
<barcode>0724388514453</barcode>
<year>1997</year>
<explicitContent>false</explicitContent>
<slug>no-surprises</slug>
<cline>1998 Parlophone Records Ltd, a Warner Music Company</cline>
<pline>1998 Parlophone Records Ltd, a Warner Music Company</pline>
<artist id="304">
<name>Radiohead</name>
<appearsAs>Radiohead</appearsAs>
<slug>radiohead</slug>
<isPlaceholderImage>true</isPlaceholderImage>
</artist>
<image>http://artwork-cdn.7static.com/static/img/sleeveart/00/000/010/0000001046_50.jpg</image>
<label id="227575">
<name>Parlophone UK</name>
</label>
<licensor id="18">
<name>Warner</name>
</licensor>
<popularity>0</popularity>
<duration>642</duration>
<trackCount>3</trackCount>
<download> <!-- Optional: You should only see this element if you are requesting with download usageType -->
<releaseDate>2003-03-01T00:00:00Z</releaseDate>
<packages>
<package id="2">
<description>Standard</description>
<price>
<currencyCode>GBP</currencyCode>
<sevendigitalPrice>2.49</sevendigitalPrice>
<recommendedRetailPrice>2.49</recommendedRetailPrice>
</price>
<formats>
<format id="17">
<description>MP3 320</description>
</format>
</formats>
</package>
<package id="9">
<description>Premium</description>
<price>
<currencyCode>GBP</currencyCode>
<sevendigitalPrice>3.99</sevendigitalPrice>
<recommendedRetailPrice>3.99</recommendedRetailPrice>
</price>
<formats>
<format id="45">
<description>FLAC 16-bit 44.1kHz</description>
</format>
</formats>
</package>
</packages>
</download>
<subscriptionStreaming> <!-- Optional: You should only see this element if you are requesting with subscriptionstreaming usageType -->
<releaseDate>2003-03-01T00:00:00Z</releaseDate>
</subscriptionStreaming>
<adSupportedStreaming> <!-- Optional: You should only see this element if you are requesting with adsupportedstreaming usageType -->
<releaseDate>2003-03-01T00:00:00Z</releaseDate>
</adSupportedStreaming>
</release>
Description of response fields:
Name | Type | Description |
---|---|---|
release@id | integer | unique identifier of the release in 7digital catalogue |
title | string | title of the release |
version | string | version title of the release |
type | enumeration | type of the release, one of: album/single/video |
barcode | string | barcode of the product (typically UPC) |
year | integer | year of the original release (as supplied to 7digital by the issuing label, where data is not available, year of the digital release), only available on some endpoints |
explicitContent | boolean | parental advisory - explicit content tag, as supplied to 7digital by the issuing label, only available on some endpoints |
artist | artist object | primary artist of the release (subset of fields of the full artist details as described above) |
image | URL | url of the release cover picture |
slug | string | url slug of the release |
label | label object | contains 7digital id and name of the issuing label |
licensor | licensor object | id and name of the licensor who controls the rights to the release, currently available on the release/search and release/details endpoints |
popularity | decimal | a figure between 0 and 1 representing the release popularity, currently available on the release/search, artist/releases, release/details and release/bytag/* endpoints |
duration | integer | total length in seconds of all tracks appearing on release, only available on some endpoints |
trackCount | integer | number of tracks appearing on release, only available on some endpoints |
download | download object | contains package information relevant to download, only applicable to endpoints returning tracks or releases |
subscriptionStreaming | subscription streaming object | contains information for subscription streaming, only applicable to endpoints returning tracks or releases |
adSupportedStreaming | ad supported streaming object | contains information for ad supported streaming, only applicable to endpoints returning tracks or releases |
Each release contains one or more tracks. As the same track can appear on multiple releases, trackIds are unique to each release.
Example response:
<track id="3153161">
<title>Island Stomp</title>
<version />
<artist id="60288">
<name>Michel Camilo</name>
<appearsAs>Michel Camilo</appearsAs>
<slug>michel-camilo</slug>
<image>http://artwork-cdn.7static.com/static/img/artistimages/00/000/602/0000060288_150.jpg</image>
<isPlaceholderImage>true</isPlaceholderImage>
</artist>
<trackNumber>1</trackNumber>
<duration>320</duration>
<explicitContent>false</explicitContent>
<isrc>USSM18900815</isrc>
<pline>1994 Parlophone Records Sweden AB, a Warner Music Group Company</pline>
<type>audio</type>
<release id="282442">
<title>On Fire</title>
<version />
<type>Album</type>
<barcode>074644529524</barcode>
<slug>on-fire</slug>
<artist id="60288">
<name>Michel Camilo</name>
<appearsAs>Michel Camilo</appearsAs>
<slug>michel-camilo</slug>
<image>http://artwork-cdn.7static.com/static/img/artistimages/00/000/602/0000060288_150.jpg</image>
<isPlaceholderImage>true</isPlaceholderImage>
</artist>
<image>http://artwork-cdn.7static.com/static/img/sleeveart/00/002/824/0000282442_50.jpg</image>
<label id="1085">
<name>Epic</name>
</label>
<licensor id="2">
<name>Sony Music</name>
</licensor>
</release>
<discNumber>1</discNumber>
<number>1</number>
<download> <!-- Optional: You should only see this element if you are requesting with download usageType -->
<releaseDate>1989-10-02T23:00:00Z</releaseDate>
<previewDate>1989-10-02T00:00:00Z</previewDate>
<packages>
<package id="2">
<description>Standard</description>
<price>
<currencyCode>GBP</currencyCode>
<sevendigitalPrice xsi:nil="true" />
<recommendedRetailPrice>0.99</recommendedRetailPrice>
</price>
<formats>
<format id="17">
<description>MP3 320</description>
</format>
<format id="33">
<description>AAC 320</description>
</format>
</formats>
</package>
</packages>
</download>
<subscriptionStreaming> <!-- Optional: You should only see this element if you are requesting with subscriptionstreaming usageType -->
<releaseDate>1989-10-02T23:00:00Z</releaseDate>
</subscriptionStreaming>
<adSupportedStreaming> <!-- Optional: You should only see this element if you are requesting with adsupportedstreaming usageType -->
<releaseDate>1989-10-02T23:00:00Z</releaseDate>
</adSupportedStreaming>
</track>
Description of response fields:
Name | Type | Description |
---|---|---|
track@id | integer | unique identifier of the track in 7digital catalogue |
title | string | title of the track |
version | string | version of the track (e.g. "Radio Edit") |
type | enumeration | type of the track, one of: audio/video/pdf |
artist | artist object | the primary artist of the track |
duration | integer | the length of the track in seconds |
explicitContent | boolean | parental advisory - explicit content tag, as supplied to 7digital by the issuing label |
isrc | string | ISRC code |
release | release object | release the track appears on |
discNumber | integer | disc number track appears on |
number | integer | the track number as it appears on the release |
download | download object | contains package information relevant to download, only applicable to endpoints returning tracks or releases |
subscriptionStreaming | subscription streaming object | contains information for subscription streaming, only applicable to endpoints returning tracks or releases |
adSupportedStreaming | ad supported streaming object | contains information for ad supported streaming, only applicable to endpoints returning tracks or releases |
All releases in 7digital's catalogue are associated with a label and licensor. Label is essentially a brand under which the release is issued, whereas licensor controls the recording rights for a release.
Although the label is typically more interesting to end consumers, 7digital only holds a contractual and commercial relationship with the licensor who determines when and how 7digital and its partners can sell the release.
Example response:
<label id="32">
<name>Capitol Records</name>
</label>
<licensor id="13">
<name>EMI</name>
</licensor>
Description of response fields:
Name | Type | Description |
---|---|---|
label id | integer | 7digital unique identifier of the label |
label name | string | name of the issuing label |
licensor id | integer | 7digital unique identifier of the licensor |
licensor name | string | name of the licensor |
Both releases and tracks contain information on packages which are relevant to download.
Example response:
<download>
<releaseDate>2010-01-22T00:00:00Z</releaseDate>
<previewDate>2010-01-22T00:00:00Z</previewDate>
<packages>
<package id="2">
<description>standard</description>
<price>
<currencyCode>GBP</currencyCode>
<sevendigitalPrice>0.99</sevendigitalPrice>
<recommendedRetailPrice>0.99</recommendedRetailPrice>
</price>
<formats>
<format id="17">
<description>MP3 320</description>
</format>
</formats>
</package>
</packages>
</download>
Description of response fields:
Name | Type | Description |
---|---|---|
releaseDate | datetime | date and time the release is available to download from |
previewDate | datetime | date and time the release is available to preview from (optional) |
packages | list of package objects | list of available packages relevant to download |
The package object provides information about a group of formats that are available at a certain price. For example, lossless formats may be retailed at a different price level than lossy formats.
Example response:
<package id="2">
<description>standard</description>
<price>
<currencyCode>GBP</currencyCode>
<sevendigitalPrice>0.99</sevendigitalPrice>
<recommendedRetailPrice>0.99</recommendedRetailPrice>
</price>
<formats>
<format id="17">
<description>MP3 320</description>
</format>
</formats>
</package>
Description of response fields:
Name | Type | Description |
---|---|---|
package@id | integer | 7digital unique identifier of the package |
description | string | description of the package |
price | packagePrice object | contains package-specific pricing information |
formats | list of packageFormat objects | list of package formats the tracks appearing on this release are available in |
The packagePrice object provides pricing information relevant to downloading a particular package of a track or release.
In some cases, the value is not specified and the formatted price shows "xsi:nil="true"". In this case, either the release is not purchasable (tracks have to be bought individually) or, conversely, if a track price doesn't have a value, the track is not available separately (the whole release has to be purchased).
Example response:
<price>
<currencyCode>GBP</currencyCode>
<sevendigitalPrice>0.99</sevendigitalPrice>
<recommendedRetailPrice>0.99</recommendedRetailPrice>
</price>
Description of response fields:
Name | Type | Description |
---|---|---|
currencyCode | string | code of the currency (ISO 4217) |
sevendigitalPrice | decimal | not for API usage - use recommendedRetailPrice instead |
recommendedRetailPrice | decimal | numerical value of recommended retail price |
The packageFormat object provides information on each available format relevant to downloading a particular package of a track or release.
Example response:
<format id="17">
<description>MP3 320</description>
</format>
Description of response fields:
Name | Type | Description |
---|---|---|
format@id | integer | 7digital unique identifier of the packageFormat |
description | string | description of the packageFormat |
Example response:
<subscriptionStreaming>
<releaseDate>2003-03-01T00:00:00Z</releaseDate>
</subscriptionStreaming>
Description of response fields:
Name | Type | Description |
---|---|---|
releaseDate | datetime | date and time the release is available to stream from |
Example response:
<adSupportedStreaming>
<releaseDate>2003-03-01T00:00:00Z</releaseDate>
</adSupportedStreaming>
Description of response fields:
Name | Type | Description |
---|---|---|
releaseDate | datetime | date and time the release is available to stream from |
Example response:
<user id="123456">
<type>partner</type>
<emailAddress>email@some.com</emailAddress>
</user>
Description of response fields:
Name | Type | Description |
---|---|---|
user id | string | User identifier (either 7digital or 3rd party depending on user type) |
type | 7digital / partner | Identifies whether the user is a standard 7digital user or a partner user |
emailAddress | email address | The email address of the user |
This method returns the current server time.
Example request: http://api.7digital.com/1.2/status?country=GB&oauth_consumer_key=YOUR_KEY_HERE
Attribute | Type | Description |
---|---|---|
country required | string | Two-letter country code of the country the end user resides in. |
<response status="ok" version="1.2">
<serviceStatus>
<serverTime>2012-02-08T15:46:06Z</serverTime>
</serviceStatus>
</response>
This section details the endpoints used to retrieve details of tracks, releases and artists in our catalogue
This method returns a list of artists from the 7digital catalogue whose names match the start letter(s) supplied.
Example request: http://api.7digital.com/1.2/artist/browse?letter=p&country=US&oauth_consumer_key=YOUR_KEY_HERE
Attribute | Type | Description |
---|---|---|
letter required | string | The first letter(s) of the artist name to browse. |
country required | string | ISO 2-character code of the country the end user resides in. |
<response status="ok" version="1.2">
<artists>
<page>1</page>
<pageSize>10</pageSize>
<totalItems>3256</totalItems>
<artist id="144641">
<name>P J Harvey</name>
<slug>p-j-harvey</slug>
<sortName>P J Harvey</sortName>
<slug>p-j-harvey</slug>
<image>http://artwork-cdn.7static.com/static/img/artistimages/00/001/446/0000144641_50.jpg</image>
<popularity>0.11</popularity>
</artist>
<artist id="17168">
<name>P J Proby</name>
...
</artist>
...
</artists>
</response>
{
"status": "ok",
"version": "1.2",
"artists": {
"page": 1,
"pageSize": 10,
"totalItems": 23817,
"artist": [
{
"id": 314018,
"name": ">P J Harvey",
"sortName": ">P J Harvey",
"slug": "p-j-harvey",
"image": "http://artwork-cdn.7static.com/static/img/artistimages/00/001/446/0000144641_50.jpg",
"popularity": 0.11
},
...
]
}
}
This method returns a territory-specific rolling weekly chart, based on the most purchased artists over the past 7 days.
Example request: http://api.7digital.com/1.2/artist/chart?oauth_consumer_key=YOUR_KEY_HERE&country=GB
Attribute | Type | Description |
---|---|---|
country required | string | ISO 2-character code of the country the end user resides in. |
page | integer | Page number of the result set. If not supplied, defaults to 1. |
pageSize | integer | Number of items to be returned per page. If not supplied this defaults to 10. Maximum page size is 50. |
<response status="ok" version="1.2">
<chart>
<page>1</page>
<pageSize>10</pageSize>
<totalItems>99</totalItems>
<type>artist</type>
<fromDate>2014-10-26T00:00:00+01:00</fromDate>
<toDate>2014-11-01T00:00:00+00:00</toDate>
<chartItem>
<position>1</position>
<change>New</change>
<artist id="487026">
<name>Ben Howard</name>
<slug>ben-howard</slug>
<image>
http://artwork-cdn.7static.com/static/img/artistimages/00/004/870/0000487026_150.jpg
</image>
</artist>
</chartItem>
<chartItem>
<position>2</position>
<change>New</change>
<artist id="2460527">
<name>Scott Walker + Sunn O)))</name>
<slug>scott-walker-plus-sunn-o</slug>
<image>
http://artwork-cdn.7static.com/static/img/artistimages/00/024/605/0002460527_150.jpg
</image>
</artist>
</chartItem>
...
</chart>
</response>
{
"status" : "ok",
"version" : "1.2",
"chart" : {
"page" : 1,
"pageSize" : 2,
"totalItems" : 100,
"type" : "artist",
"fromDate" : "2013-11-25T00:00:00+00:00",
"toDate" : "2013-12-01T00:00:00+00:00",
"chartItem" : [{
"position" : 1,
"change" : "New",
"artist" : {
"id" : 276,
"name" : "McFly",
"appearsAs" : null,
"slug" : "mcfly",
"image" : "http://artwork-cdn.7static.com/static/img/artistimages/00/000/002/0000000276_300.jpg"
}
}, {
"position" : 2,
"change" : "New",
"artist" : {
"id" : 386,
"name" : "Robbie Williams",
"appearsAs" : null,
"slug" : "robbie-williams"
"image" : "http://artwork-cdn.7static.com/static/img/artistimages/00/000/003/0000000386_300.jpg"
}
}
]
}
}
This method returns all available artist details.
Example request: http://api.7digital.com/1.2/artist/details?artistid=1&country=GB&oauth_consumer_key=YOUR_KEY_HERE
Attribute | Type | Description |
---|---|---|
artistId required | integer | The unique 7digital identifier of the artist. |
country required | string | ISO 2-character code of the country the end user resides in. |
<response status="ok" version="1.2">
<artist id="1">
<name>Keane</name>
<sortName>Keane</sortName>
<slug>keane</slug>
<image>http://artwork-cdn.7static.com/static/img/artistimages/00/000/000/0000000001_150.jpg</image>
<bio>
<text/>
</bio>
</artist>
</response>
{
"status": "ok",
"version": "1.2",
"artist": {
"id": 1,
"name": "Keane",
"sortName": "Keane",
"slug": "keane",
"image": "http://artwork-cdn.7static.com/static/img/artistimages/00/000/000/0000000001_150.jpg",
"bio": {
"text": ""
}
}
}
This method returns a list of releases by given artist. Releases can be filtered by type.
Example request: http://api.7digital.com/1.2/artist/releases?artistid=1&oauth_consumer_key=YOUR_KEY_HERE&country=GB&pagesize=2&usageTypes=download,subscriptionstreaming,adsupportedstreaming
Attribute | Type | Description |
---|---|---|
artistId required | integer | The unique identifier of the artist. |
usageTypes required | string | Only use the usageTypes you need, e.g. download, subscriptionstreaming or adsupportedstreaming. |
type | one of album,single,video | Releases can be of type album, single or video. If specified, results are filtered by release type. |
packageIds | string | Contains a comma-separated list of package ids. When specified, only releases that have one of the specified packages will be returned. Used to filter searches to releases that have at least one high quality format. Package ids are listed here. This parameter only takes effect when using 'usageTypes=download', and is otherwise ignored. |
country required | string | ISO 2-character code of the country the end user resides in. |
page | integer | Page number of the result set. If not supplied, defaults to 1. |
pageSize | integer | Number of items to be returned per page. If not supplied this defaults to 10. Maximum page size is 50 |
imageSize | integer | The requested width of the image in pixels. Available image sizes are listed here. |
Method specific error codes:
1001
- Required parameter artistId is missing You must supply a value for the artistId parameter.
1003
- Requested page out of range You specified a page number which does not exist.
<?xml version="1.0" encoding="UTF-8"?>
<response xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" status="ok" version="1.2" xsi:noNamespaceSchemaLocation="http://api.7digital.com/1.2/static/7digitalAPI.xsd">
<releases>
<page>1</page>
<pageSize>2</pageSize>
<totalItems>59</totalItems>
<release id="809798">
<title>A Bad Dream</title>
<version />
<type>Single</type>
<barcode>00602527390970</barcode>
<year>2010</year>
<explicitContent>false</explicitContent>
<artist id="1">
<name>Keane</name>
<appearsAs>Keane</appearsAs>
<image>
http://artwork-cdn.7static.com/static/img/artistimages/00/000/000/0000000001_150.jpg
</image>
<slug>keane</slug>
<isPlaceholderImage>true</isPlaceholderImage>
</artist>
<image>http://artwork-cdn.7static.com/static/img/sleeveart/00/008/097/0000809798_50.jpg</image>
<label id="471977">
<name>(P) 2010 Universal Island Records Ltd. A Universal Music Company.</name>
</label>
<licensor id="1">
<name>Universal</name>
</licensor>
<popularity>0</popularity>
<duration>307</duration>
<trackCount>1</trackCount>
<download> <!-- Optional: You should only see this element if you are requesting with download usageType -->
<releaseDate>2015-11-15T00:00:00Z</releaseDate>
<packages>
<package id="2">
<description>Standard</description>
<price>
<currencyCode>GBP</currencyCode>
<sevendigitalPrice>0.99</sevendigitalPrice>
<recommendedRetailPrice>0.99</recommendedRetailPrice>
</price>
<formats>
<format id="17">
<description>MP3 320</description>
</format>
</formats>
</package>
</packages>
</download>
<subscriptionStreaming> <!-- Optional: You should only see this element if you are requesting with subscriptionstreaming usageType -->
<releaseDate>2015-11-15T00:00:00Z</releaseDate>
</subscriptionStreaming>
<adSupportedStreaming> <!-- Optional: You should only see this element if you are requesting with adsupportedstreaming usageType -->
<releaseDate>2015-11-15T00:00:00Z</releaseDate>
</adSupportedStreaming>
<slug>a-bad-dream-1</slug>
</release>
<release id="470">
<title>AOL Session</title>
<version />
<type>Single</type>
<barcode>00602498672938</barcode>
<year>2004</year>
<explicitContent>false</explicitContent>
<artist id="1">
<name>Keane</name>
<appearsAs>Keane</appearsAs>
<image>
http://artwork-cdn.7static.com/static/img/artistimages/00/000/000/0000000001_150.jpg
</image>
<slug>keane</slug>
<isPlaceholderImage>true</isPlaceholderImage>
</artist>
<image>http://artwork-cdn.7static.com/static/img/sleeveart/00/000/004/0000000470_50.jpg</image>
<label id="465499">
<name>(P) 2004 Universal Island Records Ltd. A Universal Music Company.</name>
</label>
<licensor id="1">
<name>Universal</name>
</licensor>
<popularity>0</popularity>
<duration>1404</duration>
<trackCount>6</trackCount>
<download> <!-- Optional: You should only see this element if you are requesting with download usageType -->
<releaseDate>2015-11-15T00:00:00Z</releaseDate>
<packages>
<package id="2">
<description>Standard</description>
<price>
<currencyCode>GBP</currencyCode>
<sevendigitalPrice>3.99</sevendigitalPrice>
<recommendedRetailPrice>3.99</recommendedRetailPrice>
</price>
<formats>
<format id="17">
<description>MP3 320</description>
</format>
<format id="33">
<description>AAC 320</description>
</format>
</formats>
</package>
</packages>
</download>
<subscriptionStreaming> <!-- Optional: You should only see this element if you are requesting with subscriptionstreaming usageType -->
<releaseDate>2015-11-15T00:00:00Z</releaseDate>
</subscriptionStreaming>
<adSupportedStreaming> <!-- Optional: You should only see this element if you are requesting with adsupportedstreaming usageType -->
<releaseDate>2015-11-15T00:00:00Z</releaseDate>
</adSupportedStreaming>
<slug>aol-session</slug>
</release>
</releases>
</response>
{
"status": "ok",
"version": "1.2",
"schema": "http://api.7digital.com/1.2/static/7digitalAPI.xsd",
"releases": {
"page": 1,
"pageSize": 2,
"totalItems": 59,
"releases": [
{
"id": 809798,
"title": "A Bad Dream",
"version": "",
"type": "Single",
"barcode": "00602527390970",
"year": "2010",
"explicitContent": false,
"artist": {
"id": 1,
"name": "Keane",
"appearsAs": "Keane",
"image": "http://artwork-cdn.7static.com/static/img/artistimages/00/000/000/0000000001_150.jpg",
"slug": "keane",
"isPlaceholderImage": true
},
"image": "http://artwork-cdn.7static.com/static/img/sleeveart/00/008/097/0000809798_50.jpg",
"label": {
"id": 471977,
"name": "(P) 2010 Universal Island Records Ltd. A Universal Music Company."
},
"licensor": {
"id": 1,
"name": "Universal"
},
"popularity": 0,
"duration": 307,
"trackCount": 1,
"download": {
"releaseDate": "2015-11-15T00:00:00Z",
"packages": [
{
"id": 2,
"description": "Standard",
"price": {
"currencyCode": "GBP",
"sevendigitalPrice": 0.99,
"recommendedRetailPrice": 0.99
},
"formats": [
{
"id": 17,
"description": "MP3 320"
}
]
}
]
},
"subscriptionStreaming": {
"releaseDate": "2015-11-15T00:00:00Z"
},
"adSupportedStreaming": {
"releaseDate": "2015-11-15T00:00:00Z"
},
"slug": "a-bad-dream-1"
},
{
"id": 470,
"title": "AOL Session",
"version": "",
"type": "Single",
"barcode": "00602498672938",
"year": "2004",
"explicitContent": false,
"artist": {
"id": 1,
"name": "Keane",
"appearsAs": "Keane",
"image": "http://artwork-cdn.7static.com/static/img/artistimages/00/000/000/0000000001_150.jpg",
"slug": "keane",
"isPlaceholderImage": true
},
"image": "http://artwork-cdn.7static.com/static/img/sleeveart/00/000/004/0000000470_50.jpg",
"label": {
"id": 465499,
"name": "(P) 2004 Universal Island Records Ltd. A Universal Music Company."
},
"licensor": {
"id": 1,
"name": "Universal"
},
"popularity": 0,
"duration": 1404,
"trackCount": 6,
"download": {
"releaseDate": "2015-11-15T00:00:00Z",
"packages": [
{
"id": 2,
"description": "Standard",
"price": {
"currencyCode": "GBP",
"sevendigitalPrice": 3.99,
"recommendedRetailPrice": 3.99
},
"formats": [
{
"id": 17,
"description": "MP3 320"
},
{
"id": 33,
"description": "AAC 320"
}
]
}
]
},
"subscriptionStreaming": {
"releaseDate": "2015-11-15T00:00:00Z"
},
"adSupportedStreaming": {
"releaseDate": "2015-11-15T00:00:00Z"
},
"slug": "aol-session"
}
]
}
}
This method returns a list of artists from the 7digital catalogue that match the search query.
Example request: http://api.7digital.com/1.2/artist/search?q=pink&sort=score%20desc&country=US&oauth_consumer_key=YOUR_KEY_HERE&pagesize=2
Attribute | Type | Description |
---|---|---|
q required | string | The search query string. |
country required | string | ISO 2-character code of the country the end user resides in. |
sort | string | Orders the returned results. Supplied as a string in the format: "{sortColumn} {sortOrder}", for example: "popularity desc" will show most popular artists first regardless of search match score. Currently you can sort by name, popularity and score. If no sort is supplied, the default is "score desc". If no order is supplied the default is ascending. |
page | integer | Page number of the result set. If not supplied, defaults to 1. |
pageSize | integer | Number of items to be returned per page. If not supplied this defaults to 10. Maximum page size is 50. |
imageSize | integer | The requested width of the image in pixels. Available image sizes are listed here. |
Method specific error codes:
1001
- Required parameter q is missing You must supply a value for the q parameter.
1003
- Requested page out of range You specified a page number which does not exist.
<response status="ok" version="1.2">
<searchResults>
<page>1</page>
<pageSize>2</pageSize>
<totalItems>303</totalItems>
<searchResult>
<type>artist</type>
<score>9.148376</score>
<artist id="226">
<name>Pink</name>
<sortName>Pink</sortName>
<slug>pink</slug>
<image>http://artwork-cdn.7static.com/static/img/artistimages/00/000/002/0000000226_150.jpg</image>
<popularity>0.8</popularity>
</artist>
</searchResult>
<searchResult>
<type>artist</type>
<score>5.738292</score>
<artist id="1471729">
<name>Pink Haze</name>
<sortName>Pink Haze</sortName>
<slug>pink-haze</slug>
<image>http://artwork-cdn.7static.com/static/img/artistimages/00/014/717/0001471729_150.jpg</image>
<popularity>0.28</popularity>
</artist>
</searchResult>
</searchResults>
</response>
{
"status": "ok",
"version": "1.2",
"searchResults": {
"page": 1,
"pageSize": 2,
"totalItems": 244,
"searchResult": [
{
"type": "artist",
"score": 9.164859,
"artist": {
"id": 226,
"name": "Pink",
"sortName": "Pink",
"slug": "pink",
"image": "http://artwork-cdn.7static.com/static/img/artistimages/00/000/002/0000000226_150.jpg",
"appearsAs": null,
"popularity": 0.79
}
},
...
]
}
}
This method returns a list of the most popular tracks by artist.
Example request: http://api.7digital.com/1.2/artist/toptracks?artistid=2&oauth_consumer_key=YOUR_KEY_HERE&country=GB&pagesize=2&usageTypes=download,subscriptionstreaming,adsupportedstreaming
Attribute | Type | Description |
---|---|---|
artistId required | integer | The unique identifier of the artist. |
usageTypes required | string | Only use the usageTypes you need, e.g. download, subscriptionstreaming or adsupportedstreaming. |
country required | string | ISO 2-character code of the country the end user resides in. |
page | integer | Page number of the result set. If not supplied, defaults to 1. |
pageSize | integer | Number of items to be returned per page. If not supplied this defaults to 10. Maximum page size is 50. |
imageSize | integer | The requested width of the image in pixels. Available image sizes are listed here. |
Method specific error codes:
1001
- Required parameter artistId is missing You must supply a value for the artistId parameter.
1003
- Requested page out of range You specified a page number which does not exist.
<?xml version="1.0" encoding="UTF-8"?>
<response xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" status="ok" version="1.2" xsi:noNamespaceSchemaLocation="http://api.7digital.com/1.2/static/7digitalAPI.xsd">
<tracks>
<page>1</page>
<pageSize>2</pageSize>
<totalItems>1208</totalItems>
<track id="148">
<title>All The Small Things</title>
<version />
<artist id="2">
<name>Blink 182</name>
<appearsAs>Blink-182</appearsAs>
<image>http://artwork-cdn.7static.com/static/img/artistimages/00/000/000/0000000002_150.jpg</image>
<slug>blink-182</slug>
<isPlaceholderImage>true</isPlaceholderImage>
</artist>
<trackNumber>8</trackNumber>
<duration>172</duration>
<explicitContent>false</explicitContent>
<isrc>USMC19959123</isrc>
<type>audio</type>
<release id="20">
<title>Enema Of The State</title>
<version />
<type>Album</type>
<barcode>00008811195021</barcode>
<explicitContent>false</explicitContent>
<artist id="2">
<name>Blink 182</name>
<appearsAs>Blink-182</appearsAs>
<image>http://artwork-cdn.7static.com/static/img/artistimages/00/000/000/0000000002_150.jpg</image>
<slug>blink-182</slug>
<isPlaceholderImage>true</isPlaceholderImage>
</artist>
<image>http://artwork-cdn.7static.com/static/img/sleeveart/00/000/000/0000000020_50.jpg</image>
<label id="464954">
<name>(P) 1999 Geffen Records</name>
</label>
<licensor id="1">
<name>Universal</name>
</licensor>
<duration>0</duration>
<trackCount xsi:nil="true" />
<slug>enema-of-the-state-1-1</slug>
</release>
<discNumber>1</discNumber>
<popularity>0.41</popularity>
<number>8</number>
<download> <!-- Optional: You should only see this element if you are requesting with download usageType -->
<releaseDate>2015-11-14T00:00:00Z</releaseDate>
<previewDate>2015-11-14T00:00:00Z</previewDate>
<packages>
<package id="2">
<description>Standard</description>
<price>
<currencyCode>GBP</currencyCode>
<sevendigitalPrice>5.49</sevendigitalPrice>
<recommendedRetailPrice>5.49</recommendedRetailPrice>
</price>
<formats>
<format id="17">
<description>MP3 320</description>
</format>
</formats>
</package>
</packages>
</download>
<subscriptionStreaming> <!-- Optional: You should only see this element if you are requesting with subscriptionstreaming usageType -->
<releaseDate>2015-11-14T00:00:00Z</releaseDate>
</subscriptionStreaming>
<adSupportedStreaming> <!-- Optional: You should only see this element if you are requesting with adsupportedstreaming usageType -->
<releaseDate>2015-11-14T00:00:00Z</releaseDate>
</adSupportedStreaming>
</track>
<track id="151">
<title>What's My Age Again?</title>
<version>Explicit</version>
<artist id="2">
<name>Blink 182</name>
<appearsAs>Blink-182</appearsAs>
<image>http://artwork-cdn.7static.com/static/img/artistimages/00/000/000/0000000002_150.jpg</image>
<slug>blink-182</slug>
<isPlaceholderImage>true</isPlaceholderImage>
</artist>
<trackNumber>5</trackNumber>
<duration>150</duration>
<explicitContent>true</explicitContent>
<isrc>USMC19959007</isrc>
<type>audio</type>
<release id="20">
<title>Enema Of The State</title>
<version />
<type>Album</type>
<barcode>00008811195021</barcode>
<explicitContent>false</explicitContent>
<artist id="2">
<name>Blink 182</name>
<appearsAs>Blink-182</appearsAs>
<image>http://artwork-cdn.7static.com/static/img/artistimages/00/000/000/0000000002_150.jpg</image>
<slug>blink-182</slug>
<isPlaceholderImage>true</isPlaceholderImage>
</artist>
<image>http://artwork-cdn.7static.com/static/img/sleeveart/00/000/000/0000000020_50.jpg</image>
<label id="464954">
<name>(P) 1999 Geffen Records</name>
</label>
<licensor id="1">
<name>Universal</name>
</licensor>
<duration>0</duration>
<trackCount xsi:nil="true" />
<slug>enema-of-the-state-1-1</slug>
</release>
<discNumber>1</discNumber>
<popularity>0.39</popularity>
<number>5</number>
<download> <!-- Optional: You should only see this element if you are requesting with download usageType -->
<releaseDate>2015-11-14T00:00:00Z</releaseDate>
<previewDate>2015-11-14T00:00:00Z</previewDate>
<packages>
<package id="2">
<description>Standard</description>
<price>
<currencyCode>GBP</currencyCode>
<sevendigitalPrice>5.49</sevendigitalPrice>
<recommendedRetailPrice>5.49</recommendedRetailPrice>
</price>
<formats>
<format id="17">
<description>MP3 320</description>
</format>
</formats>
</package>
</packages>
</download>
<subscriptionStreaming> <!-- Optional: You should only see this element if you are requesting with subscriptionstreaming usageType -->
<releaseDate>2015-11-14T00:00:00Z</releaseDate>
</subscriptionStreaming>
<adSupportedStreaming> <!-- Optional: You should only see this element if you are requesting with adsupportedstreaming usageType -->
<releaseDate>2015-11-14T00:00:00Z</releaseDate>
</adSupportedStreaming>
</track>
</tracks>
</response>
{
"status": "ok",
"version": "1.2",
"schema": "http://api.7digital.com/1.2/static/7digitalAPI.xsd",
"tracks": {
"page": 1,
"pageSize": 2,
"totalItems": 1208,
"track": [
{
"id": 148,
"title": "All The Small Things",
"version": "",
"artist": {
"id": 2,
"name": "Blink 182",
"appearsAs": "Blink-182",
"image": "http://artwork-cdn.7static.com/static/img/artistimages/00/000/000/0000000002_150.jpg",
"slug": "blink-182",
"isPlaceholderImage": true
},
"trackNumber": 8,
"duration": 172,
"explicitContent": false,
"isrc": "USMC19959123",
"type": "Audio",
"release": {
"id": 20,
"title": "Enema Of The State",
"version": "",
"type": "Album",
"barcode": "00008811195021",
"explicitContent": false,
"artist": {
"id": 2,
"name": "Blink 182",
"appearsAs": "Blink-182",
"image": "http://artwork-cdn.7static.com/static/img/artistimages/00/000/000/0000000002_150.jpg",
"slug": "blink-182",
"isPlaceholderImage": true
},
"image": "http://artwork-cdn.7static.com/static/img/sleeveart/00/000/000/0000000020_50.jpg",
"label": {
"id": 464954,
"name": "(P) 1999 Geffen Records"
},
"licensor": {
"id": 1,
"name": "Universal"
},
"duration": 0,
"slug": "enema-of-the-state-1-1"
},
"discNumber": 1,
"popularity": 0.4,
"number": 8,
"download": {
"releaseDate": "2015-11-14T00:00:00Z",
"previewDate": "2015-11-14T00:00:00Z",
"packages": [
{
"id": 2,
"description": "Standard",
"price": {
"currencyCode": "GBP",
"recommendedRetailPrice": 0.99
},
"formats": [
{
"id": 17,
"description": "MP3 320"
}
]
}
]
},
"subscriptionStreaming": {
"releaseDate": "2015-11-14T00:00:00Z"
},
"adSupportedStreaming": {
"releaseDate": "2015-11-14T00:00:00Z"
}
},
{
"id": 151,
"title": "What's My Age Again?",
"version": "Explicit",
"artist": {
"id": 2,
"name": "Blink 182",
"appearsAs": "Blink-182",
"image": "http://artwork-cdn.7static.com/static/img/artistimages/00/000/000/0000000002_150.jpg",
"slug": "blink-182",
"isPlaceholderImage": true
},
"trackNumber": 5,
"duration": 150,
"explicitContent": true,
"isrc": "USMC19959007",
"type": "Audio",
"release": {
"id": 20,
"title": "Enema Of The State",
"version": "",
"type": "Album",
"barcode": "00008811195021",
"explicitContent": false,
"artist": {
"id": 2,
"name": "Blink 182",
"appearsAs": "Blink-182",
"image": "http://artwork-cdn.7static.com/static/img/artistimages/00/000/000/0000000002_150.jpg",
"slug": "blink-182",
"isPlaceholderImage": true
},
"image": "http://artwork-cdn.7static.com/static/img/sleeveart/00/000/000/0000000020_50.jpg",
"label": {
"id": 464954,
"name": "(P) 1999 Geffen Records"
},
"licensor": {
"id": 1,
"name": "Universal"
},
"duration": 0,
"slug": "enema-of-the-state-1-1"
},
"discNumber": 1,
"popularity": 0.39,
"number": 5,
"download": {
"releaseDate": "2015-11-14T00:00:00Z",
"previewDate": "2015-11-14T00:00:00Z",
"packages": [
{
"id": 2,
"description": "Standard",
"price": {
"currencyCode": "GBP",
"recommendedRetailPrice": 0.99
},
"formats": [
{
"id": 17,
"description": "MP3 320"
}
]
}
]
},
"subscriptionStreaming": {
"releaseDate": "2015-11-14T00:00:00Z"
},
"adSupportedStreaming": {
"releaseDate": "2015-11-14T00:00:00Z"
}
}
]
}
}
This endpoint returns a territory-specific rolling weekly chart, based on the most purchased releases over the past 7 days.
Example request: http://api.7digital.com/1.2/release/chart?oauth_consumer_key=YOUR_KEY_HERE&country=GB&pagesize=2&usageTypes=download,subscriptionstreaming,adsupportedstreaming
Attribute | Type | Description |
---|---|---|
usageTypes required | string | Only use the usageTypes you need, e.g. download, subscriptionstreaming or adsupportedstreaming. |
country required | string | ISO 2-character code of the country the end user resides in. |
page | integer | Page number of the result set. If not supplied, defaults to 1. |
pageSize | integer | Number of items to be returned per page. If not supplied this defaults to 10. Maximum page size is 50. |
imageSize | integer | The requested width of the image in pixels. Available image sizes are listed here. |
Method specific error codes:
1003
- Requested page out of range You specified a page number which does not exist.
<?xml version="1.0" encoding="UTF-8"?>
<response xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" status="ok" version="1.2" xsi:noNamespaceSchemaLocation="http://api.7digital.com/1.2/static/7digitalAPI.xsd">
<chart>
<page>1</page>
<pageSize>2</pageSize>
<totalItems>94</totalItems>
<type>album</type>
<fromDate>2014-09-25T00:00:00+01:00</fromDate>
<toDate>2014-10-01T00:00:00+01:00</toDate>
<chartItem>
<position>1</position>
<change>New</change>
<release id="3563048">
<title>This Is All Yours</title>
<version>Explicit</version>
<type>Album</type>
<barcode>5050954421883</barcode>
<year>2014</year>
<explicitContent>true</explicitContent>
<artist id="1221028">
<name>alt-J</name>
<appearsAs>alt-J</appearsAs>
<slug>alt-j-1</slug>
</artist>
<image>http://artwork-cdn.7static.com/static/img/sleeveart/00/035/630/0003563048_50.jpg</image>
<label id="25901">
<name>Infectious</name>
</label>
<licensor id="48">
<name>Vital</name>
</licensor>
<duration>3328</duration>
<trackCount>14</trackCount>
<download> <!-- Optional: You should only see this element if you are requesting with download usageType -->
<releaseDate>2014-09-22T00:00:00Z</releaseDate>
<packages>
<package id="2">
<description>Standard</description>
<price>
<currencyCode>GBP</currencyCode>
<sevendigitalPrice>4.49</sevendigitalPrice>
<recommendedRetailPrice>4.49</recommendedRetailPrice>
</price>
<formats>
<format id="17">
<description>MP3 320</description>
</format>
<format id="33">
<description>AAC 320</description>
</format>
</formats>
</package>
</packages>
</download>
<subscriptionStreaming> <!-- Optional: You should only see this element if you are requesting with subscriptionstreaming usageType -->
<releaseDate>2014-09-22T00:00:00Z</releaseDate>
</subscriptionStreaming>
<slug>this-is-all-yours</slug>
</release>
</chartItem>
<chartItem>
<position>2</position>
<change>New</change>
<release id="3814480">
<title>Syro</title>
<version />
<type>Album</type>
<barcode>0801061024734</barcode>
<year>2014</year>
<explicitContent>false</explicitContent>
<artist id="6018">
<name>Aphex Twin</name>
<appearsAs>Aphex Twin</appearsAs>
<slug>aphex-twin</slug>
</artist>
<image>http://artwork-cdn.7static.com/static/img/sleeveart/00/038/144/0003814480_50.jpg</image>
<label id="811">
<name>Warp Records</name>
</label>
<licensor id="228">
<name>Warp Records</name>
</licensor>
<duration>3871</duration>
<trackCount>12</trackCount>
<download> <!-- Optional: You should only see this element if you are requesting with download usageType -->
<releaseDate>2014-09-21T00:00:00Z</releaseDate>
<packages>
<package id="2">
<description>Standard</description>
<price>
<currencyCode>GBP</currencyCode>
<sevendigitalPrice>7.99</sevendigitalPrice>
<recommendedRetailPrice>7.99</recommendedRetailPrice>
</price>
<formats>
<format id="17">
<description>MP3 320</description>
</format>
<format id="33">
<description>AAC 320</description>
</format>
</formats>
</package>
</packages>
</download>
<slug>syro</slug>
</release>
</chartItem>
</chart>
</response>
{
"status": "ok",
"version": "1.2",
"chart": {
"page": 1,
"pageSize": 2,
"totalItems": 94,
"type": "album",
"fromDate": "2014-09-25T00:00:00+01:00",
"toDate": "2014-10-01T00:00:00+01:00",
"chartItem": [
{
"position": 1,
"change": "New",
"release": {
"id": 3563048,
"title": "This Is All Yours",
"version": "Explicit",
"type": "Album",
"barcode": "5050954421883",
"year": 2014,
"explicitContent": true,
"artist": {
"id": 1221028,
"name": "alt-J",
"appearsAs": "alt-J",
"slug": "alt-j",
"image": "http://artwork-cdn.7static.com/static/img/artistimages/00/001/379/0000137931_150.jpg"
},
"image": "http://artwork-cdn.7static.com/static/img/sleeveart/00/035/630/0003563048_50.jpg",
"label": {
"id": "25901",
"name": "Infectious"
},
"licensor": {
"id": "48",
"name": "Vital"
},
"duration": 3328,
"trackCount": 14
}
},
{
"position": 2,
"change": "New",
"release": {
"id": 3814480,
"title": "Syro",
"version": "",
"type": "Album",
"barcode": "0801061024734",
"year": 2014,
"explicitContent": false,
"artist": {
"id": 6018,
"name": "Aphex Twin",
"appearsAs": "Aphex Twin",
"slug": "aphex-twin",
"image": "http://artwork-cdn.7static.com/static/img/artistimages/00/000/084/0000008452_150.jpg"
},
"image": "http://artwork-cdn.7static.com/static/img/sleeveart/00/038/144/0003814480_50.jpg",
"label": {
"id": "811",
"name": "Warp Records"
},
"licensor": {
"id": "228",
"name": "Warp Records"
},
"duration": 3871,
"trackCount": 12
}
}
]
}
}
This method returns all available details for a given release.
Example request: http://api.7digital.com/1.2/release/details?releaseid=1046&oauth_consumer_key=YOUR_KEY_HERE&country=GB&usageTypes=download,subscriptionstreaming,adsupportedstreaming
Attribute | Type | Description |
---|---|---|
releaseId required | integer | The unique identifier of the release. |
usageTypes required | string | Only use the usageTypes you need, e.g. download, subscriptionstreaming or adsupportedstreaming. |
country required | string | ISO 2-character code of the country the end user resides in. |
imageSize | integer | The requested width of the image in pixels. Available image sizes are listed here. |
Method specific error codes:
2001
- Release id not licensed for this partner The copyright for the release you requested is owned by a label not currently licensed for your service.
<?xml version="1.0" encoding="UTF-8"?>
<response xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" status="ok" version="1.2" xsi:noNamespaceSchemaLocation="http://api.7digital.com/1.2/static/7digitalAPI.xsd">
<release id="1046">
<title>No Surprises</title>
<version />
<type>Single</type>
<barcode>0724388514453</barcode>
<year>1997</year>
<explicitContent>false</explicitContent>
<slug>no-surprises</slug>
<cline>1998 Parlophone Records Ltd, a Warner Music Company</cline>
<pline>1998 Parlophone Records Ltd, a Warner Music Company</pline>
<artist id="304">
<name>Radiohead</name>
<appearsAs>Radiohead</appearsAs>
<slug>radiohead</slug>
<image>http://artwork-cdn.7static.com/static/img/artistimages/00/000/003/0000000304_150.jpg</image>
<isPlaceholderImage>true</isPlaceholderImage>
</artist>
<image>http://artwork-cdn.7static.com/static/img/sleeveart/00/000/010/0000001046_50.jpg</image>
<label id="227575">
<name>Parlophone UK</name>
</label>
<licensor id="18">
<name>Warner</name>
</licensor>
<popularity>0</popularity>
<duration>642</duration>
<trackCount>3</trackCount>
<download> <!-- Optional: You should only see this element if you are requesting with download usageType -->
<releaseDate>2003-03-01T00:00:00Z</releaseDate>
<packages>
<package id="2">
<description>Standard</description>
<price>
<currencyCode>GBP</currencyCode>
<sevendigitalPrice>2.49</sevendigitalPrice>
<recommendedRetailPrice>2.49</recommendedRetailPrice>
</price>
<formats>
<format id="17">
<description>MP3 320</description>
</format>
</formats>
</package>
</packages>
</download>
<subscriptionStreaming> <!-- Optional: You should only see this element if you are requesting with subscriptionstreaming usageType -->
<releaseDate>2003-03-01T00:00:00Z</releaseDate>
</subscriptionStreaming>
<adSupportedStreaming> <!-- Optional: You should only see this element if you are requesting with adSupportedstreaming usageType -->
<releaseDate>2003-03-01T00:00:00Z</releaseDate>
</adSupportedStreaming>
</release>
</response>
{
"release": {
"id": 1046,
"title": "No Surprises",
"version": "",
"type": "Single",
"barcode": "0724388514453",
"year": 1997,
"explicitContent": false,
"slug": "no-surprises",
"artist": {
"id": 304,
"name": "Radiohead",
"appearsAs": "Radiohead",
"slug": "radiohead",
"image": "http://artwork-cdn.7static.com/static/img/artistimages/00/000/003/0000000304_150.jpg",
"isPlaceholderImage": true
},
"image": "http://artwork-cdn.7static.com/static/img/sleeveart/00/000/010/0000001046_50.jpg",
"label": {
"id": 227575,
"name": "Parlophone UK"
},
"licensor": {
"id": 18,
"name": "Warner"
},
"popularity": 0,
"duration": 642,
"trackCount": 3,
"download": {
"releaseDate": "2003-03-01T00:00:00Z",
"packages": [
{
"id": 2,
"description": "Standard",
"price": {
"currencyCode": "GBP",
"sevendigitalPrice": "2.49",
"recommendedRetailPrice": "2.49"
},
"formats": [
{
"id": 17,
"description": "MP3 320"
}
]
}
]
},
"subscriptionStreaming": {
"releaseDate": "2003-03-01T00:00:00Z"
},
"adSupportedStreaming": {
"releaseDate": "2003-03-01T00:00:00Z"
}
}
}
Return details of multiple releases in one request. In the request, releases are identified by release id. There will be one release in the response for every corresponding valid id in the request, and the releases will be in the same order as the requested ids. Releases that are not valid for any reason are omitted from the releases list in the response. They will be included in the errors list, in order, if showErrors is set true.
Example request: https://api.7digital.com/1.2/release/details/batch?releaseids=12345,12346,12347&showerrors=true&oauth_consumer_key=YOUR_KEY_HERE&country=GB&usageTypes=download,subscriptionstreaming,adsupportedstreaming
Attribute | Type | Description |
---|---|---|
releaseids required | string | Contains a comma-separated list of release ids. Maximum of 500 items. |
packageIds | string | Contains a comma-separated list of package ids. When specified, only releases that have one of the specified packages will be returned. Used to filter searches to releases that have at least one high quality format. Package ids are listed here. This parameter only takes effect when using 'usageTypes=download', and is otherwise ignored. |
country required | string | ISO 2-character code of the country the end user resides in. |
showErrors | boolean | When set true, the errors element is shown in the output, containing a list of errors. There will be one error for each release that could not be shown in the releases list. The Itemid on the error shows which release it relates to. The code and message relates to the reason why the release could not be shown. |
usageTypes required | string | Only use the usageTypes you need, e.g. download, subscriptionstreaming or adsupportedstreaming. |
type | string | When set, only releases with the matching type value ("Album" or "single") will be returned. If not set, then all will be returned. |
imageSize | number | The requested width of the image in pixels. Available image sizes are listed here. |
Method specific error codes:
1001
- Required parameter releaseIds is missing You must supply a value for the releaseIds parameter.
1002
- Invalid value for parameter releaseIds You must supply a comma-separated list of release ids.
<?xml version="1.0" encoding="UTF-8"?>
<response xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" status="ok" version="1.2" xsi:noNamespaceSchemaLocation="http://api.7digital.com/1.2/static/7digitalAPI.xsd">
<items>
<releases>
<release id="12345">
<title>Yo, Minoria Absoluta</title>
<version />
<type>Album</type>
<barcode>809274456564</barcode>
<year>2002</year>
<explicitContent>false</explicitContent>
<slug>yo-minoria-absoluta-1</slug>
<artist id="5653">
<name>Extremoduro</name>
<appearsAs>Extremoduro</appearsAs>
<slug>extremoduro</slug>
<image>http://artwork-cdn.7static.com/static/img/artistimages/00/000/056/0000005653_150.jpg</image>
<isPlaceholderImage>true</isPlaceholderImage>
</artist>
<image>http://artwork-cdn.7static.com/static/img/sleeveart/00/000/123/0000012345_50.jpg</image>
<label id="556">
<name>DRO/EastWest Spain</name>
</label>
<licensor id="18">
<name>Warner</name>
</licensor>
<popularity>0</popularity>
<duration>2560</duration>
<trackCount>10</trackCount>
<download> <!-- Optional: You should only see this element if you are requesting with download usageType -->
<releaseDate>2005-05-23T23:00:00Z</releaseDate>
<packages>
<package id="2">
<description>Standard</description>
<price>
<currencyCode>GBP</currencyCode>
<sevendigitalPrice>8.49</sevendigitalPrice>
<recommendedRetailPrice>8.49</recommendedRetailPrice>
</price>
<formats>
<format id="48">
<description>MP3 256</description>
</format>
</formats>
</package>
</packages>
</download>
<subscriptionStreaming> <!-- Optional: You should only see this element if you are requesting with subscriptionstreaming usageType -->
<releaseDate>2005-05-23T23:00:00Z</releaseDate>
</subscriptionStreaming>
<adSupportedStreaming> <!-- Optional: You should only see this element if you are requesting with adsupportedstreaming usageType -->
<releaseDate>2005-05-23T23:00:00Z</releaseDate>
</adSupportedStreaming>
</release>
<release id="12346">
<title>The best of Umberto Tozzi</title>
<version />
<type>Album</type>
<barcode>809274726360</barcode>
<year>2002</year>
<explicitContent>false</explicitContent>
<slug>the-best-of-umberto-tozzi</slug>
<artist id="5440">
<name>Umberto Tozzi</name>
<appearsAs>Umberto Tozzi</appearsAs>
<slug>umberto-tozzi</slug>
<image>http://artwork-cdn.7static.com/static/img/artistimages/00/000/054/0000005440_150.jpg</image>
<isPlaceholderImage>true</isPlaceholderImage>
</artist>
<image>http://artwork-cdn.7static.com/static/img/sleeveart/00/000/123/0000012346_50.jpg</image>
<label id="430">
<name>CGD/EastWest Italy</name>
</label>
<licensor id="18">
<name>Warner</name>
</licensor>
<popularity>0</popularity>
<duration>9488</duration>
<trackCount>34</trackCount>
<download> <!-- Optional: You should only see this element if you are requesting with download usageType -->
<releaseDate>2012-01-13T00:00:00Z</releaseDate>
<packages>
<package id="2">
<description>Standard</description>
<price>
<currencyCode>GBP</currencyCode>
<sevendigitalPrice>8.49</sevendigitalPrice>
<recommendedRetailPrice>8.49</recommendedRetailPrice>
</price>
<formats>
<format id="48">
<description>MP3 256</description>
</format>
</formats>
</package>
</packages>
</download>
<subscriptionStreaming> <!-- Optional: You should only see this element if you are requesting with subscriptionstreaming usageType -->
<releaseDate>2012-01-13T00:00:00Z</releaseDate>
</subscriptionStreaming>
<adSupportedStreaming> <!-- Optional: You should only see this element if you are requesting with adsupportedstreaming usageType -->
<releaseDate>2012-01-13T00:00:00Z</releaseDate>
</adSupportedStreaming>
</release>
<release id="12347">
<title>Bach, JS : Well-Tempered Clavier Book 1</title>
<version />
<type>Album</type>
<barcode>825646155361</barcode>
<year>2004</year>
<explicitContent>false</explicitContent>
<slug>bach-well-tempered-clavier-book-1</slug>
<artist id="6090">
<name>Daniel Barenboim</name>
<appearsAs>Daniel Barenboim</appearsAs>
<slug>daniel-barenboim</slug>
<image>http://artwork-cdn.7static.com/static/img/artistimages/00/000/060/0000006090_150.jpg</image>
<isPlaceholderImage>true</isPlaceholderImage>
</artist>
<image>http://artwork-cdn.7static.com/static/img/sleeveart/00/000/123/0000012347_50.jpg</image>
<label id="422">
<name>Warner Classics International</name>
</label>
<licensor id="18">
<name>Warner</name>
</licensor>
<popularity>0</popularity>
<duration>7482</duration>
<trackCount>48</trackCount>
<download> <!-- Optional: You should only see this element if you are requesting with download usageType -->
<releaseDate>2006-08-29T00:00:00Z</releaseDate>
<packages>
<package id="2">
<description>Standard</description>
<price>
<currencyCode>GBP</currencyCode>
<sevendigitalPrice>10.49</sevendigitalPrice>
<recommendedRetailPrice>10.49</recommendedRetailPrice>
</price>
<formats>
<format id="17">
<description>MP3 320</description>
</format>
</formats>
</package>
</packages>
</download>
</release>
</releases>
<errors />
</items>
</response>
{
"items": {
"releases": [
{
"id": 12345,
"title": "Yo, Minoria Absoluta",
"version": "",
"type": "Album",
"barcode": "809274456564",
"year": 2002,
"explicitContent": false,
"slug": "yo-minoria-absoluta-1",
"artist": {
"id": 5653,
"name": "Extremoduro",
"appearsAs": "Extremoduro",
"url": null,
"slug": "extremoduro",
"image": "http://artwork-cdn.7static.com/static/img/artistimages/00/000/056/0000005653_150.jpg",
"isPlaceholderImage": true
},
"url": null,
"image": "http://artwork-cdn.7static.com/static/img/sleeveart/00/000/123/0000012345_50.jpg",
"price": null,
"formats": null,
"label": {
"id": 556,
"name": "DRO/EastWest Spain"
},
"licensor": {
"id": 18,
"name": "Warner"
},
"popularity": 0,
"duration": 2560,
"trackCount": 10,
"download": {
"releaseDate": "2005-05-23T23:00:00Z",
"packages": [
{
"id": 2,
"description": "Standard",
"price": {
"currencyCode": "GBP",
"sevendigitalPrice": "8.49",
"recommendedRetailPrice": "8.49"
},
"formats": [
{
"id": 48,
"description": "MP3 256"
}
]
}
]
},
"subscriptionStreaming": {
"releaseDate": "2005-05-23T23:00:00Z"
},
"adSupportedStreaming": {
"releaseDate": "2005-05-23T23:00:00Z"
}
},
{
"id": 12346,
"title": "The best of Umberto Tozzi",
"version": "",
"type": "Album",
"barcode": "809274726360",
"year": 2002,
"explicitContent": false,
"slug": "the-best-of-umberto-tozzi",
"artist": {
"id": 5440,
"name": "Umberto Tozzi",
"appearsAs": "Umberto Tozzi",
"url": null,
"slug": "umberto-tozzi",
"image": "http://artwork-cdn.7static.com/static/img/artistimages/00/000/054/0000005440_150.jpg",
"isPlaceholderImage": true
},
"url": null,
"image": "http://artwork-cdn.7static.com/static/img/sleeveart/00/000/123/0000012346_50.jpg",
"price": null,
"formats": null,
"label": {
"id": 430,
"name": "CGD/EastWest Italy"
},
"licensor": {
"id": 18,
"name": "Warner"
},
"popularity": 0,
"duration": 9488,
"trackCount": 34,
"download": {
"releaseDate": "2012-01-13T00:00:00Z",
"packages": [
{
"id": 2,
"description": "Standard",
"price": {
"currencyCode": "GBP",
"sevendigitalPrice": "8.49",
"recommendedRetailPrice": "8.49"
},
"formats": [
{
"id": 48,
"description": "MP3 256"
}
]
}
]
},
"subscriptionStreaming": {
"releaseDate": "2012-01-13T00:00:00Z"
},
"adSupportedStreaming": {
"releaseDate": "2012-01-13T00:00:00Z"
}
},
{
"id": 12347,
"title": "Bach, JS : Well-Tempered Clavier Book 1",
"version": "",
"type": "Album",
"barcode": "825646155361",
"year": 2004,
"explicitContent": false,
"slug": "bach-well-tempered-clavier-book-1",
"artist": {
"id": 6090,
"name": "Daniel Barenboim",
"appearsAs": "Daniel Barenboim",
"url": null,
"slug": "daniel-barenboim",
"image": "http://artwork-cdn.7static.com/static/img/artistimages/00/000/060/0000006090_150.jpg",
"isPlaceholderImage": true
},
"url": null,
"image": "http://artwork-cdn.7static.com/static/img/sleeveart/00/000/123/0000012347_50.jpg",
"price": null,
"formats": null,
"label": {
"id": 422,
"name": "Warner Classics International"
},
"licensor": {
"id": 18,
"name": "Warner"
},
"popularity": 0,
"duration": 7482,
"trackCount": 48,
"download": {
"releaseDate": "2006-08-29T00:00:00Z",
"packages": [
{
"id": 2,
"description": "Standard",
"price": {
"currencyCode": "GBP",
"sevendigitalPrice": "10.49",
"recommendedRetailPrice": "10.49"
},
"formats": [
{
"id": 17,
"description": "MP3 320"
}
]
}
]
},
"subscriptionStreaming": null,
"adSupportedStreaming": null
}
],
"errors": []
}
}
This method searches the 7digital catalogue for releases matching the search query. Results can be filtered by release type.
Example request: http://api.7digital.com/1.2/release/search?q=no%20surprises&oauth_consumer_key=YOUR_KEY_HERE&country=GB&pagesize=2&usageTypes=download,subscriptionstreaming,adsupportedstreaming
Attribute | Type | Description |
---|---|---|
q required | string | The search query string. |
usageTypes required | string | Only use the usageTypes you need, e.g. download, subscriptionstreaming or adsupportedstreaming. |
type | one of album,single,video | If specified results are filtered by given release type (multiple types separated by commas can be passed). |
packageIds | integer | A single or comma-separated list of integers. If specified, results are filtered to releases that have at least one of the specified package ids. Package ids are listed here. This parameter only takes effect when using 'usageTypes=download', and is otherwise ignored. |
country required | string | ISO 2-character code of the country the end user resides in. |
page | integer | Page number of the result set. If not supplied, defaults to 1 |
pageSize | integer | Number of items to be returned per page. If not supplied this defaults to 10. Maximum page size is 50 |
imageSize | integer | The requested width of the image in pixels. Available image sizes are listed here. |
Method specific error codes:
1001
- Required parameter q is missing You must supply a value for the q parameter.
1002
- Invalid value in package ids You must supply only a single integer, or a comma-delimited list of integers for the packageIds parameter. Package ids are listed here.
1003
- Requested page out of range You specified a page number which does not exist.
<?xml version="1.0" encoding="UTF-8"?>
<response xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" status="ok" version="1.2" xsi:noNamespaceSchemaLocation="http://api.7digital.com/1.2/static/7digitalAPI.xsd">
<searchResults>
<page>1</page>
<pageSize>2</pageSize>
<totalItems>9</totalItems>
<searchResult>
<type>release</type>
<score>12.588761</score>
<release id="1046">
<title>No Surprises</title>
<version />
<type>Single</type>
<barcode>0724388514453</barcode>
<year>1997</year>
<explicitContent>false</explicitContent>
<artist id="304">
<name>Radiohead</name>
<appearsAs>Radiohead</appearsAs>
<slug>radiohead</slug>
<image>
http://artwork-cdn.7static.com/static/img/artistimages/00/000/003/0000000304_150.jpg
</image>
<isPlaceholderImage>true</isPlaceholderImage>
</artist>
<image>http://artwork-cdn.7static.com/static/img/sleeveart/00/000/010/0000001046_50.jpg</image>
<label id="227575">
<name>Parlophone UK</name>
</label>
<licensor id="18">
<name>Warner</name>
</licensor>
<popularity>0.48</popularity>
<duration>642</duration>
<trackCount>3</trackCount>
<download> <!-- Optional: You should only see this element if you are requesting with download usageType -->
<releaseDate>2003-03-01T00:00:00Z</releaseDate>
<packages>
<package id="2">
<description>Standard</description>
<price>
<currencyCode>GBP</currencyCode>
<sevendigitalPrice>2.49</sevendigitalPrice>
<recommendedRetailPrice>2.49</recommendedRetailPrice>
</price>
<formats>
<format id="17">
<description>MP3 320</description>
</format>
</formats>
</package>
</packages>
</download>
<subscriptionStreaming> <!-- Optional: You should only see this element if you are requesting with subscriptionstreaming usageType -->
<releaseDate>2003-03-01T00:00:00Z</releaseDate>
</subscriptionStreaming>
<adSupportedStreaming> <!-- Optional: You should only see this element if you are requesting with adsupportedstreaming usageType -->
<releaseDate>2003-03-01T00:00:00Z</releaseDate>
</adSupportedStreaming>
<slug>no-surprises</slug>
</release>
</searchResult>
<searchResult>
<type>release</type>
<score>12.172725</score>
<release id="1047">
<title>No Surprises</title>
<version />
<type>Single</type>
<barcode>0724388514552</barcode>
<year>1997</year>
<explicitContent>false</explicitContent>
<artist id="304">
<name>Radiohead</name>
<appearsAs>Radiohead</appearsAs>
<slug>radiohead</slug>
<image>
http://artwork-cdn.7static.com/static/img/artistimages/00/000/003/0000000304_150.jpg
</image>
<isPlaceholderImage>true</isPlaceholderImage>
</artist>
<image>http://artwork-cdn.7static.com/static/img/sleeveart/00/000/010/0000001047_50.jpg</image>
<label id="227575">
<name>Parlophone UK</name>
</label>
<licensor id="18">
<name>Warner</name>
</licensor>
<popularity>0.47</popularity>
<duration>795</duration>
<trackCount>3</trackCount>
<download> <!-- Optional: You should only see this element if you are requesting with download usageType -->
<releaseDate>2003-03-01T00:00:00Z</releaseDate>
<packages>
<package id="2">
<description>Standard</description>
<price>
<currencyCode>GBP</currencyCode>
<sevendigitalPrice>2.49</sevendigitalPrice>
<recommendedRetailPrice>2.49</recommendedRetailPrice>
</price>
<formats>
<format id="17">
<description>MP3 320</description>
</format>
</formats>
</package>
</packages>
</download>
<subscriptionStreaming> <!-- Optional: You should only see this element if you are requesting with subscriptionstreaming usageType -->
<releaseDate>2003-03-01T00:00:00Z</releaseDate>
</subscriptionStreaming>
<adSupportedStreaming> <!-- Optional: You should only see this element if you are requesting with adsupportedstreaming usageType -->
<releaseDate>2003-03-01T00:00:00Z</releaseDate>
</adSupportedStreaming>
<slug>no-surprises-3</slug>
</release>
</searchResult>
</searchResults>
</response>
{
"status": "ok",
"version": "1.2",
"searchResults": {
"page": 1,
"pageSize": 2,
"totalItems": 9,
"searchResult": [
{
"type": "release",
"score": 12.588761,
"release": {
"id": 1046,
"title": "No Surprises",
"version": "",
"type": "Single",
"barcode": "0724388514453",
"year": 1997,
"explicitContent": false,
"artist": {
"isPlaceholderImage": "true",
"image": "http://artwork-cdn.7static.com/static/img/artistimages/00/000/003/0000000304_150.jpg",
"id": 304,
"name": "Radiohead",
"appearsAs": "Radiohead",
"slug": "radiohead"
},
"image": "http://artwork-cdn.7static.com/static/img/sleeveart/00/000/010/0000001046_50.jpg",
"label": {
"id": "227575",
"name": "Parlophone UK"
},
"licensor": {
"id": "18",
"name": "Warner"
},
"popularity": 0.48,
"duration": 642,
"trackCount": 3,
"download": {
"releaseDate": "2003-03-01T00:00:00Z",
"packages": [
{
"id": 2,
"description": "Standard",
"price": {
"currencyCode": "GBP",
"sevendigitalPrice": 2.49,
"recommendedRetailPrice": 2.49
},
"formats": [
{
"id": 17,
"description": "MP3 320"
}
]
}
]
},
"subscriptionStreaming": {
"releaseDate": "2003-03-01T00:00:00Z"
},
"adSupportedStreaming": {
"releaseDate": "2003-03-01T00:00:00Z"
},
"slug": "no-surprises"
}
},
{
"type": "release",
"score": 11.7706,
"release": {
"id": 1047,
"title": "No Surprises",
"version": "",
"type": "Single",
"barcode": "0724388514552",
"year": 1997,
"explicitContent": false,
"artist": {
"isPlaceholderImage": "true",
"image": "http://artwork-cdn.7static.com/static/img/artistimages/00/000/003/0000000304_150.jpg",
"id": 304,
"name": "Radiohead",
"appearsAs": "Radiohead",
"slug": "radiohead"
},
"image": "http://artwork-cdn.7static.com/static/img/sleeveart/00/000/010/0000001047_50.jpg",
"label": {
"id": "227575",
"name": "Parlophone UK"
},
"licensor": {
"id": "18",
"name": "Warner"
},
"popularity": 0.46,
"duration": 795,
"trackCount": 3,
"download": {
"releaseDate": "2003-03-01T00:00:00Z",
"packages": [
{
"id": 2,
"description": "Standard",
"price": {
"currencyCode": "GBP",
"sevendigitalPrice": 2.49,
"recommendedRetailPrice": 2.49
},
"formats": [
{
"id": 17,
"description": "MP3 320"
}
]
}
]
},
"subscriptionStreaming": {
"releaseDate": "2003-03-01T00:00:00Z"
},
"adSupportedStreaming": {
"releaseDate": "2003-03-01T00:00:00Z"
},
"slug": "no-surprises-3"
}
}
]
}
}
This method will return a list of all tracks constituting the release.
Example request: http://api.7digital.com/1.2/release/tracks?releaseid=1046&oauth_consumer_key=YOUR_KEY_HERE&country=GB&usageTypes=download,subscriptionstreaming,adsupportedstreaming
Attribute | Type | Description |
---|---|---|
releaseId required | integer | The unique ID of the release. |
usageTypes required | string | Only use the usageTypes you need, e.g. download, subscriptionstreaming or adsupportedstreaming. |
country required | string | ISO 2-character code of the country the end user resides in. |
imageSize | integer | The requested width of the image in pixels. Available image sizes are listed here. |
Method specific error codes:
2001
- Release id not licensed for this partner The copyright for the release you requested is owned by a label not currently licensed for your service.
<?xml version="1.0" encoding="UTF-8"?>
<response xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" status="ok" version="1.2" xsi:noNamespaceSchemaLocation="http://api.7digital.com/1.2/static/7digitalAPI.xsd">
<tracks>
<page>1</page>
<pageSize>3</pageSize>
<totalItems>3</totalItems>
<track id="9525">
<title>No Surprises</title>
<version />
<artist id="304">
<name>Radiohead</name>
<appearsAs>Radiohead</appearsAs>
<slug>radiohead</slug>
<image>http://artwork-cdn.7static.com/static/img/artistimages/00/000/003/0000000304_150.jpg</image>
<isPlaceholderImage>true</isPlaceholderImage>
</artist>
<trackNumber>1</trackNumber>
<duration>229</duration>
<explicitContent>false</explicitContent>
<isrc>GBAYE9700386</isrc>
<type>audio</type>
<release id="1046">
<title>No Surprises</title>
<version />
<type>Single</type>
<barcode>0724388514453</barcode>
<slug>no-surprises</slug>
<artist id="304">
<name>Radiohead</name>
<appearsAs>Radiohead</appearsAs>
<slug>radiohead</slug>
<image>http://artwork-cdn.7static.com/static/img/artistimages/00/000/003/0000000304_150.jpg</image>
<isPlaceholderImage>true</isPlaceholderImage>
</artist>
<image>http://artwork-cdn.7static.com/static/img/sleeveart/00/000/010/0000001046_50.jpg</image>
<label id="227575">
<name>Parlophone UK</name>
</label>
<licensor id="18">
<name>Warner</name>
</licensor>
</release>
<discNumber>1</discNumber>
<number>1</number>
<download> <!-- Optional: You should only see this element if you are requesting with download usageType -->
<releaseDate>2003-03-01T00:00:00Z</releaseDate>
<previewDate>2003-03-01T00:00:00Z</previewDate>
<packages>
<package id="2">
<description>Standard</description>
<price>
<currencyCode>GBP</currencyCode>
<sevendigitalPrice>0.99</sevendigitalPrice>
<recommendedRetailPrice>0.99</recommendedRetailPrice>
</price>
<formats>
<format id="17">
<description>MP3 320</description>
</format>
</formats>
</package>
</packages>
</download>
<subscriptionStreaming> <!-- Optional: You should only see this element if you are requesting with subscriptionstreaming usageType -->
<releaseDate>2003-03-01T00:00:00Z</releaseDate>
</subscriptionStreaming>
<adSupportedStreaming> <!-- Optional: You should only see this element if you are requesting with adsupportedstreaming usageType -->
<releaseDate>2003-03-01T00:00:00Z</releaseDate>
</adSupportedStreaming>
</track>
<track id="9526">
<title>Palo Alto</title>
<version />
<artist id="304">
<name>Radiohead</name>
<appearsAs>Radiohead</appearsAs>
<slug>radiohead</slug>
<image>http://artwork-cdn.7static.com/static/img/artistimages/00/000/003/0000000304_150.jpg</image>
<isPlaceholderImage>true</isPlaceholderImage>
</artist>
<trackNumber>2</trackNumber>
<duration>224</duration>
<explicitContent>false</explicitContent>
<isrc>GBAYE9800042</isrc>
<type>audio</type>
<release id="1046">
<title>No Surprises</title>
<version />
<type>Single</type>
<barcode>0724388514453</barcode>
<slug>no-surprises</slug>
<artist id="304">
<name>Radiohead</name>
<appearsAs>Radiohead</appearsAs>
<slug>radiohead</slug>
<image>http://artwork-cdn.7static.com/static/img/artistimages/00/000/003/0000000304_150.jpg</image>
<isPlaceholderImage>true</isPlaceholderImage>
</artist>
<image>http://artwork-cdn.7static.com/static/img/sleeveart/00/000/010/0000001046_50.jpg</image>
<label id="227575">
<name>Parlophone UK</name>
</label>
<licensor id="18">
<name>Warner</name>
</licensor>
</release>
<discNumber>1</discNumber>
<number>2</number>
<download> <!-- Optional: You should only see this element if you are requesting with download usageType -->
<releaseDate>2003-03-01T00:00:00Z</releaseDate>
<previewDate>2003-03-01T00:00:00Z</previewDate>
<packages>
<package id="2">
<description>Standard</description>
<price>
<currencyCode>GBP</currencyCode>
<sevendigitalPrice>0.99</sevendigitalPrice>
<recommendedRetailPrice>0.99</recommendedRetailPrice>
</price>
<formats>
<format id="17">
<description>MP3 320</description>
</format>
</formats>
</package>
</packages>
</download>
<subscriptionStreaming> <!-- Optional: You should only see this element if you are requesting with subscriptionstreaming usageType -->
<releaseDate>2003-03-01T00:00:00Z</releaseDate>
</subscriptionStreaming>
<adSupportedStreaming> <!-- Optional: You should only see this element if you are requesting with adsupportedstreaming usageType -->
<releaseDate>2003-03-01T00:00:00Z</releaseDate>
</adSupportedStreaming>
</track>
...
</tracks>
</response>
{
"page": 1,
"pageSize": 3,
"totalItems": 3,
"tracks": [
{
"id": 9525,
"title": "No Surprises",
"version": "",
"artist": {
"id": 304,
"name": "Radiohead",
"appearsAs": "Radiohead",
"slug": "radiohead",
"image": "http://artwork-cdn.7static.com/static/img/artistimages/00/000/003/0000000304_150.jpg",
"isPlaceholderImage": true
},
"trackNumber": 1,
"duration": 229,
"explicitContent": false,
"isrc": "GBAYE9700386",
"type": "audio",
"release": {
"id": 1046,
"title": "No Surprises",
"version": "",
"type": "Single",
"barcode": "0724388514453",
"slug": "no-surprises",
"artist": {
"id": 304,
"name": "Radiohead",
"appearsAs": "Radiohead",
"slug": "radiohead",
"image": "http://artwork-cdn.7static.com/static/img/artistimages/00/000/003/0000000304_150.jpg",
"isPlaceholderImage": true
},
"image": "http://artwork-cdn.7static.com/static/img/sleeveart/00/000/010/0000001046_50.jpg",
"label": {
"id": 227575,
"name": "Parlophone UK"
},
"licensor": {
"id": 18,
"name": "Warner"
}
},
"discNumber": 1,
"number": 1,
"download": {
"releaseDate": "2003-03-01T00:00:00Z",
"previewDate": "2003-03-01T00:00:00Z",
"packages": [
{
"id": 2,
"description": "Standard",
"price": {
"currencyCode": "GBP",
"sevendigitalPrice": null,
"recommendedRetailPrice": "0.99"
},
"formats": [
{
"id": 17,
"description": "MP3 320"
}
]
}
]
},
"subscriptionStreaming": {
"releaseDate": "2003-03-01T00:00:00Z"
},
"adSupportedStreaming": {
"releaseDate": "2003-03-01T00:00:00Z"
}
},
{
"id": 9526,
"title": "Palo Alto",
"version": "",
"artist": {
"id": 304,
"name": "Radiohead",
"appearsAs": "Radiohead",
"slug": "radiohead",
"image": "http://artwork-cdn.7static.com/static/img/artistimages/00/000/003/0000000304_150.jpg",
"isPlaceholderImage": true
},
"trackNumber": 2,
"duration": 224,
"explicitContent": false,
"isrc": "GBAYE9800042",
"type": "audio",
"release": {
"id": 1046,
"title": "No Surprises",
"version": "",
"type": "Single",
"barcode": "0724388514453",
"slug": "no-surprises",
"artist": {
"id": 304,
"name": "Radiohead",
"appearsAs": "Radiohead",
"slug": "radiohead",
"image": "http://artwork-cdn.7static.com/static/img/artistimages/00/000/003/0000000304_150.jpg",
"isPlaceholderImage": true
},
"image": "http://artwork-cdn.7static.com/static/img/sleeveart/00/000/010/0000001046_50.jpg",
"label": {
"id": 227575,
"name": "Parlophone UK"
},
"licensor": {
"id": 18,
"name": "Warner"
}
},
"discNumber": 1,
"number": 2,
"download": {
"releaseDate": "2003-03-01T00:00:00Z",
"previewDate": "2003-03-01T00:00:00Z",
"packages": [
{
"id": 2,
"description": "Standard",
"price": {
"currencyCode": "GBP",
"sevendigitalPrice": null,
"recommendedRetailPrice": "0.99"
},
"formats": [
{
"id": 17,
"description": "MP3 320"
}
]
}
]
},
"subscriptionStreaming": {
"releaseDate": "2003-03-01T00:00:00Z"
},
"adSupportedStreaming": {
"releaseDate": "2003-03-01T00:00:00Z"
}
},
...
]
}
This endpoint returns a territory-specific rolling weekly chart, based on the most purchased tracks over the past 7 days.
Example request: http://api.7digital.com/1.2/track/chart?oauth_consumer_key=YOUR_KEY_HERE&country=GB&pagesize=2&usageTypes=download,subscriptionstreaming,adsupportedstreaming
Attribute | Type | Description |
---|---|---|
usageTypes required | string | Only use the usageTypes you need, e.g. download, subscriptionstreaming or adsupportedstreaming. |
country required | string | ISO 2-character code of the country the end user resides in. |
page | integer | Page number of the result set. If not supplied, defaults to 1. |
pageSize | integer | Number of items to be returned per page. If not supplied this defaults to 10. Maximum page size is 50. |
imageSize | integer | The requested width of the image in pixels. Available image sizes are listed here. |
Method specific error codes:
1003
- Requested page out of range You specified a page number which does not exist.
<?xml version="1.0" encoding="UTF-8"?>
<response xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" status="ok" version="1.2" xsi:noNamespaceSchemaLocation="http://api.7digital.com/1.2/static/7digitalAPI.xsd">
<chart>
<page>1</page>
<pageSize>2</pageSize>
<totalItems>93</totalItems>
<type>track</type>
<fromDate>2014-09-25T00:00:00+01:00</fromDate>
<toDate>2014-10-01T00:00:00+01:00</toDate>
<chartItem>
<position>1</position>
<change>New</change>
<track id="38656894">
<title>Changing</title>
<version />
<artist id="334462">
<name>Sigma</name>
<appearsAs>Sigma</appearsAs>
<image>http://artwork-cdn.7static.com/static/img/artistimages/00/003/344/0000334462_150.jpg</image>
<slug>sigma</slug>
</artist>
<trackNumber>1</trackNumber>
<duration>191</duration>
<explicitContent>false</explicitContent>
<isrc>GBSXS1400130</isrc>
<type>audio</type>
<release id="3698566">
<title>Changing</title>
<version />
<type>Single</type>
<barcode>05037128211457</barcode>
<artist id="334462">
<name>Sigma</name>
<appearsAs>Sigma</appearsAs>
<image>http://artwork-cdn.7static.com/static/img/artistimages/00/003/344/0000334462_150.jpg</image>
<slug>sigma</slug>
</artist>
<image>http://artwork-cdn.7static.com/static/img/sleeveart/00/036/985/0003698566_50.jpg</image>
<label id="487178">
<name>(P) 2014 All Around The World Limited</name>
</label>
<licensor id="1">
<name>Universal</name>
</licensor>
<slug>changing</slug>
</release>
<discNumber>1</discNumber>
<number>1</number>
<download> <!-- Optional: You should only see this element if you are requesting with download usageType -->
<releaseDate>2015-09-11T23:00:00Z</releaseDate>
<previewDate>2015-09-11T00:00:00Z</previewDate>
<packages>
<package id="2">
<description>Standard</description>
<price>
<currencyCode>GBP</currencyCode>
<sevendigitalPrice xsi:nil="true" />
<recommendedRetailPrice>0.99</recommendedRetailPrice>
</price>
<formats>
<format id="17">
<description>MP3 320</description>
</format>
</formats>
</package>
</packages>
</download>
<subscriptionStreaming> <!-- Optional: You should only see this element if you are requesting with subscriptionstreaming usageType -->
<releaseDate>2015-09-11T23:00:00Z</releaseDate>
</subscriptionStreaming>
</track>
</chartItem>
<chartItem>
<position>2</position>
<change>New</change>
<track id="39109566">
<title>Blame</title>
<version />
<artist id="49225">
<name>Calvin Harris</name>
<appearsAs>Calvin Harris</appearsAs>
<image>http://artwork-cdn.7static.com/static/img/artistimages/00/000/492/0000049225_150.jpg</image>
<slug>calvin-harris</slug>
</artist>
<trackNumber>1</trackNumber>
<duration>211</duration>
<explicitContent>false</explicitContent>
<isrc>GBARL1400567</isrc>
<type>audio</type>
<release id="3751479">
<title>Blame</title>
<version />
<type>Single</type>
<barcode>886444665278</barcode>
<artist id="2395637">
<name>Calvin Harris feat. John Newman</name>
<appearsAs>Calvin Harris feat. John Newman</appearsAs>
<image>http://artwork-cdn.7static.com/static/img/artistimages/00/023/956/0002395637_150.jpg</image>
<slug>calvin-harris-feat-john-newman</slug>
</artist>
<image>http://artwork-cdn.7static.com/static/img/sleeveart/00/037/514/0003751479_50.jpg</image>
<label id="592">
<name>Columbia</name>
</label>
<licensor id="2">
<name>Sony Music</name>
</licensor>
<slug>blame</slug>
</release>
<discNumber>1</discNumber>
<number>1</number>
<download> <!-- Optional: You should only see this element if you are requesting with download usageType -->
<releaseDate>2014-09-06T23:00:00Z</releaseDate>
<previewDate>2014-09-06T00:00:00Z</previewDate>
<packages>
<package id="2">
<description>Standard</description>
<price>
<currencyCode>GBP</currencyCode>
<sevendigitalPrice xsi:nil="true" />
<recommendedRetailPrice>0.99</recommendedRetailPrice>
</price>
<formats>
<format id="17">
<description>MP3 320</description>
</format>
<format id="33">
<description>AAC 320</description>
</format>
</formats>
</package>
</packages>
</download>
<subscriptionStreaming> <!-- Optional: You should only see this element if you are requesting with subscriptionstreaming usageType -->
<releaseDate>2014-09-06T23:00:00Z</releaseDate>
</subscriptionStreaming>
</track>
</chartItem>
</chart>
</response>
{
"status": "ok",
"version": "1.2",
"chart": {
"page": 1,
"pageSize": 2,
"totalItems": 93,
"type": "track",
"fromDate": "2014-09-25T00:00:00+01:00",
"toDate": "2014-10-01T00:00:00+01:00",
"chartItem": [
{
"position": 1,
"change": "New",
"track": {
"id": 38656894,
"title": "Changing",
"version": "",
"artist": {
"id": 334462,
"name": "Sigma",
"appearsAs": "Sigma",
"image": "http://artwork-cdn.7static.com/static/img/artistimages/00/003/344/0000334462_150.jpg"
},
"trackNumber": 1,
"duration": 191,
"explicitContent": false,
"isrc": "GBSXS1400130",
"type": "audio",
"release": {
"id": 3698566,
"title": "Changing",
"version": "",
"type": "Single",
"barcode": "05037128211457",
"artist": {
"id": 334462,
"name": "Sigma",
"appearsAs": "Sigma",
"image": "http://artwork-cdn.7static.com/static/img/artistimages/00/003/344/0000334462_150.jpg"
},
"image": "http://artwork-cdn.7static.com/static/img/sleeveart/00/036/985/0003698566_50.jpg",
"label": {
"id": "487178",
"name": "(P) 2014 All Around The World Limited"
},
"licensor": {
"id": "1",
"name": "Universal"
},
"slug": "changing"
},
"discNumber": 1,
"number": 1,
"download": {
"releaseDate": "2015-09-11T23:00:00Z",
"previewDate": "2015-09-11T00:00:00Z",
"packages": [
{
"id": 2,
"description": "Standard",
"price": {
"currencyCode": "GBP",
"sevendigitalPrice": 0.99,
"recommendedRetailPrice": 0.99
},
"formats": [
{
"id": 17,
"description": "MP3 320"
}
]
}
]
},
"subscriptionStreaming": {
"releaseDate": "2015-09-11T23:00:00Z"
}
}
},
{
"position": 2,
"change": "New",
"track": {
"id": 39109566,
"title": "Blame",
"version": "",
"artist": {
"id": 49225,
"name": "Calvin Harris",
"appearsAs": "Calvin Harris",
"image": "http://artwork-cdn.7static.com/static/img/artistimages/00/000/492/0000049225_150.jpg"
},
"trackNumber": 1,
"duration": 211,
"explicitContent": false,
"isrc": "GBARL1400567",
"type": "audio",
"release": {
"id": 3751479,
"title": "Blame",
"version": "",
"type": "Single",
"barcode": "886444665278",
"artist": {
"id": 2395637,
"name": "Calvin Harris feat. John Newman",
"appearsAs": "Calvin Harris feat. John Newman",
"image": "http://artwork-cdn.7static.com/static/img/artistimages/00/023/956/0002395637_150.jpg"
},
"image": "http://artwork-cdn.7static.com/static/img/sleeveart/00/037/514/0003751479_50.jpg",
"label": {
"id": "592",
"name": "Columbia"
},
"licensor": {
"id": "2",
"name": "Sony Music"
},
"slug": "blame"
},
"discNumber": 1,
"number": 1,
"download": {
"releaseDate": "2014-09-06T23:00:00Z",
"previewDate": "2014-09-06T00:00:00Z",
"packages": [
{
"id": 2,
"description": "Standard",
"price": {
"currencyCode": "GBP",
"sevendigitalPrice": 0.99,
"recommendedRetailPrice": 0.99
},
"formats": [
{
"id": 17,
"description": "MP3 320"
},
{
"id": 33,
"description": "AAC 320"
}
]
}
]
},
"subscriptionStreaming": {
"releaseDate": "2014-09-06T23:00:00Z"
}
}
}
]
}
}
This method returns various track details such as title, duration and price.
Example request: http://api.7digital.com/1.2/track/details?trackid=123456&oauth_consumer_key=YOUR_KEY_HERE&country=GB&usageTypes=download,subscriptionstreaming,adsupportedstreaming
Attribute | Type | Description |
---|---|---|
trackId required | integer | The unique identifier of the track. |
usageTypes required | string | Only use the usageTypes you need, e.g. download, subscriptionstreaming or adsupportedstreaming. |
country required | string | ISO 2-character code of the country the end user resides in. |
imageSize | integer | The requested width of the image in pixels. Available image sizes are listed here. |
Method specific error codes:
2001
- Track id not licensed for this partner The copyright for the track you requested is owned by a label not currently licensed for your service.
<?xml version="1.0" encoding="UTF-8"?>
<response xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" status="ok" version="1.2" xsi:noNamespaceSchemaLocation="http://api.7digital.com/1.2/static/7digitalAPI.xsd">
<track id="123456">
<title>Sleeping In My Car (Single Version)</title>
<version />
<artist id="7018">
<name>Roxette</name>
<appearsAs>Roxette</appearsAs>
<slug>roxette</slug>
<image>http://artwork-cdn.7static.com/static/img/artistimages/00/000/070/0000007018_150.jpg</image>
<isPlaceholderImage>true</isPlaceholderImage>
</artist>
<trackNumber>9</trackNumber>
<duration>214</duration>
<explicitContent>false</explicitContent>
<isrc>SEAMA9301032</isrc>
<pline>1994 Parlophone Records Sweden AB, a Warner Music Group Company</pline>
<type>audio</type>
<release id="12134">
<title>The Pop Hits</title>
<version />
<type>Album</type>
<barcode>0724358215557</barcode>
<slug>the-pop-hits-3</slug>
<artist id="7018">
<name>Roxette</name>
<appearsAs>Roxette</appearsAs>
<slug>roxette</slug>
<image>http://artwork-cdn.7static.com/static/img/artistimages/00/000/070/0000007018_150.jpg</image>
<isPlaceholderImage>true</isPlaceholderImage>
</artist>
<image>http://artwork-cdn.7static.com/static/img/sleeveart/00/000/121/0000012134_50.jpg</image>
<label id="226994">
<name>Parlophone Sweden</name>
</label>
<licensor id="18">
<name>Warner</name>
</licensor>
</release>
<discNumber>1</discNumber>
<number>9</number>
<download> <!-- Optional: You should only see this element if you are requesting with download usageType -->
<releaseDate>2003-05-31T23:00:00Z</releaseDate>
<previewDate>2003-05-31T00:00:00Z</previewDate>
<packages>
<package id="2">
<description>Standard</description>
<price>
<currencyCode>GBP</currencyCode>
<sevendigitalPrice>8.49</sevendigitalPrice>
<recommendedRetailPrice>8.49</recommendedRetailPrice>
</price>
<formats>
<format id="17">
<description>MP3 320</description>
</format>
</formats>
</package>
</packages>
</download>
<subscriptionStreaming> <!-- Optional: You should only see this element if you are requesting with subscriptionstreaming usageType -->
<releaseDate>2003-05-31T23:00:00Z</releaseDate>
</subscriptionStreaming>
<adSupportedStreaming> <!-- Optional: You should only see this element if you are requesting with adsupportedstreaming usageType -->
<releaseDate>2003-05-31T23:00:00Z</releaseDate>
</adSupportedStreaming>
</track>
</response>
{
"track": {
"id": 123456,
"title": "Sleeping In My Car (Single Version)",
"version": "",
"artist": {
"id": 7018,
"name": "Roxette",
"appearsAs": "Roxette",
"slug": "roxette",
"image": "http://artwork-cdn.7static.com/static/img/artistimages/00/000/070/0000007018_150.jpg",
"isPlaceholderImage": true
},
"trackNumber": 9,
"duration": 214,
"explicitContent": false,
"isrc": "SEAMA9301032",
"type": "audio",
"release": {
"id": 12134,
"title": "The Pop Hits",
"version": "",
"type": "Album",
"barcode": "0724358215557",
"slug": "the-pop-hits-3",
"artist": {
"id": 7018,
"name": "Roxette",
"appearsAs": "Roxette",
"slug": "roxette",
"image": "http://artwork-cdn.7static.com/static/img/artistimages/00/000/070/0000007018_150.jpg",
"isPlaceholderImage": true
},
"image": "http://artwork-cdn.7static.com/static/img/sleeveart/00/000/121/0000012134_50.jpg",
"label": {
"id": 226994,
"name": "Parlophone Sweden"
},
"licensor": {
"id": 18,
"name": "Warner"
}
},
"discNumber": 1,
"number": 9,
"download": {
"releaseDate": "2003-05-31T23:00:00Z",
"previewDate": "2003-05-31T00:00:00Z",
"packages": [
{
"id": 2,
"description": "Standard",
"price": {
"currencyCode": "GBP",
"sevendigitalPrice": null,
"recommendedRetailPrice": "0.99"
},
"formats": [
{
"id": 17,
"description": "MP3 320"
}
]
}
]
},
"subscriptionStreaming": {
"releaseDate": "2003-05-31T23:00:00Z"
},
"adSupportedStreaming": {
"releaseDate": "2003-05-31T23:00:00Z"
}
}
}
Return details of multiple tracks in one request. In the request, tracks are identified by track id. There will be one track in the response for every corresponding valid id in the request, and the tracks will be in the same order as the requested ids. Tracks that are not valid for any reason are omitted from the tracks list in the response. They will be included in the errors list, in order, if showErrors is set true.
Example request: https://api.7digital.com/1.2/track/details/batch?trackids=2146,1347&showerrors=true&oauth_consumer_key=YOUR_KEY_HERE&country=GB&usageTypes=download,subscriptionstreaming,adsupportedstreaming
Attribute | Type | Description |
---|---|---|
trackIds required | string | Contains a comma-separated list of track ids. Maximum of 500 items. |
usageTypes required | string | Only use the usageTypes you need, e.g. download, subscriptionstreaming or adsupportedstreaming. |
packageIds | string | Contains a comma-separated list of package ids. When specified, only tracks that have one of the specified packages will be returned. Used to filter searches to tracks that have at least one high quality format. Package ids are listed here. This parameter only takes effect when using 'usageTypes=download', and is otherwise ignored. |
country required | string | ISO 2-character code of the country the end user resides in. |
showErrors | boolean | When set true, the errors element is shown in the output, containing a list of errors. There will be one error for each track that could not be shown in the tracks list. The itemId on the error shows which track it relates to. The code and message relates to the reason why the track could not be shown. |
imageSize | number | The requested width of the image in pixels. Available image sizes are listed here. |
Method specific error codes:
1001
- Required parameter trackIds is missing You must supply a value for the trackIds parameter.
1002
- Invalid value for parameter trackIds You must supply a comma-separated list of track ids.
<?xml version="1.0" encoding="UTF-8"?>
<response xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" status="ok" version="1.2" xsi:noNamespaceSchemaLocation="http://api.7digital.com/1.2/static/7digitalAPI.xsd">
<items>
<tracks>
<track id="2146">
<title>Chicken Shake</title>
<version />
<artist id="55">
<name>Stereo MC's</name>
<appearsAs>Stereo MC's</appearsAs>
<slug>stereo-mcs-(2)</slug>
<image>http://artwork-cdn.7static.com/static/img/artistimages/00/000/000/0000000055_150.jpg</image>
<isPlaceholderImage>true</isPlaceholderImage>
</artist>
<trackNumber>10</trackNumber>
<duration>230</duration>
<explicitContent>false</explicitContent>
<isrc>GBAAN9290032</isrc>
<type>audio</type>
<release id="206">
<title>Connected</title>
<version />
<type>Album</type>
<barcode>00731451274329</barcode>
<slug>connected</slug>
<artist id="55">
<name>Stereo MC's</name>
<appearsAs>Stereo MC's</appearsAs>
<slug>stereo-mcs-(2)</slug>
<image>http://artwork-cdn.7static.com/static/img/artistimages/00/000/000/0000000055_150.jpg</image>
<isPlaceholderImage>true</isPlaceholderImage>
</artist>
<image>http://artwork-cdn.7static.com/static/img/sleeveart/00/000/002/0000000206_50.jpg</image>
<label id="466278">
<name>(P) 1992 Island Records, a division of Universal Music Operations Limited</name>
</label>
<licensor id="1">
<name>Universal</name>
</licensor>
</release>
<discNumber>1</discNumber>
<number>10</number>
<download> <!-- Optional: You should only see this element if you are requesting with download usageType -->
<releaseDate>2015-11-15T00:00:00Z</releaseDate>
<previewDate>2015-11-15T00:00:00Z</previewDate>
<packages>
<package id="2">
<description>Standard</description>
<price>
<currencyCode>GBP</currencyCode>
<sevendigitalPrice>5.49</sevendigitalPrice>
<recommendedRetailPrice>5.49</recommendedRetailPrice>
</price>
<formats>
<format id="17">
<description>MP3 320</description>
</format>
<format id="33">
<description>AAC 320</description>
</format>
</formats>
</package>
<package id="9">
<description>Premium</description>
<price>
<currencyCode>GBP</currencyCode>
<sevendigitalPrice>8.49</sevendigitalPrice>
<recommendedRetailPrice>8.49</recommendedRetailPrice>
</price>
<formats>
<format id="45">
<description>FLAC 16-bit 44.1kHz</description>
</format>
</formats>
</package>
</packages>
</download>
<subscriptionStreaming> <!-- Optional: You should only see this element if you are requesting with subscriptionstreaming usageType -->
<releaseDate>2015-11-15T00:00:00Z</releaseDate>
</subscriptionStreaming>
<adSupportedStreaming> <!-- Optional: You should only see this element if you are requesting with adsupportedstreaming usageType -->
<releaseDate>2015-11-15T00:00:00Z</releaseDate>
</adSupportedStreaming>
</track>
<track id="1347">
<title>Give Me A Little More Time</title>
<version />
<artist id="96">
<name>Gabrielle</name>
<appearsAs>Gabrielle</appearsAs>
<slug>gabrielle</slug>
<image>http://artwork-cdn.7static.com/static/img/artistimages/00/000/000/0000000096_150.jpg</image>
<isPlaceholderImage>true</isPlaceholderImage>
</artist>
<trackNumber>5</trackNumber>
<duration>295</duration>
<explicitContent>false</explicitContent>
<isrc>GBAQT9600013</isrc>
<type>audio</type>
<release id="96">
<title>Gabrielle</title>
<version />
<type>Album</type>
<barcode>00042282885821</barcode>
<slug>gabrielle-2</slug>
<artist id="96">
<name>Gabrielle</name>
<appearsAs>Gabrielle</appearsAs>
<slug>gabrielle</slug>
<image>http://artwork-cdn.7static.com/static/img/artistimages/00/000/000/0000000096_150.jpg</image>
<isPlaceholderImage>true</isPlaceholderImage>
</artist>
<image>http://artwork-cdn.7static.com/static/img/sleeveart/00/000/000/0000000096_50.jpg</image>
<label id="474673">
<name>(P) 1996 Go! Discs Ltd.</name>
</label>
<licensor id="1">
<name>Universal</name>
</licensor>
</release>
<discNumber>1</discNumber>
<number>5</number>
<download> <!-- Optional: You should only see this element if you are requesting with download usageType -->
<releaseDate>2015-11-14T00:00:00Z</releaseDate>
<previewDate>2015-11-14T00:00:00Z</previewDate>
<packages>
<package id="2">
<description>Standard</description>
<price>
<currencyCode>GBP</currencyCode>
<sevendigitalPrice>5.49</sevendigitalPrice>
<recommendedRetailPrice>5.49</recommendedRetailPrice>
</price>
<formats>
<format id="17">
<description>MP3 320</description>
</format>
<format id="33">
<description>AAC 320</description>
</format>
</formats>
</package>
<package id="9">
<description>Premium</description>
<price>
<currencyCode>GBP</currencyCode>
<sevendigitalPrice>8.49</sevendigitalPrice>
<recommendedRetailPrice>8.49</recommendedRetailPrice>
</price>
<formats>
<format id="45">
<description>FLAC 16-bit 44.1kHz</description>
</format>
</formats>
</package>
</packages>
</download>
<subscriptionStreaming> <!-- Optional: You should only see this element if you are requesting with subscriptionstreaming usageType -->
<releaseDate>2015-11-14T00:00:00Z</releaseDate>
</subscriptionStreaming>
<adSupportedStreaming> <!-- Optional: You should only see this element if you are requesting with adsupportedstreaming usageType -->
<releaseDate>2015-11-14T00:00:00Z</releaseDate>
</adSupportedStreaming>
</track>
</tracks>
<errors />
</items>
</response>
{
"items": {
"tracks": [
{
"id": 2146,
"title": "Chicken Shake",
"version": "",
"artist": {
"id": 55,
"name": "Stereo MC's",
"appearsAs": "Stereo MC's",
"slug": "stereo-mcs-(2)",
"image": "http://artwork-cdn.7static.com/static/img/artistimages/00/000/000/0000000055_150.jpg",
"isPlaceholderImage": true
},
"trackNumber": 10,
"duration": 230,
"explicitContent": false,
"isrc": "GBAAN9290032",
"type": "audio",
"release": {
"id": 206,
"title": "Connected",
"version": "",
"type": "Album",
"barcode": "00731451274329",
"slug": "connected",
"artist": {
"id": 55,
"name": "Stereo MC's",
"appearsAs": "Stereo MC's",
"slug": "stereo-mcs-(2)",
"image": "http://artwork-cdn.7static.com/static/img/artistimages/00/000/000/0000000055_150.jpg",
"isPlaceholderImage": true
},
"image": "http://artwork-cdn.7static.com/static/img/sleeveart/00/000/002/0000000206_50.jpg",
"label": {
"id": 466278,
"name": "(P) 1992 Island Records, a division of Universal Music Operations Limited"
},
"licensor": {
"id": 1,
"name": "Universal"
}
},
"discNumber": 1,
"number": 10,
"download": {
"releaseDate": "2015-11-15T00:00:00Z",
"previewDate": "2015-11-15T00:00:00Z",
"packages": [
{
"id": 2,
"description": "Standard",
"price": {
"currencyCode": "GBP",
"sevendigitalPrice": null,
"recommendedRetailPrice": "0.99"
},
"formats": [
{
"id": 17,
"description": "MP3 320"
},
{
"id": 33,
"description": "AAC 320"
}
]
},
{
"id": 9,
"description": "Premium",
"price": {
"currencyCode": "GBP",
"sevendigitalPrice": null,
"recommendedRetailPrice": "1.69"
},
"formats": [
{
"id": 45,
"description": "FLAC 16-bit 44.1kHz"
}
]
}
]
},
"subscriptionStreaming": {
"releaseDate": "2015-11-15T00:00:00Z"
},
"adSupportedStreaming": {
"releaseDate": "2015-11-15T00:00:00Z"
}
},
{
"id": 1347,
"title": "Give Me A Little More Time",
"version": "",
"artist": {
"id": 96,
"name": "Gabrielle",
"appearsAs": "Gabrielle",
"slug": "gabrielle",
"image": "http://artwork-cdn.7static.com/static/img/artistimages/00/000/000/0000000096_150.jpg",
"isPlaceholderImage": true
},
"trackNumber": 5,
"duration": 295,
"explicitContent": false,
"isrc": "GBAQT9600013",
"type": "audio",
"release": {
"id": 96,
"title": "Gabrielle",
"version": "",
"type": "Album",
"barcode": "00042282885821",
"slug": "gabrielle-2",
"artist": {
"id": 96,
"name": "Gabrielle",
"appearsAs": "Gabrielle",
"slug": "gabrielle",
"image": "http://artwork-cdn.7static.com/static/img/artistimages/00/000/000/0000000096_150.jpg",
"isPlaceholderImage": true
},
"image": "http://artwork-cdn.7static.com/static/img/sleeveart/00/000/000/0000000096_50.jpg",
"label": {
"id": 474673,
"name": "(P) 1996 Go! Discs Ltd."
},
"licensor": {
"id": 1,
"name": "Universal"
}
},
"discNumber": 1,
"number": 5,
"download": {
"releaseDate": "2015-11-14T00:00:00Z",
"previewDate": "2015-11-14T00:00:00Z",
"packages": [
{
"id": 2,
"description": "Standard",
"price": {
"currencyCode": "GBP",
"sevendigitalPrice": null,
"recommendedRetailPrice": "0.99"
},
"formats": [
{
"id": 17,
"description": "MP3 320"
},
{
"id": 33,
"description": "AAC 320"
}
]
},
{
"id": 9,
"description": "Premium",
"price": {
"currencyCode": "GBP",
"sevendigitalPrice": null,
"recommendedRetailPrice": "1.69"
},
"formats": [
{
"id": 45,
"description": "FLAC 16-bit 44.1kHz"
}
]
}
]
},
"subscriptionStreaming": {
"releaseDate": "2015-11-14T00:00:00Z"
},
"adSupportedStreaming": {
"releaseDate": "2015-11-14T00:00:00Z"
}
}
],
"errors": []
}
}
This method will search for a track that matches the supplied search query. The following fields will be searched on: track title, artist name, release title and track ISRC.
Example request: http://api.7digital.com/1.2/track/search?q=Happy&oauth_consumer_key=YOUR_KEY_HERE&country=GB&pagesize=2&usageTypes=download,subscriptionstreaming,adsupportedstreaming
Attribute | Type | Description |
---|---|---|
q required | string | The search query string. |
usageTypes required | string | Only use the usageTypes you need, e.g. download, subscriptionstreaming or adsupportedstreaming. |
packageIds | integer | A single or comma-separated list of integers. If specified, results are filtered to tracks that have at least one of the specified package ids. Package ids are listed here. This parameter only takes effect when using 'usageTypes=download', and is otherwise ignored. |
country required | string | ISO 2-character code of the country the end user resides in. |
page | integer | Page number of the result set. If not supplied, defaults to 1. |
pageSize | integer | Number of items to be returned per page. If not supplied this defaults to 10. Maximum page size is 50. |
imageSize | integer | The requested width of the image in pixels. Available image sizes are listed here. |
explicit | boolean | If provided search results will contain only tracks that do/don't contain explicit content. |
Method specific error codes:
1001
- Required parameter q is missing You must supply a value for the q parameter.
1002
- Invalid value in package ids You must supply only a single integer, or a comma-delimited list of integers for the packageIds parameter. Package ids are listed here.
1003
- Requested page out of range You specified a page number which does not exist.
<?xml version="1.0" encoding="UTF-8"?>
<response xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" status="ok" version="1.2" xsi:noNamespaceSchemaLocation="http://api.7digital.com/1.2/static/7digitalAPI.xsd">
<searchResults>
<page>1</page>
<pageSize>2</pageSize>
<totalItems>1000</totalItems>
<searchResult>
<type>track</type>
<score>2.2942443</score>
<track id="33576075">
<title>Happy (From "Despicable Me 2")</title>
<version />
<artist id="1389406">
<name>Pharrell Williams</name>
<appearsAs>Pharrell Williams</appearsAs>
<slug>pharrell-williams</slug>
<image>
http://artwork-cdn.7static.com/static/img/artistimages/00/013/894/0001389406_150.jpg
</image>
<isPlaceholderImage>true</isPlaceholderImage>
</artist>
<trackNumber>1</trackNumber>
<duration>233</duration>
<explicitContent>false</explicitContent>
<isrc>USQ4E1300686</isrc>
<type>audio</type>
<release id="3157769">
<title>Happy</title>
<version />
<type>Single</type>
<artist id="1389406">
<name>Pharrell Williams</name>
<appearsAs>Pharrell Williams</appearsAs>
<slug>pharrell-williams</slug>
<image>
http://artwork-cdn.7static.com/static/img/artistimages/00/013/894/0001389406_150.jpg
</image>
<isPlaceholderImage>true</isPlaceholderImage>
</artist>
<image>http://artwork-cdn.7static.com/static/img/sleeveart/00/031/577/0003157769_50.jpg</image>
<label id="24002">
<name>Sony Music Entertainment</name>
</label>
<licensor id="2">
<name>Sony Music</name>
</licensor>
<popularity>0</popularity>
<slug>happy-grus-theme-from-despicable-me-2</slug>
</release>
<discNumber>1</discNumber>
<popularity>0.68</popularity>
<number>1</number>
<download> <!-- Optional: You should only see this element if you are requesting with download usageType -->
<releaseDate>2013-12-17T00:00:00Z</releaseDate>
<previewDate>2013-12-17T00:00:00Z</previewDate>
<packages>
<package id="2">
<description>Standard</description>
<price>
<currencyCode>GBP</currencyCode>
<sevendigitalPrice>0.99</sevendigitalPrice>
<recommendedRetailPrice>0.99</recommendedRetailPrice>
</price>
<formats>
<format id="17">
<description>MP3 320</description>
</format>
<format id="33">
<description>AAC 320</description>
</format>
</formats>
</package>
</packages>
</download>
<subscriptionStreaming> <!-- Optional: You should only see this element if you are requesting with subscriptionstreaming usageType -->
<releaseDate>2013-12-17T00:00:00Z</releaseDate>
</subscriptionStreaming>
<adSupportedStreaming> <!-- Optional: You should only see this element if you are requesting with adsupportedstreaming usageType -->
<releaseDate>2013-12-17T00:00:00Z</releaseDate>
</adSupportedStreaming>
</track>
</searchResult>
<searchResult>
<type>track</type>
<score>2.0211854</score>
<track id="23383867">
<title>Happy Hour</title>
<version />
<artist id="1518064">
<name>SoundSense</name>
<appearsAs>SoundSense</appearsAs>
<slug>soundsense</slug>
<image>
http://artwork-cdn.7static.com/static/img/artistimages/00/013/894/0001518064_150.jpg
</image>
<isPlaceholderImage>true</isPlaceholderImage>
</artist>
<trackNumber>10</trackNumber>
<duration>139</duration>
<explicitContent>false</explicitContent>
<isrc>FR6V81605038</isrc>
<type>audio</type>
<release id="2170865">
<title>100% 80's - 100 Classic Hits</title>
<version />
<type>Album</type>
<artist id="1518064">
<name>SoundSense</name>
<appearsAs>SoundSense</appearsAs>
<slug>soundsense</slug>
</artist>
<image>http://artwork-cdn.7static.com/static/img/sleeveart/00/021/708/0002170865_50.jpg</image>
<label id="81377">
<name>BPM Digital Ltd</name>
</label>
<licensor id="166">
<name>Believe</name>
</licensor>
<popularity>0</popularity>
<slug>100-80s-100-classic-hits</slug>
</release>
<discNumber>1</discNumber>
<popularity>0.65</popularity>
<number>10</number>
<download> <!-- Optional: You should only see this element if you are requesting with download usageType -->
<releaseDate>2013-02-15T00:00:00Z</releaseDate>
<previewDate>2013-02-15T00:00:00Z</previewDate>
<packages>
<package id="2">
<description>Standard</description>
<price>
<currencyCode>GBP</currencyCode>
<sevendigitalPrice>12.99</sevendigitalPrice>
<recommendedRetailPrice>12.99</recommendedRetailPrice>
</price>
<formats>
<format id="17">
<description>MP3 320</description>
</format>
</formats>
</package>
</packages>
</download>
<subscriptionStreaming> <!-- Optional: You should only see this element if you are requesting with subscriptionstreaming usageType -->
<releaseDate>2013-02-15T00:00:00Z</releaseDate>
</subscriptionStreaming>
</track>
</searchResult>
</searchResults>
</response>
{
"status": "ok",
"version": "1.2",
"searchResults": {
"page": 1,
"pageSize": 2,
"totalItems": 1000,
"searchResult": [
{
"type": "track",
"score": 2.2408922,
"track": {
"id": 33576075,
"title": "Happy (From \"Despicable Me 2\")",
"version": "",
"artist": {
"id": 1389406,
"name": "Pharrell Williams",
"appearsAs": "Pharrell Williams",
"isPlaceholderImage": "true",
"image": "http://artwork-cdn.7static.com/static/img/artistimages/00/013/894/0001389406_150.jpg",
"slug": "pharrell-williams"
},
"trackNumber": 1,
"duration": 233,
"explicitContent": false,
"isrc": "USQ4E1300686",
"type": "audio",
"release": {
"id": 3157769,
"title": "Happy",
"version": "",
"type": "Single",
"artist": {
"isPlaceholderImage": "true",
"image": "http://artwork-cdn.7static.com/static/img/artistimages/00/013/894/0001389406_150.jpg",
"id": 1389406,
"name": "Pharrell Williams",
"appearsAs": "Pharrell Williams",
"slug": "pharrell-williams"
},
"image": "http://artwork-cdn.7static.com/static/img/sleeveart/00/031/577/0003157769_50.jpg",
"label": {
"id": "24002",
"name": "Sony Music Entertainment"
},
"licensor": {
"id": "2",
"name": "Sony Music"
},
"popularity": 0,
"slug": "happy-grus-theme-from-despicable-me-2"
},
"discNumber": 1,
"popularity": 0.67,
"number": 1,
"download": {
"releaseDate": "2013-12-17T00:00:00Z",
"previewDate": "2013-12-17T00:00:00Z",
"packages": [
{
"id": 2,
"description": "Standard",
"price": {
"currencyCode": "GBP",
"sevendigitalPrice": null,
"recommendedRetailPrice": 0.99
},
"formats": [
{
"id": 17,
"description": "MP3 320"
},
{
"id": 33,
"description": "AAC 320"
}
]
}
]
},
"subscriptionStreaming": {
"releaseDate": "2013-12-17T00:00:00Z"
},
"adSupportedStreaming": {
"releaseDate": "2013-12-17T00:00:00Z"
}
}
},
{
"type": "track",
"score": 2.0211854,
"track": {
"id": 23383867,
"title": "Happy Hour",
"version": "",
"artist": {
"id": 1518064,
"name": "SoundSense",
"appearsAs": "SoundSense",
"isPlaceholderImage": "true",
"image": "http://artwork-cdn.7static.com/static/img/artistimages/00/013/894/0001389406_150.jpg",
"slug": "soundsense"
},
"trackNumber": 10,
"duration": 139,
"explicitContent": false,
"isrc": "FR6V81605038",
"type": "audio",
"release": {
"id": 2170865,
"title": "100% 80's - 100 Classic Hits",
"version": "",
"type": "Album",
"artist": {
"id": 1518064,
"name": "SoundSense",
"appearsAs": "SoundSense",
"slug": "soundsense"
},
"image": "http://artwork-cdn.7static.com/static/img/sleeveart/00/021/708/0002170865_50.jpg",
"label": {
"id": "81377",
"name": "BPM Digital Ltd"
},
"licensor": {
"id": "166",
"name": "Believe"
},
"popularity": 0,
"slug": "100-80s-100-classic-hits"
},
"discNumber": 1,
"popularity": 0.65,
"number": 10,
"download": {
"releaseDate": "2013-02-15T00:00:00Z",
"previewDate": "2013-02-15T00:00:00Z",
"packages": [
{
"id": 2,
"description": "Standard",
"price": {
"currencyCode": "GBP",
"sevendigitalPrice": null,
"recommendedRetailPrice": 0.99
},
"formats": [
{
"id": 17,
"description": "MP3 320"
}
]
}
]
},
"subscriptionStreaming": {
"releaseDate": "2013-02-15T00:00:00Z"
},
"adSupportedStreaming": null
}
}
]
}
}
This method returns a list of all available tags.
Example request: http://api.7digital.com/1.2/tag?oauth_consumer_key=YOUR_KEY_HERE&country=GB
Attribute | Type | Description |
---|---|---|
country required | string | ISO 2-character code of the country the end user resides in. |
<response status="ok" version="1.2" xsi:noNamespaceSchemaLocation="http://api.7digital.com/1.2/static/7digitalAPI.xsd">
<tags>
<page>1</page>
<pageSize>10</pageSize>
<totalItems>471</totalItems>
<tag id="pop">
<text>pop</text>
<url>http://www.7digital.com/tags/pop?partner=1401</url>
<count>328620</count>
</tag>
<tag id="electronic">
<text>rock</text>
<url>http://www.7digital.com/tags/electronic?partner=1401</url>
<count>204523</count>
</tag>
...
</tags>
</response>
This method returns all tags associated with the given artist.
Example request: http://api.7digital.com/1.2/artist/tags?artistid=1&oauth_consumer_key=YOUR_KEY_HERE&country=GB
Attribute | Type | Description |
---|---|---|
artistId required | integer | The unique identifier of the artist. |
country required | string | ISO 2-character code of the country the end user resides in. |
<response status="ok" version="1.2" xsi:noNamespaceSchemaLocation="http://api.7digital.com/1.2/static/7digitalAPI.xsd">
<tags>
<page>1</page>
<pageSize>10</pageSize>
<totalItems>4</totalItems>
<tag id="rock">
<text>rock</text>
<url>http://www.7digital.com/tags/rock?partner=1401</url>
</tag>
<tag id="pop">
<text>pop</text>
<url>http://www.7digital.com/tags/pop?partner=1401</url>
</tag>
<tag id="alternative">
<text>alternative</text>
<url>
http://www.7digital.com/tags/alternative?partner=1401
</url>
</tag>
<tag id="2000s">
<text>2000s</text>
<url>http://www.7digital.com/tags/2000s?partner=1401</url>
</tag>
</tags>
</response>
{
"status": "ok",
"version": "1.2",
"tags": {
"page": 1,
"pageSize": 10,
"totalItems": 4,
"tag": [
{
"id": "rock",
"text": "rock",
"url": "http://www.7digital.com/tags/rock?partner=1401"
},
{
"id": "pop",
"text": "pop",
"url": "http://www.7digital.com/tags/pop?partner=1401"
},
{
"id": "alternative",
"text": "alternative",
"url": "http://www.7digital.com/tags/alternative?partner=1401"
},
{
"id": "2000s",
"text": "2000s",
"url": "http://www.7digital.com/tags/2000s?partner=1401"
}
]
}
}
This method returns a list of most popular artists tagged by a given tag or list of tags. If multiple tags are supplied only artists matching all of them will be returned.
Example request: http://api.7digital.com/1.2/artist/bytag/top?tags=rock,pop,2000s&oauth_consumer_key=YOUR_KEY_HERE&country=GB&pagesize=2
Attribute | Type | Description |
---|---|---|
tags required | string | A single or comma-separated list of tags. |
country required | string | ISO 2-character code of the country the end user resides in. |
page | integer | Page number of the result set. If not supplied, defaults to 1. |
pageSize | integer | Number of items to be returned per page. If not supplied this defaults to 10. Maximum page size is 50. |
imageSize | integer | The requested width of the image in pixels. Available image sizes are listed here. |
Method specific error codes:
2001
- None of the provided tag(s) exist. The tags you supplied do not exist.
1003
- Requested page out of range You specified a page number which does not exist.
<response status="ok" version="1.2">
<taggedResults>
<page>1</page>
<pageSize>2</pageSize>
<totalItems>439</totalItems>
<type>artist</type>
<taggedItem>
<artist id="20">
<name>Coldplay</name>
<sortName>Coldplay</sortName>
<slug>coldplay</slug>
<image>http://artwork-cdn.7static.com/static/img/artistimages/00/000/000/0000000020_150.jpg</image>
<popularity>0.81</popularity>
</artist>
</taggedItem>
<taggedItem>
<artist id="222">
<name>Maroon 5</name>
<sortName>Maroon 5</sortName>
<slug>maroon-5</slug>
<image>http://artwork-cdn.7static.com/static/img/artistimages/00/000/002/0000000222_150.jpg</image>
<popularity>0.81</popularity>
</artist>
</taggedItem>
</taggedResults>
</response>
{
"status": "ok",
"version": "1.2",
"taggedResults": {
"page": 1,
"pageSize": 2,
"totalItems": 438,
"type": "artist",
"taggedItem": [
{
"artist": {
"id": 222,
"name": "Maroon 5",
"sortName": "Maroon 5",
"slug": "maroon-5",
"image": "http://artwork-cdn.7static.com/static/img/artistimages/00/000/002/0000000222_150.jpg",
"popularity": 0.91
}
},
...
]
}
}
This method returns all tags associated with the given release.
Example request: http://api.7digital.com/1.2/release/tags?releaseid=155408&oauth_consumer_key=YOUR_KEY_HERE&country=GB
Attribute | Type | Description |
---|---|---|
releaseId required | integer | The unique identifier of the release. |
country required | string | ISO 2-character code of the country the end user resides in. |
<response status="ok" version="1.2" xsi:noNamespaceSchemaLocation="http://api.7digital.com/1.2/static/7digitalAPI.xsd">
<tags>
<page>1</page>
<pageSize>10</pageSize>
<totalItems>5</totalItems>
<tag id="rock">
<text>rock</text>
<url>http://www.7digital.com/tags/rock</url>
</tag>
<tag id="pop">
<text>pop</text>
<url>http://www.7digital.com/tags/pop</url>
</tag>
<tag id="electronic">
<text>electronic</text>
<url>http://www.7digital.com/tags/electronic</url>
</tag>
<tag id="indie-rock">
<text>indie rock</text>
<url>http://www.7digital.com/tags/indie-rock</url>
</tag>
<tag id="2000s">
<text>2000s</text>
<url>http://www.7digital.com/tags/2000s</url>
</tag>
</tags>
</response>
This endpoint returns a list of releases matching a specified genre, ordered by most recent release date.
Example request: http://api.7digital.com/1.2/release/bytag/new?tags=rock&page=2&pageSize=2&oauth_consumer_key=YOUR_KEY_HERE&country=GB&usageTypes=download,subscriptionstreaming,adsupportedstreaming
Attribute | Type | Description |
---|---|---|
tags required | string | genre to filter by (e.g. tags=rock). |
usageTypes required | string | Only use the usageTypes you need, e.g. download, subscriptionstreaming or adsupportedstreaming. |
country required | string | ISO 2-character code of the country the end user resides in. |
page | integer | Page number of the result set. If not supplied, defaults to 1. |
pageSize | integer | Number of items to be returned per page. If not supplied this defaults to 10. Maximum page size is 50. |
imageSize | integer | The requested width of the image in pixels. Available image sizes are listed here. |
Method specific error codes:
2001
- None of the provided tag(s) exist The tags you supplied do not exist.
1003
- Requested page out of range You specified a page number which does not exist.
<?xml version="1.0" encoding="UTF-8"?>
<response xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" status="ok" version="1.2" xsi:noNamespaceSchemaLocation="http://api.7digital.com/1.2/static/7digitalAPI.xsd">
<taggedResults>
<page>2</page>
<pageSize>2</pageSize>
<totalItems>250</totalItems>
<type>release</type>
<taggedItem>
<release id="4987796">
<title>Mighty Eagle</title>
<version />
<type>Single</type>
<barcode>7340065072028</barcode>
<year>2015</year>
<explicitContent>false</explicitContent>
<artist id="335480">
<name>Cryonic Temple</name>
<appearsAs>Cryonic Temple</appearsAs>
<slug>cryonic-temple</slug>
<isPlaceholderImage>true</isPlaceholderImage>
</artist>
<image>http://artwork-cdn.7static.com/static/img/sleeveart/00/049/877/0004987796_50.jpg</image>
<label id="119166">
<name>DISTROSONG</name>
</label>
<licensor id="68">
<name>Kontor</name>
</licensor>
<popularity>0</popularity>
<duration>205</duration>
<trackCount>1</trackCount>
<download> <!-- Optional: You should only see this element if you are requesting with download usageType -->
<releaseDate>2015-12-17T00:00:00Z</releaseDate>
<packages>
<package id="2">
<description>Standard</description>
<price>
<currencyCode>GBP</currencyCode>
<sevendigitalPrice>0.79</sevendigitalPrice>
<recommendedRetailPrice>0.79</recommendedRetailPrice>
</price>
<formats>
<format id="17">
<description>MP3 320</description>
</format>
<format id="33">
<description>AAC 320</description>
</format>
</formats>
</package>
</packages>
</download>
<subscriptionStreaming> <!-- Optional: You should only see this element if you are requesting with subscriptionstreaming usageType -->
<releaseDate>2015-12-17T00:00:00Z</releaseDate>
</subscriptionStreaming>
<adSupportedStreaming> <!-- Optional: You should only see this element if you are requesting with adsupportedstreaming usageType -->
<releaseDate>2015-12-17T00:00:00Z</releaseDate>
</adSupportedStreaming>
<slug>mighty-eagle</slug>
</release>
</taggedItem>
<taggedItem>
<release id="4947593">
<title>Upset for the Ages (Single)</title>
<version />
<type>Album</type>
<barcode>7071676152105</barcode>
<year>2015</year>
<explicitContent>false</explicitContent>
<artist id="2753170">
<name>Bicentennial Bear</name>
<appearsAs>Bicentennial Bear</appearsAs>
<slug>bicentennial-bear</slug>
<isPlaceholderImage>true</isPlaceholderImage>
</artist>
<image>http://artwork-cdn.7static.com/static/img/sleeveart/00/049/475/0004947593_50.jpg</image>
<label id="152250">
<name>IndiGoBoom</name>
</label>
<licensor id="261">
<name>Phonofile</name>
</licensor>
<popularity>0</popularity>
<duration>360</duration>
<trackCount>2</trackCount>
<download> <!-- Optional: You should only see this element if you are requesting with download usageType -->
<releaseDate>2015-12-17T00:00:00Z</releaseDate>
<packages>
<package id="2">
<description>Standard</description>
<price>
<currencyCode>GBP</currencyCode>
<sevendigitalPrice>1.98</sevendigitalPrice>
<recommendedRetailPrice>1.98</recommendedRetailPrice>
</price>
<formats>
<format id="17">
<description>MP3 320</description>
</format>
<format id="33">
<description>AAC 320</description>
</format>
</formats>
</package>
</packages>
</download>
<subscriptionStreaming> <!-- Optional: You should only see this element if you are requesting with subscriptionstreaming usageType -->
<releaseDate>2015-11-20T00:00:00Z</releaseDate>
</subscriptionStreaming>
<adSupportedStreaming> <!-- Optional: You should only see this element if you are requesting with adsupportedstreaming usageType -->
<releaseDate>2015-11-20T00:00:00Z</releaseDate>
</adSupportedStreaming>
<slug>upset-for-the-ages-single</slug>
</release>
</taggedItem>
</taggedResults>
</response>
{
"status": "ok",
"version": "1.2",
"schema": "http://api.7digital.com/1.2/static/7digitalAPI.xsd",
"taggedResults": {
"type": "release",
"releases": [
{
"id": 4987796,
"title": "Mighty Eagle",
"version": "",
"type": "Single",
"barcode": "7340065072028",
"year": "2015",
"explicitContent": false,
"artist": {
"id": 335480,
"name": "Cryonic Temple",
"appearsAs": "Cryonic Temple",
"slug": "cryonic-temple",
"isPlaceholderImage": true
},
"image": "http://artwork-cdn.7static.com/static/img/sleeveart/00/049/877/0004987796_50.jpg",
"label": {
"id": 119166,
"name": "DISTROSONG"
},
"licensor": {
"id": 68,
"name": "Kontor"
},
"popularity": 0,
"duration": 205,
"trackCount": 1,
"download": {
"releaseDate": "2015-12-17T00:00:00Z",
"packages": [
{
"id": 2,
"description": "Standard",
"price": {
"currencyCode": "GBP",
"sevendigitalPrice": 0.79,
"recommendedRetailPrice": 0.79
},
"formats": [
{
"id": 17,
"description": "MP3 320"
},
{
"id": 33,
"description": "AAC 320"
}
]
}
]
},
"subscriptionStreaming": {
"releaseDate": "2015-12-17T00:00:00Z"
},
"adSupportedStreaming": {
"releaseDate": "2015-12-17T00:00:00Z"
},
"slug": "mighty-eagle"
},
{
"id": 4947593,
"title": "Upset for the Ages (Single)",
"version": "",
"type": "Album",
"barcode": "7071676152105",
"year": "2015",
"explicitContent": false,
"artist": {
"id": 2753170,
"name": "Bicentennial Bear",
"appearsAs": "Bicentennial Bear",
"slug": "bicentennial-bear",
"isPlaceholderImage": true
},
"image": "http://artwork-cdn.7static.com/static/img/sleeveart/00/049/475/0004947593_50.jpg",
"label": {
"id": 152250,
"name": "IndiGoBoom"
},
"licensor": {
"id": 261,
"name": "Phonofile"
},
"popularity": 0,
"duration": 360,
"trackCount": 2,
"download": {
"releaseDate": "2015-12-17T00:00:00Z",
"packages": [
{
"id": 2,
"description": "Standard",
"price": {
"currencyCode": "GBP",
"sevendigitalPrice": 1.98,
"recommendedRetailPrice": 1.98
},
"formats": [
{
"id": 17,
"description": "MP3 320"
},
{
"id": 33,
"description": "AAC 320"
}
]
}
]
},
"subscriptionStreaming": {
"releaseDate": "2015-11-20T00:00:00Z"
},
"adSupportedStreaming": {
"releaseDate": "2015-11-20T00:00:00Z"
},
"slug": "upset-for-the-ages-single"
}
],
"taggedReleases": [
{
"release": {
"id": 4987796,
"title": "Mighty Eagle",
"version": "",
"type": "Single",
"barcode": "7340065072028",
"year": "2015",
"explicitContent": false,
"artist": {
"id": 335480,
"name": "Cryonic Temple",
"appearsAs": "Cryonic Temple",
"slug": "cryonic-temple",
"isPlaceholderImage": true
},
"image": "http://artwork-cdn.7static.com/static/img/sleeveart/00/049/877/0004987796_50.jpg",
"label": {
"id": 119166,
"name": "DISTROSONG"
},
"licensor": {
"id": 68,
"name": "Kontor"
},
"popularity": 0,
"duration": 205,
"trackCount": 1,
"download": {
"releaseDate": "2015-12-17T00:00:00Z",
"packages": [
{
"id": 2,
"description": "Standard",
"price": {
"currencyCode": "GBP",
"sevendigitalPrice": 0.79,
"recommendedRetailPrice": 0.79
},
"formats": [
{
"id": 17,
"description": "MP3 320"
},
{
"id": 33,
"description": "AAC 320"
}
]
}
]
},
"subscriptionStreaming": {
"releaseDate": "2015-12-17T00:00:00Z"
},
"adSupportedStreaming": {
"releaseDate": "2015-12-17T00:00:00Z"
},
"slug": "mighty-eagle"
}
},
{
"release": {
"id": 4947593,
"title": "Upset for the Ages (Single)",
"version": "",
"type": "Album",
"barcode": "7071676152105",
"year": "2015",
"explicitContent": false,
"artist": {
"id": 2753170,
"name": "Bicentennial Bear",
"appearsAs": "Bicentennial Bear",
"slug": "bicentennial-bear",
"isPlaceholderImage": true
},
"image": "http://artwork-cdn.7static.com/static/img/sleeveart/00/049/475/0004947593_50.jpg",
"label": {
"id": 152250,
"name": "IndiGoBoom"
},
"licensor": {
"id": 261,
"name": "Phonofile"
},
"popularity": 0,
"duration": 360,
"trackCount": 2,
"download": {
"releaseDate": "2015-12-17T00:00:00Z",
"packages": [
{
"id": 2,
"description": "Standard",
"price": {
"currencyCode": "GBP",
"sevendigitalPrice": 1.98,
"recommendedRetailPrice": 1.98
},
"formats": [
{
"id": 17,
"description": "MP3 320"
},
{
"id": 33,
"description": "AAC 320"
}
]
}
]
},
"subscriptionStreaming": {
"releaseDate": "2015-11-20T00:00:00Z"
},
"adSupportedStreaming": {
"releaseDate": "2015-11-20T00:00:00Z"
},
"slug": "upset-for-the-ages-single"
}
}
],
"page": 2,
"pageSize": 2,
"totalItems": 250
}
}
This endpoint returns a list of releases ordered by popularity, for a specified genre.
Example request: http://api.7digital.com/1.2/release/bytag/top?tags=rock&page=1&pageSize=2&oauth_consumer_key=YOUR_KEY_HERE&country=GB&usageTypes=download,subscriptionstreaming,adsupportedstreaming
Attribute | Type | Description |
---|---|---|
tags required | string | A genre (ie 'rock') |
country required | string | ISO 2-character code of the country the end user resides in. |
usageTypes required | string | Only use the usageTypes you need, e.g. download, subscriptionstreaming or adsupportedstreaming. |
Method specific error codes:
2001
- None of the provided tag(s) exist The tags you supplied do not exist.
<?xml version="1.0" encoding="UTF-8"?>
<response xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" status="ok" version="1.2" xsi:noNamespaceSchemaLocation="http://api.7digital.com/1.2/static/7digitalAPI.xsd">
<taggedResults>
<page>1</page>
<pageSize>2</pageSize>
<totalItems>250</totalItems>
<type>release</type>
<taggedItem>
<release id="1402423">
<title>Nevermind</title>
<version />
<type>Album</type>
<barcode>00602527856865</barcode>
<year>1991</year>
<explicitContent>false</explicitContent>
<artist id="169">
<name>Nirvana</name>
<appearsAs>Nirvana</appearsAs>
<slug>nirvana</slug>
<isPlaceholderImage>true</isPlaceholderImage>
</artist>
<image>http://artwork-cdn.7static.com/static/img/sleeveart/00/014/024/0001402423_50.jpg</image>
<label id="472015">
<name>(P) 2011 Geffen Records</name>
</label>
<licensor id="1">
<name>Universal</name>
</licensor>
<popularity>0</popularity>
<duration>2954</duration>
<trackCount>13</trackCount>
<download> <!-- Optional: You should only see this element if you are requesting with download usageType -->
<releaseDate>2015-11-24T00:00:00Z</releaseDate>
<packages>
<package id="2">
<description>Standard</description>
<price>
<currencyCode>GBP</currencyCode>
<sevendigitalPrice>8.49</sevendigitalPrice>
<recommendedRetailPrice>8.49</recommendedRetailPrice>
</price>
<formats>
<format id="17">
<description>MP3 320</description>
</format>
<format id="33">
<description>AAC 320</description>
</format>
</formats>
</package>
</packages>
</download>
<subscriptionStreaming> <!-- Optional: You should only see this element if you are requesting with subscriptionstreaming usageType -->
<releaseDate>2015-11-24T00:00:00Z</releaseDate>
</subscriptionStreaming>
<adSupportedStreaming> <!-- Optional: You should only see this element if you are requesting with adsupportedstreaming usageType -->
<releaseDate>2015-11-24T00:00:00Z</releaseDate>
</adSupportedStreaming>
<slug>nevermind-4</slug>
</release>
</taggedItem>
<taggedItem>
<release id="3490858">
<title>Ghost Stories</title>
<version />
<type>Album</type>
<barcode>825646305926</barcode>
<year>2014</year>
<explicitContent>false</explicitContent>
<artist id="20">
<name>Coldplay</name>
<appearsAs>Coldplay</appearsAs>
<slug>coldplay</slug>
<isPlaceholderImage>true</isPlaceholderImage>
</artist>
<image>http://artwork-cdn.7static.com/static/img/sleeveart/00/034/908/0003490858_50.jpg</image>
<label id="227575">
<name>Parlophone UK</name>
</label>
<licensor id="18">
<name>Warner</name>
</licensor>
<popularity>0</popularity>
<duration>2562</duration>
<trackCount>10</trackCount>
<download> <!-- Optional: You should only see this element if you are requesting with download usageType -->
<releaseDate>2015-03-23T00:00:00Z</releaseDate>
<packages>
<package id="2">
<description>Standard</description>
<price>
<currencyCode>GBP</currencyCode>
<sevendigitalPrice>4.49</sevendigitalPrice>
<recommendedRetailPrice>4.49</recommendedRetailPrice>
</price>
<formats>
<format id="10">
<description>PDF file</description>
</format>
<format id="17">
<description>MP3 320</description>
</format>
</formats>
</package>
</packages>
</download>
<slug>ghost-stories</slug>
</release>
</taggedItem>
</taggedResults>
</response>
{
"status": "ok",
"version": "1.2",
"schema": "http://api.7digital.com/1.2/static/7digitalAPI.xsd",
"taggedResults": {
"type": "release",
"releases": [
{
"id": 1402423,
"title": "Nevermind",
"version": "",
"type": "Album",
"barcode": "00602527856865",
"year": "1991",
"explicitContent": false,
"artist": {
"id": 169,
"name": "Nirvana",
"appearsAs": "Nirvana",
"slug": "nirvana",
"isPlaceholderImage": true
},
"image": "http://artwork-cdn.7static.com/static/img/sleeveart/00/014/024/0001402423_50.jpg",
"label": {
"id": 472015,
"name": "(P) 2011 Geffen Records"
},
"licensor": {
"id": 1,
"name": "Universal"
},
"popularity": 0,
"duration": 2954,
"trackCount": 13,
"download": {
"releaseDate": "2015-11-24T00:00:00Z",
"packages": [
{
"id": 2,
"description": "Standard",
"price": {
"currencyCode": "GBP",
"sevendigitalPrice": 8.49,
"recommendedRetailPrice": 8.49
},
"formats": [
{
"id": 17,
"description": "MP3 320"
},
{
"id": 33,
"description": "AAC 320"
}
]
}
]
},
"subscriptionStreaming": {
"releaseDate": "2015-11-24T00:00:00Z"
},
"adSupportedStreaming": {
"releaseDate": "2015-11-24T00:00:00Z"
},
"slug": "nevermind-4"
},
{
"id": 3490858,
"title": "Ghost Stories",
"version": "",
"type": "Album",
"barcode": "825646305926",
"year": "2014",
"explicitContent": false,
"artist": {
"id": 20,
"name": "Coldplay",
"appearsAs": "Coldplay",
"slug": "coldplay",
"isPlaceholderImage": true
},
"image": "http://artwork-cdn.7static.com/static/img/sleeveart/00/034/908/0003490858_50.jpg",
"label": {
"id": 227575,
"name": "Parlophone UK"
},
"licensor": {
"id": 18,
"name": "Warner"
},
"popularity": 0,
"duration": 2562,
"trackCount": 10,
"download": {
"releaseDate": "2015-03-23T00:00:00Z",
"packages": [
{
"id": 2,
"description": "Standard",
"price": {
"currencyCode": "GBP",
"sevendigitalPrice": 4.49,
"recommendedRetailPrice": 4.49
},
"formats": [
{
"id": 10,
"description": "PDF file"
},
{
"id": 17,
"description": "MP3 320"
}
]
}
]
},
"slug": "ghost-stories"
}
],
"taggedReleases": [
{
"release": {
"id": 1402423,
"title": "Nevermind",
"version": "",
"type": "Album",
"barcode": "00602527856865",
"year": "1991",
"explicitContent": false,
"artist": {
"id": 169,
"name": "Nirvana",
"appearsAs": "Nirvana",
"slug": "nirvana",
"isPlaceholderImage": true
},
"image": "http://artwork-cdn.7static.com/static/img/sleeveart/00/014/024/0001402423_50.jpg",
"label": {
"id": 472015,
"name": "(P) 2011 Geffen Records"
},
"licensor": {
"id": 1,
"name": "Universal"
},
"popularity": 0,
"duration": 2954,
"trackCount": 13,
"download": {
"releaseDate": "2015-11-24T00:00:00Z",
"packages": [
{
"id": 2,
"description": "Standard",
"price": {
"currencyCode": "GBP",
"sevendigitalPrice": 8.49,
"recommendedRetailPrice": 8.49
},
"formats": [
{
"id": 17,
"description": "MP3 320"
},
{
"id": 33,
"description": "AAC 320"
}
]
}
]
},
"subscriptionStreaming": {
"releaseDate": "2015-11-24T00:00:00Z"
},
"adSupportedStreaming": {
"releaseDate": "2015-11-24T00:00:00Z"
},
"slug": "nevermind-4"
}
},
{
"release": {
"id": 3490858,
"title": "Ghost Stories",
"version": "",
"type": "Album",
"barcode": "825646305926",
"year": "2014",
"explicitContent": false,
"artist": {
"id": 20,
"name": "Coldplay",
"appearsAs": "Coldplay",
"slug": "coldplay",
"isPlaceholderImage": true
},
"image": "http://artwork-cdn.7static.com/static/img/sleeveart/00/034/908/0003490858_50.jpg",
"label": {
"id": 227575,
"name": "Parlophone UK"
},
"licensor": {
"id": 18,
"name": "Warner"
},
"popularity": 0,
"duration": 2562,
"trackCount": 10,
"download": {
"releaseDate": "2015-03-23T00:00:00Z",
"packages": [
{
"id": 2,
"description": "Standard",
"price": {
"currencyCode": "GBP",
"sevendigitalPrice": 4.49,
"recommendedRetailPrice": 4.49
},
"formats": [
{
"id": 10,
"description": "PDF file"
},
{
"id": 17,
"description": "MP3 320"
}
]
}
]
},
"slug": "ghost-stories"
}
}
],
"page": 1,
"pageSize": 2,
"totalItems": 250
}
}
The Media Delivery API allows end users to download or stream full-length tracks and previews.
These methods will give you progressive streaming access to media provided by 7digital. All streaming endpoints support standard HTTP Range headers.
Tracks are available in the following formats and bitrates:
Format ID 56 (AAC 160)
Format ID 55 (AAC 64)
These methods provide various different ways to request and obtain audio data for full-length track playback. They are split based on the scenario in which they are used.
Allows user to stream a previously purchased track from their locker. This endpoint can be used for online plays or offline caching (for plays when the device isn't connected to the Internet). Endpoint's full location: https://stream.svc.7digital.net/stream/locker
Example request: https://stream.svc.7digital.net/stream/locker?country=GB&userid=1234&trackid=123456&formatid=??...
Attribute | Type | Description |
---|---|---|
oauth_token / userId required | string | If you hold a 7digital oauth access token for the user streaming the track this needs to be provided. If not, you can pass your own identifier of the user (ID, GUID, username, etc). For streaming services that don't require users to sign in, please contact us for alternative options of providing user identification (e.g. device IDs, autogenerated IDs stored in a cookie). |
trackId required | integer | The 7digital ID of the track to be streamed. |
formatId required | integer | The 7digital ID of the format requested. Please contact us for available formats. |
country required | string | ISO 2-character code of the country the end user resides in. |
Method specific error codes:
1001
- Error: Missing "parameter name" query parameter. Not all mandatory parameters were specified in the request.
1002
- Invalid value for "parameter name": parameter value. Value for parameter in error message is not valid.
2001
- Track not found. This track isn't available for streaming in your country or shop.
2002
- Pre-release or license availability. Either the requested track is not in the user's locker, or the track is not available for streaming (note that streaming release dates may differ from download or catalogue streaming release dates).
HTTP/1.1 200 OK
Date: Thu, 19 Nov 2009 11:27:47 GMT
Content-Length: 7256280
Content-Type: audio/mpeg
Allows user to stream any track in the 7digital catalogue available in their region. This endpoint is designed for radio style play where individual tracks cannot be selected by the user (i.e. "non-interactive" streaming), and is licensed differently than other streaming endpoints. Tracks can be cached (in an encrypted format) on the end user's device, but all plays from either the cache or live must be reported with the catalogue/log endpoint. Please contact us for more details. Endpoint's full location: https://stream.svc.7digital.net/stream/catalogue
Example request: https://stream.svc.7digital.net/stream/catalogue?country=US&trackid=123456&formatid=??
Attribute | Type | Description |
---|---|---|
trackId required | integer | The 7digital ID of the track to be streamed. |
formatId required | integer | The 7digital ID of the format requested. Please contact us for available formats. |
country required | string | ISO 2-character code of the country the end user resides in. |
Method specific error codes:
1001
- Error: Missing "parameter name" query parameter. Not all mandatory parameters were specified in the request.
1002
- Invalid value for "parameter name": parameter value. Value for parameter in error message is not valid.
2001
- Track not found. This track isn't available for streaming in your country or shop.
2002
- Pre-release availability. The track is not available for radio streaming (note that release dates may differ from subscription/locker streaming release dates).
HTTP/1.1 200 OK
Date: Thu, 19 Nov 2009 11:27:47 GMT
Content-Length: 7256280
Content-Type: audio/mpeg
Allows user to stream any track available for streaming in their region, as long as they have a valid subscription account already set up with our subscription system (billed either by 7digital or your system).
This endpoint should only be used when a given device is actively connected to the Internet. For local caching in bulk, to be used for offline plays, see offline/subscription. Tracks can be cached (in an encrypted format) on the end user's device, but all plays from either the cache or live must be reported with the user/subscription/log endpoint.
When the clientId parameter is supplied, mulitple devices will not be allowed to stream concurrently. Device A can start streaming, but if Device B starts, Device A will finish its current track then be blocked from playing again for a short time period. After that time period, Device A can play again, and Device B will become blocked.
Endpoint's full location: https://stream.svc.7digital.net/stream/subscription
Example request: https://stream.svc.7digital.net/stream/subscription?country=GB&userid=1234&trackid=123456&formatid=??
Attribute | Type | Description |
---|---|---|
oauth_token / userId required | string | If you hold a 7digital oauth access token for the user streaming the track this needs to be provided. If not, you can pass your own identifier of the user (ID, GUID, username, etc). For streaming services that don't require users to sign in, please contact us for alternative options of providing user identification (e.g. device IDs, autogenerated IDs stored in a cookie). |
trackId required | integer | The 7digital ID of the track to be streamed. |
formatId required | integer | The 7digital ID of the format requested. Please contact us for available formats. |
clientId | string | A unique identifier for the current device streaming the track. Generally a music label requirement, this will allow us to block multiple devices from streaming on the same user account (see above for more information). |
country required | string | ISO 2-character code of the country the end user resides in. |
Method specific error codes:
1001
- Error: Missing "parameter name" query parameter. Not all mandatory parameters were specified in the request.
1002
- Invalid value for "parameter name": parameter value. Value for parameter in error message is not valid.
2001
- Track not found. This track isn't available for streaming in your country or shop.
2002
- Pre-release or subscription availability. Either the user does not have a valid subscription account with us, or the track is not available for streaming (note that streaming release dates may differ from download or catalogue streaming release dates).
3201
- Simultaneous stream requests from multiple locations - streaming access temporarily disabled. When the clientId parameter is supplied, mulitple devices will not be allowed to stream concurrently (see endpoint description above for more information).
HTTP/1.1 200 OK
Date: Thu, 19 Nov 2009 11:27:47 GMT
Content-Length: 7256280
Content-Type: audio/mpeg
Allows user to stream any track available for streaming in their region, as long as they have a valid subscription account already set up with our subscription system and their device is registered for offline play with the user/unlimitedStreaming/offline endpoint.
This endpoint should only be used when a given device is caching for offline track play (where it won't be connected to the Internet).
All plays done during offline mode must be reported to the user/subscription/log endpoint as soon as Internet connectivity is restored.
Endpoint's full location: https://stream.svc.7digital.net/offline/subscription
Example request: https://stream.svc.7digital.net/offline/subscription?country=US&userid=1234&trackid=123456&formatid=??&clientId=123
Attribute | Type | Description |
---|---|---|
oauth_token / userId required | string | If you hold a 7digital oauth access token for the user streaming the track this needs to be provided. If not, you can pass your own identifier of the user (ID, GUID, username, etc). For streaming services that don't require users to sign in, please contact us for alternative options of providing user identification (e.g. device IDs, autogenerated IDs stored in a cookie). |
trackId required | integer | The 7digital ID of the track to be streamed. |
formatId required | integer | The 7digital ID of the format requested. Please contact us for available formats. |
clientId required | string | A unique identifier for the current device streaming the track. This should be the same clientId used to register the device for offline play with the user/unlimitedStreaming/offline endpoint. |
country required | string | ISO 2-character code of the country the end user resides in. |
Method specific error codes:
1001
- Error: Missing "parameter name" query parameter. Not all mandatory parameters were specified in the request.
1002
- Invalid value for "parameter name": parameter value. Value for parameter in error message is not valid.
2001
- Track not found. This track isn't available for streaming in your country or shop.
2002
- Pre-release or subscription availability. Either the user does not have a valid subscription account with us, or the track is not available for streaming (note that streaming release dates may differ from download or catalogue streaming release dates).
HTTP/1.1 200 OK
Date: Thu, 19 Nov 2009 11:27:47 GMT
Content-Length: 7256280
Content-Type: audio/mpeg
Used to authorise a device for offline mode. After authorised, a device can download in bulk from the offline/subscription endpoint. The POST body can be sent in either XML or JSON formats.
Example request: POST http://api.7digital.com/1.2/user/unlimitedStreaming/offline?oauth_consumer_key=YOUR_KEY_HERE&oauth_token=...
With body:
<offlineStatus>
<userId>1234</userId>
<clientId>e5ada89d-db5b-4d0e-b70b-820796d7d583</clientId>
<offlineEnabled>true</offlineEnabled>
<country>GB</country>
</offlineStatus>
Attribute | Type | Description |
---|---|---|
oauth_token / userId required | string | If you hold a 7digital oauth access token for the user streaming the track this needs to be provided. If not, you can pass your own identifier of the user (ID, GUID, username, etc). For streaming services that don't require users to sign in, please contact us for alternative options of providing user identification (e.g. device IDs, autogenerated IDs stored in a cookie). |
clientId required | integer | A unique identifier for the current device wanting to go offline. |
offlineEnabled required | boolean | true if the device is being enabled for offline streaming, false if it's being disabled. |
country required | string | ISO 2-character code of the country the end user resides in. |
Method specific error codes:
1002
- "parameter name": "reason" User did not specify valid value for mandatory parameter. Check the message for more details.
1003
- This account type cannot register offline device/Maximum number of offline devices registered Client was not successfully registered for offline playback. Check the message for more details.
<response status=”ok” version=”1.2”>
<offlineStatus>
<offlineEnabled>true</offlineEnabled>
<offlineMaxTrackCount>4000</offlineMaxTrackCount>
</offlineStatus>
</response>
Used to check the offline status of a specified device. This status can be changed with a POST to the user/unlimitedStreaming/offline endpoint.
Example request: http://api.7digital.com/1.2/user/unlimitedStreaming/offline?oauth_consumer_key=YOUR_KEY_HERE&clientId=xyz&oauth_token=...
Attribute | Type | Description |
---|---|---|
oauth_token / userId required | string | If you hold a 7digital oauth access token for the user streaming the track this needs to be provided. If not, you can pass your own identifier of the user (ID, GUID, username, etc). For streaming services that don't require users to sign in, please contact us for alternative options of providing user identification (e.g. device IDs, autogenerated IDs stored in a cookie). |
clientId required | integer | A unique identifier for the current device you're checking the offline status of. |
Method specific error codes:
1001
- Missing parameter "parameter name" Not all mandatory parameters were specified in the request.
<response status=”ok” version=”1.2”>
<offlineStatus>
<offlineEnabled>true</offlineEnabled>
<offlineMaxTrackCount>4000</offlineMaxTrackCount>
</offlineStatus>
</response>
Used to get list of all of a user's registered devices.
Example request: http://api.7digital.com/1.2/user/offlineclients?oauth_consumer_key=YOUR_KEY_HERE&oauth_token=...
Attribute | Type | Description |
---|---|---|
oauth_token / userId required | string | If you hold a 7digital oauth access token for the user streaming the track this needs to be provided. If not, you can pass your own identifier of the user (ID, GUID, username, etc). For streaming services that don't require users to sign in in in, please contact us for alternative options of providing user identification (e.g. device IDs, autogenerated IDs stored in a cookie). |
<response status=”ok” version=”1.2”>
<offlineClients>
<offlineClient>
<clientId>BD0A351C-4265-49A4-A80F-D10C5F56EC3E</clientId>
</offlineClient>
<offlineClient>
<clientId>8B91B97A-3214-4D17-B2A4-325E8CAB88B5</clientId>
</offlineClient>
</offlineClients>
</response>
Multiple plays can be batched by user into a single POST to this endpoint, and the body can be sent in either XML or JSON formats. Streams that are requested as part of pre-fetching functionality, but never played on the device, should still be logged with a zero second play time.
Situations on when you should and should not log to this endpoint:
Plays from stream/subscription:
Online from our servers: log using this endpoint
Cached on the device (after playing once from our servers): log using this endpoint
Plays from offline/subscription:
Online from our servers (being downloaded for later play, not actively playing from this endpoint): do not log
Cached on the device (after downloading once from our servers): log using this endpoint
Plays from stream/locker:
Online from our servers: do not log
Cached on the device (after playing once from our servers): do not log
XML POST body:
<playLog>
<playLogItem>
<trackId>123456</trackId>
<releaseId>123456</releaseId>
<formatId>50</formatId>
<playMode>online</playMode>
<dateTimePlayed>2014-03-13T11:39:28.8981203Z</dateTimePlayed>
<totalTimePlayed >12</totalTimePlayed>
<userAgent>Device version 3, App version 6</userAgent>
</playLogItem>
</playLog>
JSON POST body:
{
"playLogItem": [
{
"trackId": 123456,
"releaseId": 123456,
"formatId": 50,
"playMode": "online",
"dateTimePlayed": "2014-03-13T11:39:28.8981203Z",
"totalTimePlayed": 6,
"userAgent": "Device version 3, App version 6"
}
]
}
Example request: POST http://api.7digital.com/1.2/user/subscription/log?country=GB&oauth_consumer_key=YOUR_KEY_HERE&oauth_token=...
Attribute | Type | Description |
---|---|---|
oauth_token / userId required | string | If you hold a 7digital oauth access token for the user streaming the track this needs to be provided. If not, you can pass your own identifier of the user (ID, GUID, username, etc). For streaming services that don't require , please contact us for alternative options of providing user identification (e.g. device IDs, autogenerated IDs stored in a cookie). |
country required | string | The 2 letter ISO country code, as with our other endpoints. Should be the country where the user originated the stream from (e.g. set to US if the stream was played by a US user). Please note it can only be placed as a query string parameter, not in the POST body, or authorisation headers if those are used. |
trackId required | integer | The 7digital ID of the track that was streamed. |
releaseId required | integer | The 7digital ID of the release that was streamed. |
formatId required | integer | The 7digital ID of the format streamed. |
userAgent required | string | Details of the device model and application version used to play the track. Values over 256 characters will be truncated. |
dateTimePlayed required | string | The date and time when the track was played. Should be in the ISO 8601 format. |
totalTimePlayed required | integer | The total time the track was streamed in seconds (or 0 if it was only pre-fetched and never played). |
playMode required | string | Either "online", "offline", or "online-cached". Indicates if the play was with an active or inactive network connection and, if the network connection is active, whether or not it was read from the device cache. |
Method specific error codes:
1003
- User has never had a subscription The user you're trying to log plays for has never had a subscription account in our system (active or not) and therefore couldn't have streamed a subscription track with us.
<response status="ok" version="1.2">
<playLogs>
<count>2</count>
</playLogs>
</response>
Multiple plays (maximum of 100 per request) can be batched into a single POST to this endpoint, and the body can be sent in either XML or JSON formats. Streams that are requested as part of pre-fetching functionality, but never played on the device, should still be logged with a zero second play time.
Situations in which you should log to this endpoint:
Plays from stream/catalogue:
Online from our servers: log using this endpoint
Cached on the device (after playing once from our servers): log using this endpoint
XML POST body:
<playLog>
<playLogItem>
<trackId>123456</trackId>
<releaseId>123456</releaseId>
<formatId>50</formatId>
<dateTimePlayed>2014-03-13T11:39:28.8981203Z</dateTimePlayed>
<totalTimePlayed>12</totalTimePlayed>
<userAgent>Device version 3, App version 6</userAgent>
<userId>135</userId>
<endReason>naturalEnd</endReason>
</playLogItem>
</playLog>
JSON POST body:
{
"playLogItem": [
{
"endReason": "naturalEnd",
"userId": "135",
"userAgent": "Device",
"totalTimePlayed": "12",
"dateTimePlayed": "2016-12-19T11:39:28.8981203Z",
"formatId": "55",
"releaseId": "5424335",
"trackId": "54825860"
}
]
}
Example request: POST http://api.7digital.com/1.2/catalogue/log?country=US&oauth_consumer_key=YOUR_KEY_HERE&...
Attribute | Type | Description |
---|---|---|
country required | string | The 2 letter ISO country code, as with our other endpoints. Should be the country where the user originated the stream from (e.g. set to US if the stream was played by a US user). Please note it can only be placed as a query string parameter, not in the POST body, or authorisation headers if those are used. |
trackId required | integer | The 7digital ID of the track that was streamed. |
releaseId required | integer | The 7digital ID of the release that was streamed. |
formatId required | integer | The 7digital ID of the format streamed. |
userAgent required | string | Details of the device model and application version used to play the track. Values over 256 characters will be truncated. |
dateTimePlayed required | string | The date and time when the track was played. Should be in the ISO 8601 format. |
totalTimePlayed required | integer | The total time the track was streamed in seconds (or 0 if it was only pre-fetched and never played). |
userId required | string | The identifier of the user that played that track. Please note this must be in the body and is not a user id for authorisation purposes (as this endpoint is 2-leg OAuth signed). It's just for reporting purposes. The User ID value can be anything you want but it must be unique to each user and used consistently. |
endReason required | string | The reason the track play was stopped. This is one of three values "naturalEnd", "userSkipped" or "other." "naturalEnd" would be used to indicate when a track has finished playing in its entirety. "userSkipped" would be used to indicate that a user has chosen to skip the currently playing track. "other" is used when the reason the track has been stopped doesn't fit into the previous catagories, for example when a user changes radio station. |
<response status="ok" version="1.2">
<playLogs>
<count>2</count>
</playLogs>
</response>
Multiple plays can be batched into a single POST to this endpoint, and the body can be sent in either XML or JSON formats. Previews that are requested as part of pre-fetching functionality, but never played on the device, should still be logged with a zero second play time.
A country parameter is required in the query string. This is for OAuth authorisation, and must be a country your API key has access to. The country property in the POST body is the location in which the user played the clip.
The maximum accepted POST body size is limited to 100KiB.
An HTTP non-200 response means we have not fully saved the logs. Please retry the request, with an increasing backoff with any successive failures.
XML POST body:
<logs>
<log>
<country>US</country>
<trackId>123456</trackId>
<dateTimePlayed>2014-03-13T11:39:28.8981203Z</dateTimePlayed>
<totalTimePlayed>12</totalTimePlayed>
<userAgent>Device version 3, App version 6</userAgent>
<userId>135</userId>
<playMode>online</playMode>
</log>
</logs>
JSON POST body:
{
"logs": [
{
"country": "US",
"trackId": 123456,
"dateTimePlayed": "2014-03-13T11:39:28.8981203Z",
"totalTimePlayed": 12,
"userAgent": "Device version 3, App version 6",
"userId": "135",
"playMode":"online"
}
]
}
Example request: POST http://api.7digital.com/1.2/preview/log?country=GB&oauth_consumer_key=YOUR_KEY_HERE&...
Attribute | Type | Description |
---|---|---|
country required | string | The 2 letter ISO country code, as with our other endpoints. Should be the country where the user originated the stream from (e.g. set to US if the stream was played by a US user). Please note: the query string parameter is for authorisation only and doesn't get logged, whilst the country in the body is for reporting purposes. These values can differ if you send multiple countries at once. |
trackId required | integer | The 7digital ID of the track that was streamed. |
userAgent required | string | Details of the device model and application version used to play the track. Values over 256 characters will be truncated. |
dateTimePlayed required | string | The date and time when the track was played. Should be in the ISO 8601 format. |
totalTimePlayed required | integer | The total time the track was streamed in seconds (or 0 if it was only pre-fetched and never played). |
userId required | string | The identifier of the user that played that track. Please note this must be in the body and is not a user id for authorisation purposes (as this endpoint is 2-leg OAuth signed). It's just for reporting purposes. The User ID value can be anything you want but it must be unique to each user and used consistently. |
playMode required | string | Either "online", "offline", or "online-cached". Indicates if the play was with an active or inactive network connection and, if the network connection is active, whether or not it was read from the device cache. |
<response status="ok" version="1.2" />
{}
Allows the user to download a purchased track. Endpoint's full location: http://media.geo.7digital.com/media/user/downloadtrack
Example request: http://media.geo.7digital.com/media/user/downloadtrack?trackid=123456&releaseid=123456&formatid=17&country=GB&errorUrl=http%3a%2f%2fexample.com%2ferror&oauth_consumer_key=YOUR_KEY_HERE&...
Attribute | Type | Description |
---|---|---|
oauth_token / userId required | string | If you hold a 7digital oauth access token for the user streaming the track this needs to be provided. If not, you can pass your own identifier of the user (ID, GUID, username, etc). For streaming services that don't require users to sign in, please contact us for alternative options of providing user identification (e.g. device IDs, autogenerated IDs stored in a cookie). |
trackId required | integer | The 7digital ID of the track to be downloaded. |
releaseId required | integer | The 7digital ID of the release the track that is being delivered appears on. |
formatId required | integer | The 7digital ID of the format requested (from the list provided for each track by the purchasing API or locker response). |
country required | string | ISO 2-character code of the country the end user resides in. |
errorUrl | string | URL encoded callback URL in the event of an error. |
Method specific error codes:
1001
- Error: Missing "parameter name" query parameter. Not all mandatory parameters were specified in the request.
1002
- Invalid value for "parameter name": parameter value Value for parameter in error message is not valid.
2002
- No licences found for the download request. Either the track ID supplied does not exist or has not been purchased by the user supplied, or the user does not exist, or the track is no longer available for download.
HTTP/1.1 200 OK
Date: Thu, 19 Nov 2009 11:27:47 GMT
Content-Length: 7256280
Content-Disposition: attachment; filename="David Hasselhoff - Jump In My Car.mp3";
Content-Type: audio/mpeg
Allows a user to download tracks in a purchased release as a single ZIP file. Endpoint's full location: http://media.geo.7digital.com/media/user/download/release
Example request: http://media.geo.7digital.com/media/user/download/release?releaseid=123456&country=US&oauth_consumer_key=YOUR_KEY_HERE&...
Attribute | Type | Description |
---|---|---|
oauth_token / userId required | string | If you hold a 7digital oauth access token for the user streaming the track this needs to be provided. If not, you can pass your own identifier of the user (ID, GUID, username, etc). For streaming services that don't require users to sign in, please contact us for alternative options of providing user identification (e.g. device IDs, autogenerated IDs stored in a cookie). |
releaseId required | integer | The 7digital ID of the previously purchased release by the user to be downloaded. |
formatId | integer | The 7digital ID of the format requested (from the list provided for each track by the purchasing API or locker response). |
country required | string | ISO 2-character code of the country the end user resides in. |
Method specific error codes:
1001
- Error: Missing "parameter name" query parameter. Not all mandatory parameters were specified in the request.
1002
- Invalid value for "parameter name": parameter value Value for parameter in error message is not valid.
2002
- No licences found for the download request. Either the release Id supplied does not exist or has not been purchased by the user supplied, or the user does not exist.
HTTP/1.1 200 OK
Date: Thu, 19 Nov 2009 11:27:47 GMT
Content-Length: 7256280
Content-Disposition: attachment; filename="Dardem - Nada.zip";
Content-Type: application/zip
Allows a user to download tracks purchased in a transaction as a single ZIP file. The highest quality available for each track will be used. Endpoint's full location: http://media.geo.7digital.com/media/user/download/purchase
Example request: http://media.geo.7digital.com/media/user/download/purchase?purchaseId=123456&country-US&oauth_consumer_key=YOUR_KEY_HERE&...
Attribute | Type | Description |
---|---|---|
oauth_token / userId required | string | If you hold a 7digital oauth access token for the user streaming the track this needs to be provided. If not, you can pass your own identifier of the user (ID, GUID, username, etc). For streaming services that don't require users to sign in, please contact us for alternative options of providing user identification (e.g. device IDs, autogenerated IDs stored in a cookie). |
purchaseId required | integer | This is the 7digital ID of the purchase as returned by the user/purchase/* or user/deliveritem methods. |
country required | string | ISO 2-character code of the country the end user resides in. |
Method specific error codes:
1001
- Error: Missing "parameter name" query parameter. Not all mandatory parameters were specified in the request.
1002
- Invalid value for "parameter name": parameter value Value for parameter in error message is not valid.
2002
- No licences found for the download request. Either the purchase Id supplied does not exist or does not belong to the user supplied, or the user does not exist.
HTTP/1.1 200 OK
Date: Thu, 19 Nov 2009 11:27:47 GMT
Content-Length: 7256280
Content-Disposition: attachment; filename="7digital_Downloads_21-10-2010.zip";
Content-Type: application/zip
If authorisation is successful the bytes for the clip will be returned to the client. Request url should not be stored for reuse since it expires. Endpoint's full location: http://previews.7digital.com/clip
Example request: http://previews.7digital.com/clip/1234?oauth_consumer_key=YOUR_KEY_HERE&country=GB&...
Attribute | Type | Description |
---|---|---|
trackId required | integer | The 7digital ID of the track. |
country required | string | ISO 2-character code of the country the end user resides in. |
Method specific error codes:
HTTP: 404
- Track not found: {reason}. The requested track does not have a preview available.
HTTP: 401
- Error: Authorisation failed. The request could not be authorised successfully.
HTTP: 400
- Invalid trackId. The trackId specified is not in a valid format.
HTTP: 400
- Required parameter Country or ShopId is missing. The country/shopId parameter is missing.
HTTP/1.1 200 OK
Content-Length: 240534
Content-Type: audio/mpeg
Returns a paged list of releases and tracks for a user's locker (collection of all purchased tracks).
Download limits - several licensors restrict the number of times their content can be re-downloaded. This is indicated in the lockerTrack.remainingDownloads property. If the value reaches 0 then the given track can't be re-downloaded anymore (download attempts resulting in an error message). Given the download limits vary from licensor to licensor we DO NOT recommend to display the remaining downloads to end users to avoid confusion. But we DO recommend to disable the download button (and provide an explanatory message) when all downloads have been used up. To improve end user experience you can also display a friendly warning when only 1 last re-download remains. Streaming from locker does not affect remaining downloads and tracks with their re-download limits used up can still be streamed.
Availability - in some cases releases might be removed from the 7digital catalogue (or from a particular service only), this is indicated in the lockerRelease.available property. If the value is set to false all tracks from this release in the user's locker are no longer available for re-download. In these cases, properties that are irrelevant to unavailable content, such as download, downloadUrls and remainingDownloads will no longer be available on the release:
Example of a taken down release in XML:
<lockerRelease>
<release id="662888">
<title>Do You Want The Truth Or Something Beautiful?</title>
<version>Live From BBC 1's Radio Live Lounge</version>
<type>Single</type>
<barcode>884977432688</barcode>
<artist id="329482">
<name>Paloma Faith</name>
<appearsAs>Paloma Faith</appearsAs>
<slug>paloma-faith</slug>
</artist>
<slug>do-you-want-the-truth-or-something-beautiful-2</slug>
<image>http://artwork-cdn.7static.com/static/img/sleeveart/00/006/628/2888_50.jpg</image>
<label id="1085">
<name>Epic</name>
</label>
<licensor id="2">
<name>Sony Music</name>
</licensor>
</release>
<lockerTracks>
<lockerTrack>
<track id="7352778">
<title>Do You Want The Truth Or Something Beautiful?</title>
<version>Jonny L Remix</version>
<artist id="329482">
<name>Paloma Faith</name>
<appearsAs>Paloma Faith</appearsAs>
<slug>paloma-faith</slug>
</artist>
<trackNumber>3</trackNumber>
<duration>335</duration>
<isrc>GBARL0901537</isrc>
<discNumber>1</discNumber>
<number>3</number>
</track>
<purchaseId>0</purchaseId>
<purchaseDate>2010-01-13T21:19:58.81Z</purchaseDate>
<completeAlbumPurchase>false</completeAlbumPurchase>
</lockerTrack>
</lockerTracks>
<available>false</available>
</lockerRelease>
Example of a taken down release in JSON:
"lockerRelease": [
{
"release": {
"id": 662888,
"title": "Do You Want The Truth Or Something Beautiful?",
"version": "Live From BBC 1's Radio Live Lounge",
"type": "Single",
"barcode": "884977432688",
"artist": {
"id": 329482,
"name": "Paloma Faith",
"appearsAs": "Paloma Faith",
"slug": "paloma-faith"
},
"slug": "do-you-want-the-truth-or-something-beautiful-2",
"image": "http://artwork-cdn.7static.com/static/img/sleeveart/00/628/88_50.jpg",
"label": {
"id": 1085,
"name": "Epic"
},
"licensor": {
"id": 2,
"name": "Sony Music"
}
},
"lockerTracks": {
"lockerTrack": [
{
"track": {
"id": 7352778,
"title": "Do You Want The Truth Or Something Beautiful?",
"version": "Jonny L Remix",
"artist": {
"id": 329482,
"name": "Paloma Faith",
"appearsAs": "Paloma Faith",
"slug": "paloma-faith"
},
"trackNumber": 3,
"duration": 335,
"isrc": "GBARL0901537",
"disc": 1,
"number": 3
},
"purchaseId": 0,
"purchaseDate": "2010-01-13T21:19:58.81Z",
"completeAlbumPurchase": false,
"downloadUrls": null
}
]
},
"available": false
}
]
Any attempts to download (or stream) these tracks will result in an error page being returned by the relevant media delivery endpoint (instead of the actual media file). We recommend not to provide a download (or play) button in the end user interface (or disable/grey it out) for any releases with lockerRelease.available set to false.
Example request: http://api.7digital.com/1.2/user/locker?country=GB&sort=purchaseDate%20desc&oauth_token=...
Attribute | Type | Description |
---|---|---|
oauth_token / userId required | integer | If you hold a 7digital oauth access token for the user this needs to be provided. If not, you can pass your own identifier for the user you created (ID, GUID, username, etc). |
pagesize | integer | Sets the number of releases that will be returned per page. The default is 10, the maximum is 50. |
page | integer | Sets the page to be returned in a paged list of the customers releases and tracks; by default this is the first page (page=1). |
country required | string | ISO 2-character country code which the end user resides in. |
releaseId | integer | The 7digital ID of the release you wish to filter down to, a specific release from the user's locker should be returned. Will return an empty locker response if no match is found on the releaseId. |
trackId | integer | If supplied together with the releaseId, will returned only that specific track (provided it exists in user locker). Will return an empty locker response if no match is found. |
purchaseId | integer | If supplied will return only the releases and tracks for that basket indicated by the purchaseId. Will return an error if no tracks are found. |
sort | string | Orders the returned results. Supplied as a string in the format: "{sortColumn} {sortOrder}", for example: "purchaseDate desc" will show recent purchases first. Currently you can sort by releaseTitle (asc or desc), purchaseDate (asc or desc) or artistName (asc or desc). Defaults to "releaseTitle asc". |
<response status="ok" version="1.2">
<locker>
<lockerReleases>
<page>1</page>
<pageSize>10</pageSize>
<totalItems>1</totalItems>
<lockerRelease>
<release id="302123">
<title>Original Album Classics</title>
<version/>
<type>Album</type>
<artist id="1194">
<name>Patti Smith</name>
<appearsAs>Patti Smith</appearsAs>
<slug>patti-smith</slug>
</artist>
<slug>original-album-classics</slug>
<image>http://artwork-cdn.7static.com/static/img/sleeveart/00/003/021/0000302123_50.jpg</image>
<licensor id="2">
<name>Sony Music</name>
</licensor>
<download>
<releaseDate>2008-06-16T00:00:00+01:00</releaseDate>
</download>
<label id="92">
<name>Arista</name>
</label>
</release>
<lockerTracks>
<lockerTrack>
<track id="3544116">
<title>Gloria</title>
<version>Digitally Remastered 1996</version>
<artist id="1194">
<name>Patti Smith</name>
<appearsAs>Patti Smith</appearsAs>
<slug>patti-smith</slug>
</artist>
<trackNumber>2</trackNumber>
<duration>150</duration>
<isrc>USRC10301017</isrc>
<discNumber>1</discNumber>
<number>2</number>
</track>
<remainingDownloads>355</remainingDownloads>
<purchaseDate>2009-07-22T11:41:41+01:00</purchaseDate>
<downloadUrls>
<downloadUrl>
<url>http://media.geo.7digital.com/media/user/downloadtrack...</url>
<format id="17">
<description>MP3 320</description>
</format>
</downloadUrl>
</downloadUrls>
</lockerTrack>
</lockerTracks>
<available>true</available>
</lockerRelease>
</lockerReleases>
</locker>
</response>
{
"status": "ok",
"version": "1.2",
"schema": "http://api.7digital.com/1.2/static/7digitalAPI.xsd",
"locker": {
"lockerReleases": {
"page": 1,
"pageSize": 10,
"totalItems": 1,
"lockerRelease": [
{
"release": {
"id": 569720,
"title": "Awake",
"version": "",
"type": "Album",
"barcode": "075679983732",
"artist": {
"id": 4617,
"name": "Skillet",
"appearsAs": "Skillet",
"slug": "skillet"
},
"slug": "awake-569720",
"image": "http://artwork-cdn.7static.com/static/img/sleeveart/00/005/697/0000569720_50.jpg",
"label": {
"id": 116,
"name": "Atlantic Records"
},
"licensor": {
"id": 18,
"name": "Warner"
},
"download": {
"releaseDate": "2013-10-21T13:00:00Z"
}
},
"lockerTracks": {
"lockerTrack": [
{
"track": {
"id": 6313215,
"title": "Hero",
"version": "",
"artist": {
"id": 4617,
"name": "Skillet",
"appearsAs": "Skillet",
"slug": "skillet"
},
"trackNumber": 1,
"duration": 190,
"isrc": "USAT20901852",
"disc": 1,
"number": 1
},
"remainingDownloads": 10,
"purchaseId": 824007092,
"purchaseDate": "2017-03-21T11:51:13.77Z",
"completeAlbumPurchase": true,
"downloadUrls": {
"downloadUrl": [
{
"url": "http://media.geo.7digital.com/media/user/downloadtrack?formatid=17&releaseid=569720&shopid=1064&trackid=6313215",
"format": {
"id": 17,
"description": "MP3 320"
}
},
{
"url": "http://media.geo.7digital.com/media/user/downloadtrack?formatid=48&releaseid=569720&shopid=1064&trackid=6313215",
"format": {
"id": 48,
"description": "MP3 256"
}
}
]
}
}
]
},
"available": true
}
]
}
}
}
This contains endpoints for updating/editing partner or user based playlists. See also Playlists-User if you are creating and viewing user based playlists, and Playlists-Partner for Partner specific playlist functionality.
Partner Playlists: Playlist that you may create that you wish to be visible to all your users.
User Playlists: Playlists that are tied to userids, to enable users to create their own personal playlists.
Returns playlist details and track listing.
Access to private playlists is only allowed when an oauth_token or userId of the playlist owner is provided, or the partner owns the playlist.
Example request: http://api.7digital.com/1.2/playlists/51ed5cfec9021614f462bb7b?oauth_consumer_key=YOUR_KEY_HERE
Attribute | Type | Description |
---|---|---|
country required | string | The ISO 2-character code of the country to which your oauth_consumer_key has access. |
oauth_token / userId | string | If this is a user playlist you will need to pass either the 7digital oauth access token for the user, or your own user identifier you created (ID, GUID, username, etc). |
<response status="ok" version="1.2">
<playlist id="51ed5cfec9021614f462bb7b">
<name>My Chillout Mix</name>
<visibility>Private</visibility>
<image>http://artwork-cdn.7static.com/static/img/sleeveart/00/004/963/0000496338_$size$.jpg</image>
<description>Laid back listening</description>
<status>published</status>
<tracks>
<track>
<playlistItemId>524ae1a1c90216252c1837ab</playlistItemId>
<trackId>29675004</trackId>
<trackTitle>Lux</trackTitle>
<trackVersion></trackVersion>
<artistAppearsAs>Empire Of The Sun</artistAppearsAs>
<releaseId>2766569</releaseId>
<releaseTitle>Ice On The Dune</releaseTitle>
<releaseArtistAppearsAs>Ice On The Dune</releaseArtistAppearsAs>
<releaseVersion/>
<source>7digital</source>
<audioUrl>http://stream.svc.7digital.net/stream/catalogue?trackId=5495893</audioUrl>
<user>id:4874383</user>
<track>
</tracks>
<annotations>
<annotation key="key">value</annotation>
</annotations>
<lastUpdated>2013-10-02T12:16:04.615Z</lastUpdated>
</playlist>
</response>
{
"playlist": {
"id": "51ed5cfec9021614f462bb7b",
"name": "My Chillout Mix",
"status": "published",
"visibility": "Private",
"image": "http://artwork-cdn.7static.com/static/img/sleeveart/00/004/963/0000496338_$size$.jpg",
"description": "Laid back listening",
"tracks": [{
"playlistItemId": "52cd88c2c902161660aeab80",
"trackId": "5495893",
"trackTitle": "No You Girls",
"trackVersion": "Trentmoller Remix",
"artistAppearsAs": "Franz Ferdinand",
"releaseId": "496338",
"releaseTitle": "No You Girls Remixes Part 2",
"releaseArtistAppearsAs": "Franz Ferdinand",
"releaseVersion": "Digital Download",
"source": "7digital",
"audioUrl": "http://stream.svc.7digital.net/stream/catalogue?trackId=5495893",
"user": "id:4874383",
}],
"annotations": {
"key": "value"
},
"lastUpdated": "2013-10-02T12:16:04.615Z"
}
}
Replaces a playlist at {playlistId} with the supplied playlist.
This method is intended to be used when multiple changes have been made to playlist off-line. If the user is online each individual change to playlist should be submitted as it happens, using the endpoints for modifying playlist details, adding and deleting individual tracks.
A status can be any custom string, that you can use to filter on at a later date using the ~/playlists request.
Example request: POST http://api.7digital.com/1.2/playlists/51ed5cfec9021614f462bb7b
Authorization: OAuth realm="...", oauth_consumer_key="YOUR_KEY_HERE", oauth_token="..."
Content-type: application/json
{
"name": "party time",
"status": "published",
"visibility": "Public",
"imageUrl": "http://artwork-cdn.7static.com/static/img/sleeveart/00/004/963/0000496338_$size$.jpg",
"description": "Hits to get the party started",
"tracks" : [
{
"trackId" : "5495893",
"trackTitle" : "No You Girls",
"trackVersion" : "Trentmoller Remix",
"artistAppearsAs" : "Franz Ferdinand",
"releaseId" : "496338",
"releaseTitle" : "No You Girls Remixes Part 2",
"releaseArtistAppearsAs" : "Franz Ferdinand",
"releaseVersion" : "Digital Download",
"source" : "7digital"
}],
"annotations" :
{
"key" : "value",
"anotherkey" : "another value"
}
}
Attribute | Type | Description |
---|---|---|
country required | string | The ISO 2-character code of the country to which your oauth_consumer_key has access. |
oauth_token / userId | string | If this is a user playlist you will need to pass either the 7digital oauth access token for the user, or your own user identifier you created (ID, GUID, username, etc). |
<response status="ok" version="1.2">
<playlist id="51ed5cfec9021614f462bb7b">
<name>party time</name>
<description>Hits to get the party started</description>
<status>published</status>
<visibility>Public</visibility>
<image>http://artwork-cdn.7static.com/static/img/sleeveart/00/004/963/0000496338_$size$.jpg</image>
<description>http://artwork-cdn.7static.com/static/img/sleeveart/00/004/963/0000496338_$size$.jpg</description>
<tracks>
<track>
<playlistItemId>524ae1a1c90216252c1837ab</playlistItemId>
<trackId>5495893</trackId>
<trackTitle>No You Girls</trackTitle>
<trackVersion>Trentmoller Remix</trackVersion>
<artistAppearsAs>Franz Ferdinand</artistAppearsAs>
<releaseId>496338</releaseId>
<releaseTitle>No You Girls Remixes Part 2</releaseTitle>
<releaseArtistAppearsAs>Franz Ferdinand</releaseArtistAppearsAs>
<releaseVersion>Digital Download<releaseVersion/>
<source>7digital</source>
<audioUrl>http://stream.svc.7digital.net/stream/catalogue?trackId=5495893</audioUrl>
<user>id:4874383</user>
<image>http://artwork-cdn.7static.com/static/img/sleeveart/00/004/963/0000496338_$size$.jpg</image>
<track>
</tracks>
<annotations>
<annotation key="key">value</annotation>
<annotation key="anotherkey">another value</annotation>
</annotations>
<lastUpdated>2013-10-02T12:16:04.615Z</lastUpdated>
</playlist>
</response>
Deletes the playlist at {playlistId}.
This action is irreversible - deleted playlists can't be recovered. We advise you to ask users for confirmation or delay calling the API by couple of seconds whilst providing users with option to undo their action.
Example request: DELETE http://api.7digital.com/1.2/playlists/51ed5cfec9021614f462bb7b
Attribute | Type | Description |
---|---|---|
country required | string | The ISO 2-character code of the country to which your oauth_consumer_key has access. |
oauth_token / userId | string | If this is a user playlist you will need to pass either the 7digital oauth access token for the user, or your own user identifier you created (ID, GUID, username, etc). |
HTTP/1.1 200 OK
Returns details of given playlist without including all playlist tracks in the response.
Example request: http://api.7digital.com/1.2/playlists/51ed5cfec9021614f462bb7b/details?oauth_consumer_key=YOUR_KEY_HERE
Attribute | Type | Description |
---|---|---|
country required | string | The ISO 2-character code of the country to which your oauth_consumer_key has access. |
oauth_token / userId | string | If this is a user playlist you will need to pass either the 7digital oauth access token for the user, or your own user identifier you created (ID, GUID, username, etc). |
<response status="ok" version="1.2">
<playlist id="51ed5cfec9021614f462bb7b">
<name>My Chillout Mix</name>
<status>published</status>
<visibility>Public</visibility>
<image>http://artwork-cdn.7static.com/static/img/sleeveart/00/004/963/0000496338_$size$.jpg</image>
<description>Laid back listening</description>
<annotations>
<annotation key="key">value</annotation>
</annotations>
<lastUpdated>2013-10-02T12:16:04.615Z</lastUpdated>
</playlist>
</response>
{
"playlist": {
"id": "51ed5cfec9021614f462bb7b",
"name": "My Chillout Mix",
"visibility": "Public",
"image": "http://artwork-cdn.7static.com/static/img/sleeveart/00/004/963/0000496338_$size$.jpg",
"description": "Laid back listening",
"status": "published",
"annotations": {
"key": "value",
},
"lastUpdated": "2013-10-02T12:16:04.615Z"
}
}
Updates playlist details at {playlistId} with the supplied playlist details.
It does not affect playlist tracks. Use this method e.g. for changing visibility of the playlist from private to public.
Descriptions are limited to 500 characters. Descriptions over this length are truncated.
Example request: POST http://api.7digital.com/1.2/playlists/51ed5cfec9021614f462bb7b/details
Authorization: OAuth realm="...", oauth_consumer_key="YOUR_KEY_HERE", oauth_token="..."
Content-type: application/json
{
"name": "party time",
"visibility": "Public",
"imageUrl": "http://artwork-cdn.7static.com/static/img/sleeveart/00/004/963/0000496338_$size$.jpg",
"description": "Laid back listening",
"annotations": {
"key": "value"
}
}
Attribute | Type | Description |
---|---|---|
country required | string | The ISO 2-character code of the country to which your oauth_consumer_key has access. |
oauth_token / userId | string | If this is a user playlist you will need to pass either the 7digital oauth access token for the user, or your own user identifier you created (ID, GUID, username, etc). |
HTTP/1.1 200 OK
Location: http://api.7digital.com/1.2/playlists/51ed5cfec9021614f462bb7b
Returns tracks of given playlist, and allows for pagination.
Example request: http://api.7digital.com/1.2/playlists/51ed5cfec9021614f462bb7b/tracks?page=1&pagesize=2&oauth_consumer_key=YOUR_KEY_HERE
Attribute | Type | Description |
---|---|---|
country required | string | The ISO 2-character code of the country to which your oauth_consumer_key has access. |
oauth_token / userId | string | If this is a user playlist you will need to pass either the 7digital oauth access token for the user, or your own user identifier you created (ID, GUID, username, etc). |
page | integer - default: 1 | Page number of the result set. |
pageSize | integer - default: 10 | Number of items to be returned per page. Maximum page size is 500 |
<response status="ok" version="1.2">
<tracks>
<page>1</page>
<pageSize>2</pageSize>
<totalItems>81</totalItems>
<track id="52cd88c2c902161660aeab80">
<trackId>5495893</trackId>
<trackTitle>No You Girls</trackTitle>
<trackVersion>Trentmoller Remix</trackVersion>
<artistAppearsAs>Franz Ferdinand</artistAppearsAs>
<releaseId>496338</releaseId>
<releaseTitle>No You Girls Remixes Part 2</releaseTitle>
<releaseArtistAppearsAs>Franz Ferdinand</releaseArtistAppearsAs>
<releaseVersion/>
<source>7digital</source>
<audioUrl>http://stream.svc.7digital.net/stream/catalogue?trackId=5495893</audioUrl>
<user>id:4874383</user>
<image>http://artwork-cdn.7static.com/static/img/sleeveart/00/004/963/0000496338_$size$.jpg</image>
</track>
<track id="52cd88c2c902161660aeab81">
<trackId>3121833</trackId>
<trackTitle>Kids</trackTitle>
<trackVersion></trackVersion>
<artistAppearsAs>MGMT</artistAppearsAs>
<releaseId>280218</releaseId>
<releaseTitle>Oracula Spectacular</releaseTitle>
<releaseArtistAppearsAs>MGMT</releaseArtistAppearsAs>
<releaseVersion/>
<source>7digital</source>
<audioUrl>http://stream.svc.7digital.net/stream/catalogue?trackId=3121833</audioUrl>
<user>id:4874383</user>
<image>http://artwork-cdn.7static.com/static/img/sleeveart/00/002/802/0000280218_$size$.jpg</image>
</track>
</tracks>
</response>
{
"page": 1,
"pageSize": 2,
"totalItems": 81,
"tracks" : [{
"playlistItemId" : "52cd88c2c902161660aeab80",
"trackId" : "5495893",
"trackTitle" : "No You Girls",
"trackVersion" : "Trentmoller Remix",
"artistAppearsAs" : "Franz Ferdinand",
"releaseId" : "496338",
"eleaseTitle" : "No You Girls Remixes Part 2",
"releaseArtistAppearsAs" : "Franz Ferdinand",
"releaseVersion" : "Digital Download",
"source" : "7digital",
"audioUrl" : "http://stream.svc.7digital.net/stream/catalogue?trackId=5495893",
"user" : "id:4874383",
"image" : "http://artwork-cdn.7static.com/static/img/sleeveart/00/004/963/0000496338_$size$.jpg"
},
{
"playlistItemId" : "52cd88c2c902161660aeab81",
"trackId" : "3121833",
"trackTitle" : "Kids",
"trackVersion" : "",
"artistAppearsAs" : "MGMT",
"releaseId" : "280218",
"releaseTitle" : "Oracula Spectacular",
"releaseArtistAppearsAs" : "MGMT",
"releaseVersion" : "",
"source" : "7digital",
"audioUrl" : "http://stream.svc.7digital.net/stream/catalogue?trackId=3121833",
"user" : "id:4874383",
"image" : "http://artwork-cdn.7static.com/static/img/sleeveart/00/002/802/0000280218_$size$.jpg"
}]
}
Adds an array of tracks to the playlist at {playlistId}.
All metadata (e.g. track title, artist, etc) for tracks needs to be provided in the API call.
The "source" property is optional, and defaults to 7digital. This relates to the audioUrl and image response and can be used to indicate a different source for the physical file, it can be any string you want as long as the application you use to add the track can understand it.
The "audioUrl" property is optional and allows you to specify a different source for the physical file e.g. source="local" and audioUrl="file://a.specific.file.location.mp3" could mean that the consuming application understands how to handle a file stored at the given audioUrl.
It is advisable that you only use these extra parameters if you need to use them. It's also advisable if you are accessing public playlists that some tracks may not be playable by your application, so we would advise including an option to hide, grey out non source=7digital tracks.
Example request: POST http://api.7digital.com/1.2/playlists/51ed5cfec9021614f462bb7b/tracks
Authorization: OAuth realm="...", oauth_consumer_key="YOUR_KEY_HERE", oauth_token="..."
Content-type: application/json
[{
"trackId" : "5495893",
"trackTitle" : "No You Girls",
"trackVersion" : "Trentmoller Remix",
"artistAppearsAs" : "Franz Ferdinand",
"releaseId" : "496338",
"releaseTitle" : "No You Girls Remixes Part 2",
"releaseArtistAppearsAs" : "Franz Ferdinand",
"releaseVersion" : "Digital Download",
"source" : "7digital"
},
{
"trackId" : "3121833",
"trackTitle" : "Kids",
"trackVersion" : "",
"artistAppearsAs" : "MGMT",
"releaseId" : "280218",
"releaseTitle" : "Oracula Spectacular",
"releaseArtistAppearsAs" : "MGMT",
"releaseVersion" : "",
"source" : "local",
"audioUrl" : "file://a.specific.file.location.mp3"
}]
Attribute | Type | Description |
---|---|---|
country required | string | The ISO 2-character code of the country to which your oauth_consumer_key has access. |
oauth_token / userId | string | If this is a user playlist you will need to pass either the 7digital oauth access token for the user, or your own user identifier you created (ID, GUID, username, etc). |
<response status="ok" version="1.2">
<playlist id="51ed5cfec9021614f462bb7b">
<name>My Chillout Mix</name>
<status>published</status>
<visibility>Public</visibility>
<image>http://artwork-cdn.7static.com/static/img/sleeveart/00/004/963/0000496338_$size$.jpg</image>
<description>Laid back listening</description>
<tracks>
<track>
<playlistItemId>52cd88c2c902161660aeab80</playlistItemId>
<trackId>5495893</trackId>
<trackTitle>No You Girls</trackTitle>
<trackVersion>Trentmoller Remix</trackVersion>
<artistAppearsAs>Franz Ferdinand</artistAppearsAs>
<releaseId>496338</releaseId>
<releaseTitle>No You Girls Remixes Part 2</releaseTitle>
<releaseArtistAppearsAs>Franz Ferdinand</releaseArtistAppearsAs>
<releaseVersion/>
<source>7digital</source>
<audioUrl>http://stream.svc.7digital.net/stream/catalogue?trackId=5495893</audioUrl>
<user>id:4874383</user>
<image>http://artwork-cdn.7static.com/static/img/sleeveart/00/004/963/0000496338_$size$.jpg</image>
</track>
<track>
<playlistItemId>52cd88c2c902161660aeab81</playlistItemId>
<trackId>3121833</trackId>
<trackTitle>Kids</trackTitle>
<trackVersion></trackVersion>
<artistAppearsAs>MGMT</artistAppearsAs>
<releaseId>280218</releaseId>
<releaseTitle>Oracula Spectacular</releaseTitle>
<releaseArtistAppearsAs>MGMT</releaseArtistAppearsAs>
<releaseVersion/>
<source>7digital</source>
<audioUrl>http://stream.svc.7digital.net/stream/catalogue?trackId=3121833</audioUrl>
<user>id:4874383</user>
<image>http://artwork-cdn.7static.com/static/img/sleeveart/00/002/802/0000280218_$size$.jpg</image>
</track>
</tracks>
<annotations />
<lastUpdated>2013-10-02T12:16:04.615Z</lastUpdated>
</playlist>
</response>
{
"playlist": {
"id": "51ed5cfec9021614f462bb7b",
"name": "My Chillout Mix",
"status": "published",
"visibility": "Public",
"image": "http://artwork-cdn.7static.com/static/img/sleeveart/00/004/963/0000496338_$size$.jpg",
"description": "Laid back listening",
"tracks" : [{
"playlistItemId" : "52cd88c2c902161660aeab80",
"trackId" : "5495893",
"trackTitle" : "No You Girls",
"trackVersion" : "Trentmoller Remix",
"artistAppearsAs" : "Franz Ferdinand",
"releaseId" : "496338",
"eleaseTitle" : "No You Girls Remixes Part 2",
"releaseArtistAppearsAs" : "Franz Ferdinand",
"releaseVersion" : "Digital Download",
"source" : "7digital",
"audioUrl" : "http://stream.svc.7digital.net/stream/catalogue?trackId=5495893",
"user" : "id:4874383",
"image" : "http://artwork-cdn.7static.com/static/img/sleeveart/00/004/963/0000496338_$size$.jpg"
},
{
"playlistItemId" : "52cd88c2c902161660aeab81",
"trackId" : "3121833",
"trackTitle" : "Kids",
"trackVersion" : "",
"artistAppearsAs" : "MGMT",
"releaseId" : "280218",
"releaseTitle" : "Oracula Spectacular",
"releaseArtistAppearsAs" : "MGMT",
"releaseVersion" : "",
"source" : "7digital",
"audioUrl" : "http://stream.svc.7digital.net/stream/catalogue?trackId=3121833",
"user" : "id:4874383",
"image" : "http://artwork-cdn.7static.com/static/img/sleeveart/00/002/802/0000280218_$size$.jpg"
}],
"annotations": { },
"lastUpdated": "2013-10-02T12:16:04.615Z"
}
}
Removes the specified track {playlisttrackid} from the specified playlist at {playlistId}.
Example request: DELETE
http://api.7digital.com/1.2/playlists/51ed5cfec9021614f462bb7b/tracks/52cd88c2c902161660aeab81?oauth_consumer_key=YOUR_KEY_HERE&oauth_token=...
Attribute | Type | Description |
---|---|---|
country required | string | The ISO 2-character code of the country to which your oauth_consumer_key has access. |
oauth_token / userId | string | If this is a user playlist you will need to pass either the 7digital oauth access token for the user, or your own user identifier you created (ID, GUID, username, etc). |
<response status="ok" version="1.2">
<playlist id="51ed5cfec9021614f462bb7b">
<name>My Chillout Mix</name>
<status>published</status>
<visibility>Public</visibility>
<image>http://artwork-cdn.7static.com/static/img/sleeveart/00/004/963/0000496338_$size$.jpg</image>
<description>Laid back listening</description>
<tracks>
<track>
<playlistItemId>52cd88c2c902161660aeab80</playlistItemId>
<trackId>5495893</trackId>
<trackTitle>No You Girls</trackTitle>
<trackVersion>Trentmoller Remix</trackVersion>
<artistAppearsAs>Franz Ferdinand</artistAppearsAs>
<releaseId>496338</releaseId>
<releaseTitle>No You Girls Remixes Part 2</releaseTitle>
<releaseArtistAppearsAs>Franz Ferdinand</releaseArtistAppearsAs>
<releaseVersion/>
<source>7digital</source>
<audioUrl>http://stream.svc.7digital.net/stream/catalogue?trackId=5495893</audioUrl>
<user>id:4874383</user>
<image>http://artwork-cdn.7static.com/static/img/sleeveart/00/004/963/0000496338_$size$.jpg</image>
</track>
</tracks>
<annotations />
<lastUpdated>2013-10-02T12:16:04.615Z</lastUpdated>
</playlist>
</response>
Moves the specified track {playlisttrackid} from the specified playlist at {playlistId}, to a location dictated by the "pos" parameter of the POST request data.
The "pos" parameter is the playlistTrackId of the track you wish your selected track to appear AFTER. A value of "0" indicates you wish to place the track at the front of the list.
NOTE: Tracks can also be rearranged at the client side and then posted back to the ~/playlists/{playlistId} endpoint, this offers a lightweight way of doing the same thing.
Example request: POST
http://api.7digital.com/1.2/playlists/51ed5cfec9021614f462bb7b/tracks/524ae1a1c90216252c1837ab/move
Authorization: OAuth realm="...", oauth_consumer_key="YOUR_KEY_HERE", oauth_token="..."
Content-type: application/json
{"pos" : "524ae1a1c90216252c1837cd"}
Example request: POST
http://api.7digital.com/1.2/playlists/51ed5cfec9021614f462bb7b/tracks/524ae1a1c90216252c1837ab/move
Authorization: OAuth realm="...", oauth_consumer_key="YOUR_KEY_HERE", oauth_token="..."
Content-type: application/x-www-form-urlencoded
pos=524ae1a1c90216252c1837cd
Attribute | Type | Description |
---|---|---|
country required | string | The ISO 2-character code of the country to which your oauth_consumer_key has access. |
oauth_token / userId | string | If this is a user playlist you will need to pass either the 7digital oauth access token for the user, or your own user identifier you created (ID, GUID, username, etc). |
<response status="ok" version="1.2">
<playlist id="51ed5cfec9021614f462bb7b">
<name>My Chillout Mix</name>
<status>published</status>
<visibility>Public</visibility>
<image>http://artwork-cdn.7static.com/static/img/sleeveart/00/004/963/0000496338_$size$.jpg</image>
<description>Laid back listening</description>
<tracks>
<track>
<playlistItemId>52cd88c2c902161660aeab80</playlistItemId>
<trackId>5495893</trackId>
<trackTitle>No You Girls</trackTitle>
<trackVersion>Trentmoller Remix</trackVersion>
<artistAppearsAs>Franz Ferdinand</artistAppearsAs>
<releaseId>496338</releaseId>
<releaseTitle>No You Girls Remixes Part 2</releaseTitle>
<releaseArtistAppearsAs>Franz Ferdinand</releaseArtistAppearsAs>
<releaseVersion/>
<source>7digital</source>
<audioUrl>http://stream.svc.7digital.net/stream/catalogue?trackId=5495893</audioUrl>
<user>id:4874383</user>
<image>http://artwork-cdn.7static.com/static/img/sleeveart/00/004/963/0000496338_$size$.jpg</image>
</track>
<track>
<playlistItemId>52cd88c2c902161660aeab81</playlistItemId>
<trackId>3121833</trackId>
<trackTitle>Kids</trackTitle>
<trackVersion></trackVersion>
<artistAppearsAs>MGMT</artistAppearsAs>
<releaseId>280218</releaseId>
<releaseTitle>Oracula Spectacular</releaseTitle>
<releaseArtistAppearsAs>MGMT</releaseArtistAppearsAs>
<releaseVersion/>
<source>7digital</source>
<audioUrl>http://stream.svc.7digital.net/stream/catalogue?trackId=3121833</audioUrl>
<user>id:4874383</user>
<image>http://artwork-cdn.7static.com/static/img/sleeveart/00/002/802/0000280218_$size$.jpg</image>
</track>
</tracks>
<annotations />
<lastUpdated>2013-10-02T12:16:04.615Z</lastUpdated>
</playlist>
</response>
{
"playlist": {
"id": "51ed5cfec9021614f462bb7b",
"name": "My Chillout Mix",
"status": "published",
"visibility": "Public",
"image":"http://artwork-cdn.7static.com/static/img/sleeveart/00/004/963/0000496338_$size$.jpg",
"description":"Laid back listening",
"tracks" : [{
"playlistItemId" : "52cd88c2c902161660aeab80",
"trackId" : "5495893",
"trackTitle" : "No You Girls",
"trackVersion" : "Trentmoller Remix",
"artistAppearsAs" : "Franz Ferdinand",
"releaseId" : "496338",
"releaseTitle" : "No You Girls Remixes Part 2",
"releaseArtistAppearsAs" : "Franz Ferdinand",
"releaseVersion" : "Digital Download",
"source" : "7digital",
"audioUrl" : "http://stream.svc.7digital.net/stream/catalogue?trackId=5495893",
"user" : "id:4874383",
"image" : "http://artwork-cdn.7static.com/static/img/sleeveart/00/004/963/0000496338_$size$.jpg"
},
{
"playlistItemId" : "52cd88c2c902161660aeab81",
"trackId" : "3121833",
"trackTitle" : "Kids",
"trackVersion" : "",
"artistAppearsAs" : "MGMT",
"releaseId" : "280218",
"releaseTitle" : "Oracula Spectacular",
"releaseArtistAppearsAs" : "MGMT",
"releaseVersion" : "",
"source" : "7digital",
"audioUrl" : "http://stream.svc.7digital.net/stream/catalogue?trackId=3121833",
"user" : "id:4874383",
"image" : "http://artwork-cdn.7static.com/static/img/sleeveart/00/002/802/0000280218_$size$.jpg"
}],
"annotations": { },
"lastUpdated": "2013-10-02T12:16:04.615Z"
}
}
Partner playlists are Playlists that you wish to be visible to all your users, for example, your company may wish to add some preloaded example playlists, or provide your own curated lists. These endpoints allow you to do that.
Endpoints for further editing these playlists can be found in the Playlists menu tab.
Returns a list of the partner's playlists.
See /user/playlist API method for alternate way of listing only playlists owned by current user.
Query parameters when passed act as an AND rather than an OR
Attribute | Type | Description |
---|---|---|
country required | string | The ISO 2-character code of the country to which your oauth_consumer_key has access. |
oauth_token / userId | string | If this is a user playlist you will need to pass either the 7digital oauth access token for the user, or your own user identifier you created (ID, GUID, username, etc). |
q | string | Filter playlists by playlist name |
visibility | string | Filter playlists by visibility. Supported values are: private, public, partner, publicanduser, all. The visibility filter only applies to partner playlists, if a userId or oauth_token is provided then all that user's playlists are returned. |
status | string | Filter playlists by status. Multiple statuses can be specified as a comma separated list, providing an OR query; e.g. ?status=draft,published returns all playlists with status "draft" OR "published". Returns any "status=published" and playlists without a status if not specified. |
favouritedBy | string | Filter playlists by a user id to return the ones that user has favourited. It must be in the format id:userId e.g. favouritedBy=id:12345. This only applies to partner playlists. |
user | string | This allows you to pass the id of a user you wish to view the playlists of a specific user. It must be in the format id:userId e.g. user=id:12345, and only applies to User playlists. |
page | integer - default: 1 | Page number of the result set. |
pageSize | integer - default: 10 | Number of items to be returned per page. Maximum page size is 500 |
tags | string | Allows filtering of playlist by tags, e.g. "?tags=rock" will return all playlists tagged with "rock". Multiple tags can be specified as a comma separated list, providing an AND query; e.g. "?tags=rock,pop" will return all playlists that are tagged with "rock" AND "pop" |
<response status="ok" version="1.2">
<playlists>
<page>1</page>
<pageSize>10</pageSize>
<totalItems>1</totalItems>
<playlist id="5231cf08278a490db4ede678">
<name>My Chillout Mix</name>
<links>
<link rel="self" href="http://api.7digital.com/1.2/playlists/5231cf08278a490db4ede678"/>
<link rel="details" href="http://api.7digital.com/1.2/playlists/5231cf08278a490db4ede678/details"/>
<link rel="tracks" href="http://api.7digital.com/1.2/playlists/5231cf08278a490db4ede678/tracks"/>
</links>
<trackCount>2</trackCount>
<status>draft</status>
<visibility>Private</visibility>
<annotations>
<annotation key="name">value</annotation>
</annotations>
<lastUpdated>2013-09-12T14:26:13.108Z</lastUpdated>
</playlist>
</playlists>
</response>
{
"playlists":
{
"page":1,
"pageSize":10,
"totalItems":1,
"playlist":[
{
"id": "51ed5cfec9021614f462bb7b",
"name": "My Chillout Mix",
"links": [
{
"rel": "self",
"href": "http://api.7digital.com/1.2/playlists/51ed5cfec9021614f462bb7b"
},
{
"rel": "details",
"href": "http://api.7digital.com/1.2/playlists/51ed5cfec9021614f462bb7b/details"
},
{
"rel": "tracks",
"href": "http://api.7digital.com/1.2/playlists/51ed5cfec9021614f462bb7b/tracks"
}],
"trackCount": 7,
"status": "published"
"visibility": "Public",
"annotations":
{
"key": "value"
},
"lastUpdated": "2013-10-02T12:16:04.615Z"
}]
}
}
Creates a new playlist tied to your partner consumer key.
When creating a new playlist you can provide an inital track listing in the request or create an empty playlists by leaving the "tracks" array empty.
Descriptions are limited to 500 characters. Descriptions over this length are truncated.
A status can be any custom string, and can be used to filter playlists by a single status (e.g. ~/playlists?status=mycustomstatus)
When adding a track to a playlist there are certain properties you can specify, see playlists/{playlistId}/tracks for details
Example request: POST http://api.7digital.com/1.2/playlists
Authorization: OAuth realm="...", oauth_consumer_key="YOUR_KEY_HERE"
Content-type: application/json
{
"name" : "party time",
"visibility" : "Public",
"tracks" : [{
"trackId" : "5495893",
"trackTitle" : "No You Girls",
"trackVersion" : "Trentmoller Remix",
"artistAppearsAs" : "Franz Ferdinand",
"releaseId" : "496338",
"releaseTitle" : "No You Girls Remixes Part 2",
"releaseArtistAppearsAs" : "Franz Ferdinand",
"releaseVersion" : "Digital Download",
"imageUrl": "http://artwork-cdn.7static.com/static/img/sleeveart/00/003/865/0000386513_$size$.jpg",
"description": "A chillout playlist for relaxing to",
"source" : "7digital"
}],
"annotations" : {
"key" : "value",
"anotherkey" : "another value"
}
}
Attribute | Type | Description |
---|---|---|
country required | string | The ISO 2-character code of the country to which your oauth_consumer_key has access. |
oauth_token / userId | string | If this is a user playlist you will need to pass either the 7digital oauth access token for the user, or your own user identifier you created (ID, GUID, username, etc). |
Field | Type | Description |
---|---|---|
name required | string | The name of the playlist |
status | string - default: published | The status of the playlist. Supported values are draft, published. |
visibility | string - default: private | The visibility of the playlist. Supported values are private and public. |
description | string | The description of the playlist |
tracks | string | An array of objects, each of which can contain: trackId (string, optional): a unique identifer for the playlist item trackTitle (string, optional): the name of the playlist item trackVersion (string, optional): the version of the item e.g. deluxe artistAppearsAs (string, optional): the artist name releaseId (string, optional): a unique identifier for the release releaseTitle (string, optional): the title of the release releaseArtistAppearsAs (string, optional): The artist of the release e.g. Various Artists releaseVersion (string, optional): The version of the release |
annotations | string | a hash of any additional parameters to be saved |
<response status="ok" version="1.2">
<playlist id="51ed5cfec9021614f462bb7b">
<name>party time</name>
<visibility>Public</visibility>
<image>http://artwork-cdn.7static.com/static/img/sleeveart/00/004/963/0000496338_$size$.jpg</image>
<description>A playlist to party to</description>
<status>published</status>
<tracks>
<track>
<playlistItemId>524ae1a1c90216252c1837ab</playlistItemId>
<trackId>5495893</trackId>
<trackTitle>No You Girls</trackTitle>
<trackVersion>Trentmoller Remix</trackVersion>
<artistAppearsAs>Franz Ferdinand</artistAppearsAs>
<releaseId>496338</releaseId>
<releaseTitle>No You Girls Remixes Part 2</releaseTitle>
<releaseArtistAppearsAs>Franz Ferdinand</releaseArtistAppearsAs>
<releaseVersion>Digital Download<releaseVersion/>
<source>7digital</source>
<audioUrl>http://stream.svc.7digital.net/stream/catalogue?trackId=5495893</audioUrl>
<user>id:4874383</user>
<track>
</tracks>
<annotations>
<annotation key="key">value</annotation>
<annotation key="anotherkey">another value</annotation>
</annotations>
<lastUpdated>2013-10-02T12:16:04.615Z</lastUpdated>
</playlist>
</response>
Return a list of unique tags that have been added to a partner's playlists.
Tags are returned ordered by the order saved in the ~/playlists/tags POST endpoint, or alphabetically if no order is saved.
Example request: http://api.7digital.com/1.2/playlists/tags?oauth_consumer_key=YOUR_KEY_HERE&oauth_token=...
Attribute | Type | Description |
---|---|---|
country required | string | The ISO 2-character code of the country to which your oauth_consumer_key has access. |
<response status="ok" version="1.2">
<tags>
<tag>
<name>Dance</name>
<hidden>false</hidden>
</tag>
<tag>
<name>Rock</name>
<hidden>true</hidden>
</tag>
<tag>
<name>Pop</name>
<hidden>false</hidden>
</tag>
</tags>
</response>
{
"tags": [{
"name": "Dance",
"hidden": false
}, {
"name": "Rock",
"hidden": true
}, {
"name": "Pop",
"hidden": false
}]
}
Saves the visibility and order of tags against each other for a shop and partner. Any previous order is overwritten.
Example request: POST http://api.7digital.com/1.2/playlists/tags
Authorization: OAuth realm="...", oauth_consumer_key="YOUR_KEY_HERE"
Content-type: application/json
{
"shopId" : 34,
"tags" : [{
"name" : "tag1",
"hidden" : true
}, {
"name" : "tag2",
"hidden" : false
}]
}
Attribute | Type | Description |
---|---|---|
country required | string | The ISO 2-character code of the country to which your oauth_consumer_key has access. |
Field | Type | Description |
---|---|---|
shopId required | number | The shop in which to save the order of tags for |
tags required | string | An array of objects, each of which can contain: name (string, required): The name of the tag hidden (boolean, optional): A flag indicating the visibility of the tag. The flag does not affect which tags are returned and is not reflected in any other playlist endpoints. Defaults to false if omitted. |
<response status="ok" version="1.2">
<shopId>34</shopId>
<tags>
<tag>
<name>Tag1</name>
<hidden>true</hidden>
</tag>
<tag>
<name>Tag2</name>
<hidden>false</hidden>
</tag>
</tags>
</response>
{
"shopId": 34,
"tags": [{
"name": "Tag1",
"hidden": true
}, {
"name": "Tag2",
"hidden": false
}]
}
Favourite the playlist at {playlistId} for user at {userId}. Only partner playlists can be favourited.
Example request: PUT http://api.7digital.com/1.2/playlists/51ed5cfec9021614f462bb7b/favourites/123?oauth_consumer_key=YOUR_KEY_HERE&oauth_token=...
Attribute | Type | Description |
---|---|---|
country required | string | The ISO 2-character code of the country to which your oauth_consumer_key has access. |
HTTP/1.1 200 OK
Unfavourite the playlist at {playlistId} for user at {userId}. Only partner playlists can be favourited.
Example request: DELETE http://api.7digital.com/1.2/playlists/51ed5cfec9021614f462bb7b/favourites/123?oauth_consumer_key=YOUR_KEY_HERE&oauth_token=...
Attribute | Type | Description |
---|---|---|
country required | string | The ISO 2-character code of the country to which your oauth_consumer_key has access. |
HTTP/1.1 200 OK
User playlists are playlists that can be created by signed users and are personal to them. There are also options to allow a user to maintain groups of playlists.
Endpoints will require either a userId or an oauth_token to be supplied.
Endpoints for further editing these playlists can be found in the Playlists menu tab.
Return a list of playlists owned by current user (identified by the provided access token).
Example request: http://api.7digital.com/1.2/user/playlists?oauth_consumer_key=YOUR_KEY_HERE&oauth_token=...
Attribute | Type | Description |
---|---|---|
country required | string | The ISO 2-character code of the country to which your oauth_consumer_key has access. |
oauth_token / userId required | string | You will need to pass either the 7digital oauth access token for the user, or your own user identifier you created (ID, GUID, username, etc). |
<response status="ok" version="1.2">
<playlists>
<page>1</page>
<pageSize>10</pageSize>
<totalItems>1</totalItems>
<playlist id="5231cf08278a490db4ede678">
<name>My Chillout Mix</name>
<links>
<link rel="self" href="http://api.7digital.com/1.2/playlists/5231cf08278a490db4ede678"/>
<link rel="details" href="http://api.7digital.com/1.2/playlists/5231cf08278a490db4ede678/details"/>
<link rel="tracks" href="http://api.7digital.com/1.2/playlists/5231cf08278a490db4ede678/tracks"/>
</links>
<trackCount>2</trackCount>
<status>published</status>
<visibility>Private</visibility>
<annotations>
<annotation key="key">value</annotation>
</annotations>
<image>http://artwork-cdn.7static.com/static/img/sleeveart/00/004/963/0000496338_$size$.jpg</image>
<lastUpdated>2013-09-12T14:26:13.108Z</lastUpdated>
</playlist>
</playlists>
</response>
{
"playlists":{
"page":1,
"pageSize":10,
"totalItems":1,
"playlist":[{
"id" : "51ed5cfec9021614f462bb7b",
"name" : "My Chillout Mix",
"links" : [{
"rel" : "self",
"href" : "http://api.7digital.com/1.2/playlists/51ed5cfec9021614f462bb7b"
},
{
"rel" : "details",
"href" : "http://api.7digital.com/1.2/playlists/51ed5cfec9021614f462bb7b/details"
},
{
"rel" : "tracks",
"href" : "http://api.7digital.com/1.2/playlists/51ed5cfec9021614f462bb7b/tracks"
}],
"trackCount" : 7,
"status": "published",
"visibility" : "Public",
"annotations" : {
"key" : "value"
},
"image" : "http://artwork-cdn.7static.com/static/img/sleeveart/00/004/963/0000496338_$size$.jpg",
"lastUpdated" : "2013-10-02T12:16:04.615Z"
}]
}
}
Returns a list of a users playlist groups
Example request: http://api.7digital.com/1.2/user/playlists/groups?oauth_consumer_key=YOUR_KEY_HERE&oauth_token=...
Attribute | Type | Description |
---|---|---|
country required | string | The ISO 2-character code of the country to which your oauth_consumer_key has access. |
oauth_token / userId required | string | You will need to pass either the 7digital oauth access token for the user, or your own user identifier you created (ID, GUID, username, etc). |
<response status="ok" version="1.2">
<playlistGroups>
<page>1</page>
<pageSize>10</pageSize>
<totalItems>1</totalItems>
<playlistGroup id="5891c01057abd1052cc2bf1b">
<name>My Mix A</name>
<playlistCount>1</playlistCount>
<lastUpdated>2017-02-01T11:01:36.283Z</lastUpdated>
<links>
<link rel="self" href="http://api.7digital.com/1.2/user/playlists/groups/5891c01057abd1052cc2bf1b"/>
</links>
</playlistGroup>
</playlistGroups>
</response>
{
"page": 1,
"pageSize": 10,
"totalItems": 1,
"playlistGroups": [
{
"id": "5891c01057abd1052cc2bf1b",
"name": "My Mix A",
"playlistCount": 1,
"lastUpdated": "2017-02-01T11:01:36.283Z",
"_links": {
"self": {
"href": "http://api.7digital.com/1.2/user/playlists/groups/5891c01057abd1052cc2bf1b"
}
}
}
]
}
Generates a new playlist group by supplying the following example request payload
Example request: POST http://api.7digital.com/1.2/user/playlists/groups
Authorization: OAuth realm="...", oauth_consumer_key="YOUR_KEY_HERE", oauth_token="..."
Content-type: application/json
{
"name" : "My Mix A",
"playlists" : [
"5891c01057abd1052cc2bf1b",
"5891c01057abd1052cc2bf1b"
]
}
Attribute | Type | Description |
---|---|---|
country required | string | The ISO 2-character code of the country to which your oauth_consumer_key has access. |
oauth_token / userId required | string | You will need to pass either the 7digital oauth access token for the user, or your own user identifier you created (ID, GUID, username, etc). |
Field | Type | Description |
---|---|---|
name required | string | The name of the playlist group / mix |
playlists | string | An array of playlistIds, these ids must correspond to existing ids - if they don't they will be ignored on retrieval |
<response status="ok" version="1.2">
<playlistGroups>
<page>1</page>
<pageSize>10</pageSize>
<totalItems>1</totalItems>
<playlistGroup id="5891c01057abd1052cc2bf1b">
<name>My Mix A</name>
<playlistCount>2</playlistCount>
<lastUpdated>2017-02-01T11:01:36.283Z</lastUpdated>
<links>
<link rel="self" href="http://api.7digital.com/1.2/user/playlists/groups/5891c01057abd1052cc2bf1b"/>
</links>
</playlistGroup>
</playlistGroups>
</response>
{
"page": 1,
"pageSize": 10,
"totalItems": 1,
"playlistGroups": [
{
"id": "5891c01057abd1052cc2bf1b",
"name": "My Mix A",
"playlistCount": 2,
"lastUpdated": "2017-02-01T11:01:36.283Z",
"_links": {
"self": {
"href": "http://api.7digital.com/1.2/user/playlists/groups/5891c01057abd1052cc2bf1b"
}
}
}
]
}
Retrieves a specific user playlist groups by playlistGroupId
Example request: http://api.7digital.com/1.2/user/playlists/groups/5891c01057abd1052cc2bf1b?oauth_consumer_key=YOUR_KEY_HERE&oauth_token=...
Attribute | Type | Description |
---|---|---|
country required | string | The ISO 2-character code of the country to which your oauth_consumer_key has access. |
oauth_token / userId required | string | You will need to pass either the 7digital oauth access token for the user, or your own user identifier you created (ID, GUID, username, etc). |
<response status="ok" version="1.2">
<playlistGroup id="5891c01057abd1052cc2bf1b">
<name>My Mix A</name>
<playlistCount>1</playlistCount>
<lastUpdated>2017-02-01T11:01:36.283Z</lastUpdated>
<links>
<link rel="self" href="http://api.7digital.com/1.2/user/playlists/groups/5891c01057abd1052cc2bf1b"/>
</links>
<playlists>
<playlist id="557ff48c17cd7e1698668d49">
<name>test sonos</name>
<links>
<link rel="self" href="http://api.7digital.com/1.2/playlists/557ff48c17cd7e1698668d49"/>
<link rel="details" href="http://api.7digital.com/1.2/playlists/557ff48c17cd7e1698668d49/details"/>
<link rel="tracks" href="http://api.7digital.com/1.2/playlists/557ff48c17cd7e1698668d49/tracks"/>
</links>
<trackCount>10</trackCount>
<tags/>
<status>Published</status>
<visibility>Private</visibility>
<annotations/>
<image>
http://artwork-cdn.7static.com/static/img/sleeveart/00/022/004/0002200406_$size$.jpg
</image>
<lastUpdated>2015-06-16T10:04:09.314Z</lastUpdated>
</playlist>
</playlists>
</playlistGroup>
</response>
{
"playlistGroup": {
"id": "5891c01057abd1052cc2bf1b",
"name": "My Mix A",
"playlistCount": 1,
"lastUpdated": "2017-02-01T11:01:36.283Z",
"_links": {
"self": {
"href": "http://api.7digital.com/1.2/user/playlists/groups/5891c01057abd1052cc2bf1b"
}
},
"playlists": [
{
"id": "557ff48c17cd7e1698668d49",
"name": "test sonos",
"_links": {
"self": {
"href": "http://api.7digital.com/1.2/playlists/557ff48c17cd7e1698668d49"
},
"details": {
"href": "http://api.7digital.com/1.2/playlists/557ff48c17cd7e1698668d49/details"
},
"tracks": {
"href": "http://api.7digital.com/1.2/playlists/557ff48c17cd7e1698668d49/tracks"
}
},
"trackCount": 10,
"tags": [
],
"status": "Published",
"visibility": "Private",
"annotations": {
},
"image": "http://artwork-cdn.7static.com/static/img/sleeveart/00/022/004/0002200406_$size$.jpg",
"lastUpdated": "2015-06-16T10:04:09.314Z"
}
]
}
}
Adds a list of valid playlists to a a playlist group
Example request: POST http://api.7digital.com/1.2/user/playlists/groups/5891c01057abd1052cc2bf1b
Authorization: OAuth realm="...", oauth_consumer_key="YOUR_KEY_HERE", oauth_token="..."
Content-type: application/json
{
"playlists" : [
'5891c01057abd1052cc2bf1b',
'5891c01057abd1052cc2bf1b'
]
}
Attribute | Type | Description |
---|---|---|
country required | string | The ISO 2-character code of the country to which your oauth_consumer_key has access. |
oauth_token / userId required | string | You will need to pass either the 7digital oauth access token for the user, or your own user identifier you created (ID, GUID, username, etc). |
Field | Type | Description |
---|---|---|
playlists | string | An array of playlistIds, these ids must correspond to existing ids - if they don't they will be ignored on retrieval |
<response status="ok" version="1.2">
<playlistGroup id="5891c01057abd1052cc2bf1b">
<name>My Mix A</name>
<playlistCount>2</playlistCount>
<lastUpdated>2017-02-01T11:01:36.283Z</lastUpdated>
<links>
<link rel="self" href="http://api.7digital.com/1.2/user/playlists/groups/5891c01057abd1052cc2bf1b"/>
</links>
<playlists>
<playlist id="557ff48c17cd7e1698668d49">
<name>test sonos</name>
<links>
<link rel="self" href="http://api.7digital.com/1.2/playlists/557ff48c17cd7e1698668d49"/>
<link rel="details" href="http://api.7digital.com/1.2/playlists/557ff48c17cd7e1698668d49/details"/>
<link rel="tracks" href="http://api.7digital.com/1.2/playlists/557ff48c17cd7e1698668d49/tracks"/>
</links>
<trackCount>10</trackCount>
<tags/>
<status>Published</status>
<visibility>Private</visibility>
<annotations/>
<image>
http://artwork-cdn.7static.com/static/img/sleeveart/00/022/004/0002200406_$size$.jpg
</image>
<lastUpdated>2015-06-16T10:04:09.314Z</lastUpdated>
</playlist>
<playlist id="5891c01057abd1052cc2bf1b">
</playlist>
</playlists>
</playlistGroup>
</response>
{
"playlistGroup": {
"id": "5891c01057abd1052cc2bf1b",
"name": "My Mix A",
"playlistCount": 3,
"lastUpdated": "2017-02-01T11:01:36.283Z",
"_links": {
"self": {
"href": "http://api.7digital.com/1.2/user/playlists/groups/5891c01057abd1052cc2bf1b"
}
},
"playlists": [
{
"id": "557ff48c17cd7e1698668d49",
"name": "test sonos",
"_links": {
"self": {
"href": "http://api.7digital.com/1.2/playlists/557ff48c17cd7e1698668d49"
},
"details": {
"href": "http://api.7digital.com/1.2/playlists/557ff48c17cd7e1698668d49/details"
},
"tracks": {
"href": "http://api.7digital.com/1.2/playlists/557ff48c17cd7e1698668d49/tracks"
}
},
"trackCount": 10,
"tags": [
],
"status": "Published",
"visibility": "Private",
"annotations": {
},
"image": "http://artwork-cdn.7static.com/static/img/sleeveart/00/022/004/0002200406_$size$.jpg",
"lastUpdated": "2015-06-16T10:04:09.314Z"
},
{
"id": "5891c01057abd1052cc2bf1b"
}
]
}
}
Update an entire playlist group
Example request: PUT http://api.7digital.com/1.2/user/playlists/groups/5891c01057abd1052cc2bf1b
Authorization: OAuth realm="...", oauth_consumer_key="YOUR_KEY_HERE", oauth_token="..."
Content-type: application/json
{
"name": "My Updated Mix A"
"playlists" : [
'5891c01057abd1052cc2bf1c',
'5891c01057abd1052cc2bf1d'
]
}
Attribute | Type | Description |
---|---|---|
country required | string | The ISO 2-character code of the country to which your oauth_consumer_key has access. |
oauth_token / userId required | string | You will need to pass either the 7digital oauth access token for the user, or your own user identifier you created (ID, GUID, username, etc). |
Field | Type | Description |
---|---|---|
name required | string | The name of the playlist group / mix |
playlists | string | An array of playlistIds, these ids must correspond to existing ids - if they don't they will be ignored on retrieval |
<response status="ok" version="1.2">
<playlistGroup id="5891c01057abd1052cc2bf1b">
<name>My Updated Mix A</name>
<playlistCount>3</playlistCount>
<lastUpdated>2017-02-01T11:01:36.283Z</lastUpdated>
<links>
<link rel="self" href="http://api.7digital.com/1.2/user/playlists/groups/5891c01057abd1052cc2bf1b"/>
</links>
<playlists>
<playlist id="5891c01057abd1052cc2bf1c">
<name>Playlist A</name>
<links>
<link rel="self" href="http://api.7digital.com/1.2/playlists/557ff48c17cd7e1698668d49"/>
<link rel="details" href="http://api.7digital.com/1.2/playlists/557ff48c17cd7e1698668d49/details"/>
<link rel="tracks" href="http://api.7digital.com/1.2/playlists/557ff48c17cd7e1698668d49/tracks"/>
</links>
<trackCount>10</trackCount>
<tags/>
<status>Published</status>
<visibility>Private</visibility>
<annotations/>
<image>
http://artwork-cdn.7static.com/static/img/sleeveart/00/022/004/0002200406_$size$.jpg
</image>
<lastUpdated>2015-06-16T10:04:09.314Z</lastUpdated>
</playlist>
<playlist id="5891c01057abd1052cc2bf1d">
<name>Playlist B</name>
</playlist>
</playlists>
</playlistGroup>
</response>
{
"playlistGroup": {
"id": "5891c01057abd1052cc2bf1b",
"name": "My Updated Mix A",
"playlistCount": 3,
"lastUpdated": "2017-02-01T11:01:36.283Z",
"_links": {
"self": {
"href": "http://api.7digital.com/1.2/user/playlists/groups/5891c01057abd1052cc2bf1b"
}
},
"playlists": [
{
"id": "5891c01057abd1052cc2bf1c",
"name": "Playlist A",
"_links": {
"self": {
"href": "http://api.7digital.com/1.2/playlists/557ff48c17cd7e1698668d49"
},
"details": {
"href": "http://api.7digital.com/1.2/playlists/557ff48c17cd7e1698668d49/details"
},
"tracks": {
"href": "http://api.7digital.com/1.2/playlists/557ff48c17cd7e1698668d49/tracks"
}
},
"trackCount": 10,
"tags": [
],
"status": "Published",
"visibility": "Private",
"annotations": {
},
"image": "http://artwork-cdn.7static.com/static/img/sleeveart/00/022/004/0002200406_$size$.jpg",
"lastUpdated": "2015-06-16T10:04:09.314Z"
},
{
"id": "5891c01057abd1052cc2bf1d",
"name": "Playlist B"
}
]
}
}
Deletes the users playlist group at {playlistGroupId}.
NOTE: This action is irreversible - deleted playlist groups can't be recovered. We advise you to ask users for confirmation or delay calling the API by couple of seconds whilst providing users with option to undo their action.
Example request: DELETE http://api.7digital.com/1.2/user/playlistsgroups/5891c01057abd1052cc2bf1b
Attribute | Type | Description |
---|---|---|
country required | string | The ISO 2-character code of the country to which your oauth_consumer_key has access. |
oauth_token / userId required | string | You will need to pass either the 7digital oauth access token for the user, or your own user identifier you created (ID, GUID, username, etc). |
HTTP/1.1 200 OK
The Subscriptions API is responsible for granting users permission stream content and logging subscription data. It will be up to the API Consumer to process the billing themselves, and then notify 7digital of any changes to a user's Subscription.
The API Consumer must notify us of new subscriptions or changes to existing ones. This is essential in granting streaming access for any given user.
Example request:
POST http://api.7digital.com/1.2/user/unlimitedStreaming
planCode=trial-unlimited-streaming&status=active¤cy=GBP&recurringFee=999&postcode=W1A%201AA&country=GB&activatedAt=2012-07-01T10:33:00Z¤tPeriodStartDate=2013-11-23T23:59:59Z&trialEndsAt=2013-12-23T23:59:59Z&expiryDate=2013-12-23T23:59:59Z&oauth_consumer_key=YOUR_KEY_HERE&oauth_token=...
Attribute | Type | Description |
---|---|---|
oauth_token / userId required | string | If you hold a 7digital oauth access token for the user this needs to be provided. If not, you can pass your own identifier for the user you created (ID, GUID, username, etc). |
planCode required | string | The current subscription type. If you intend to use trial or voucher-based subscriptions please contact your account manager for more detail on how to supply the correct planCode. premium-unlimited-streaming - Paying user has full unlimited streaming and offline access. standard-unlimited-streaming - Paying user has full unlimited streaming but not offline access |
status required | string | The status of the subscription. Must be one of active, cancelled or expired. active - Subscription is currently valid and active. The user has streaming access. cancelled - Subscription will not be renewed, but the user still has streaming access until the expiry date is reached. expired - Subscription has expired. The user no longer has streaming access. |
currency required | string | ISO 4217 currency code, relating to the currency in which the subscriber is paying. |
recurringFee required | integer | The amount in cents charged to the subscriber for the current subscription. If a voucher has been used then recurringFee should be 0. |
postcode | string | The postcode of the subscriber if applicable. |
country required | string | ISO 2-character country code where the subscriber is located. NOTE: API clients with custom content pool(s) must for this particular endpoint provide BOTH their content pool's "shopId" as well as "country" params. |
activatedAt required | string | ISO 8601 UTC date-time format. The date and time when the user first activated any type of subscription. ActivatedAt must be now or earlier. |
currentPeriodStartDate required | integer | ISO 8601 UTC date-time format. The date and time when the current subscription started.CurrentPeriodStartDate must be no more than 1 day from now, and the same as or later than activatedAt. |
trialEndsAt | string | ISO 8601 UTC date-time format. This is the date and time of when a trial period ends. If planCode is equal to trial-unlimited-streaming, then this value must be populated. Otherwise this parameter must not be supplied. TrialEndsAt must be later than currentPeriodStartDate and no more than 100 days from currentPeriodStartDate. |
expiryDate required | string | ISO 8601 UTC date-time format. The date and time when the subscription is due to expire. ExpiryDate must be no more than 1 month from currentPeriodStartDate. If the subscription is a trial, expiryDate must also be the same as or later than trialEndsAt. In the exceptional case that trialEndsAt is more than 1 month from currentPeriodStartDate, expiryDate must be equal to trialEndsAt. |
<response status="ok" version="1.2">
<streaming>
<level>premium</level>
<expiryDate>2013-12-23T23:59:59Z</expiryDate>
</streaming>
</response>
Provides information about whether a user has access to streaming services and at what date does the access expire. If expiryDate is in the future then user has access to stream.
Example request: GET http://api.7digital.com/1.2/user/unlimitedStreaming?country=GB&oauth_consumer_key=YOUR_KEY_HERE&oauth_token=...
Attribute | Type | Description |
---|---|---|
oauth_token / userId required | string | If you hold a 7digital oauth access token for the user this needs to be provided. If not, you can pass your own identifier for the user you created (ID, GUID, username, etc). |
country required | string | ISO 2-character country code. The location of the user. |
Method specific error codes:
2001
- Resource not found The user was not found.
<response status=”ok” version=”1.2”>
<streaming>
<level>premium</level>
<expiryDate>2012-12-23T23:59:59Z</expiryDate>
</streaming>
</response>
Partner account - partner user accounts are only accessible via the 7digital API and solely by the API partner that created them. They are effectively only stub accounts consisting of your unique identifier of the user and purchase history. User names and passwords are handled by your application. Apart from your unique identifiers of the users, 7digital will not store any login details (e.g. usernames, passwords). Users will not be able to log into 7digital.com or any other 7digital powered service. Purchases or streams made via your application will only be accessible in your application and users will not have access to tracks previously purchased or streamed via any 7digital powered website or application.
Access to partner user resources is managed using 2-legged OAuth protocol whilst replacing the 3-legged OAuth oauth_token parameter with userId parameter providing your own identifier of the user. The user with the given userId must be created beforehand using the below user/create method.
Creates a new partner user account.
Example request: http://api.7digital.com/1.2/user/create?userId=123456&country=GB
Attribute | Type | Description |
---|---|---|
userID required | string | Your 3rd party user identifier can be an arbitrary string up to 255 chars. The userId is permanent and cannot be changed once created (hence we don't recommend using email addresses as user IDs) |
country required | string | ISO 2-character code of the country the end user resides in. |
Method specific error codes:
1001
- Missing parameter
A required parameter is missing.
1002
- Invalid parameter value
A parameter has been supplied with invalid value.
2003
- User already exists
A user with this user id has already been created.
<response status="ok" version="1.2">
<user id="123456">
<type>partner</type>
</user>
</response>
The Purchasing API allows 3rd parties to deliver digital content to individual users.
This method will log a sale of a track or release for the specified user and add that track or release to the user's locker. It returns a purchase id identifying the transaction at 7digital's end.
Example request: https://api.7digital.com/1.2/user/deliveritem?country=US&trackId=4648051&releaseid=415019&transactionid=test4343&oauth_token=...
Attribute | Type | Description |
---|---|---|
oauth_token / userId required | string | If you hold a 7digital oauth access token for the user this needs to be provided. If not, you can pass your own identifier for the user you created (ID, GUID, username, etc). |
emailAddress | string | The email address of the User. |
releaseId required | integer | The 7digital ID of the release being delivered to the user. If a track is being delivered, this needs to identify the release the track appears on. |
trackId | integer | If supplied, only the track is delivered - otherwise the full release is delivered. |
packageId | integer | The package id of the item being delivered (ie, 2 = 'standard'). Defaults to 2 if not supplied. |
country required | string | ISO 2-character code of the country the end user resides in. |
transactionId required | string | The transaction ID provided will be stored along with a 7digital purchase ID in the 7digital transactions log. |
retailPrice | number | Compulsory if you are charging your users different prices than 7digital RRP. Must include fractional units in decimal form where relevant for the currency in question, eg. "7.99", "1.00". The price cannot be negative and must not be more than 2 decimal places. The price should not include any commas (","). If you're giving away items for free please use retailPrice=0, if you're using vouchers or you're not sure what to report please contact our sales team. |
postCode | string | The post code or zip code of the user purchasing the track or release. This is currently only valid when country is US. Codes are accepted in the following formats: 12345 or 12345-6789. |
<response status="ok" version="1.2">
<purchase id="50454737">
<purchaseDate>2009-11-10T14:59:39Z</purchaseDate>
</purchase>
</response>
This method allows a user to remove a purchase of a release from the sales report when the purchase has been refunded. It will return the purchase id and the release id of the item remvoved.
Example request: http://api.7digital.com/1.2/user/purchase/49193524/release/87654?oauth_token=...
Attribute | Type | Description |
---|---|---|
purchaseid required | integer | purchase id identifying the transaction at 7digital's end that the refunded item belongs to |
releaseId required | integer | The 7digital id of the release being refunded |
Method specific error codes:
2001
- Cannot find sale with purchaseId {purchaseid} and releaseId {releaseid}
Specified sale could not be found in the sales log
2002
- Cannot exclude sale with purchaseId {purchaseid} and releaseId {releaseid}
Specified sale could not be removed because the sale does not fall within the current reporting period. (The reporting period being from the start of the current month to 5th of the succeeding month. e.g. In January the reporting period is 1st January to 4th February.
<response status="ok" version="1.2" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="http://localhost/api/static/7digitalAPI.xsd">
<release>
<purchaseId>49193524</purchaseId>
<releaseId>87654</releaseId>
</release>
</response>
{
"status":"ok",
"version":"1.2",
"purchaseId": "49193524"
"releaseId": "87654"
}
}
This method allows a user to remove a purchase of a track from the sales report when the purchase has been refunded. It will return the purchase id and the track id of the item remvoved.
Example request: http://api.7digital.com/1.2/user/purchase/49193524/track/87654?oauth_token=...
Attribute | Type | Description |
---|---|---|
purchaseid required | integer | purchase id identifying the transaction at 7digital's end that the refunded item belongs to |
trackid required | integer | The 7digital id of the track being refunded |
Method specific error codes:
2001
- Cannot find sale with purchaseId {purchaseid} and trackId {releaseid}
Specified sale could not be found in the sales log
2002
- Cannot exclude sale with purchaseId {purchaseid} and trackId {trackid}
Specified sale could not be removed because the sale does not fall within the current reporting period. (The reporting period being from the start of the current month to 5th of the succeeding month. e.g. In January the reporting period is 1st January to 4th February.
<response status="ok" version="1.2" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="http://localhost/api/static/7digitalAPI.xsd">
<track>
<purchaseId>49193524</purchaseId>
<trackId>87654</trackId>
</track>
</response>
{
"status":"ok",
"version":"1.2",
"purchaseId": "49193524"
"trackId": "87654"
}
}
This section details the endpoints that allow for a client to download CSV formatted snapshots of the 7digital catalogue. The CSV formatted files allow a client to import 7digital's catalogue into their own database.
This endpoint returns a file which is a data snaphot of all the artists contained in the catalogue. The data is contained in a gzipped CSV formatted text file.
Example request: http://feeds.api.7digital.com/1.2/feed/artist/full?country=WW&date=20160623&oauth_consumer_key=YOUR_KEY_HERE
Attribute | Type | Description |
---|---|---|
country required | string | The code of the country of the catalogue you want to download. |
date required | string | Date of the feed file required, in the format yyyymmdd . File will contain the previous 24 hours worth of changes up until midnight of the value of the date parameter. To get the most recent changes, use today's date. |
This endpoint returns a file contains a data snaphot of the artists that have changed in the catalogue in the 24 hours prior to midnight on the date of the date parameter. The data is contained in a gzipped CSV formatted text file.
Example request: http://feeds.api.7digital.com/1.2/feed/artist/updates?country=WW&date=20160623&oauth_consumer_key=YOUR_KEY_HERE
Attribute | Type | Description |
---|---|---|
country required | string | The code of the country of the catalogue you want to download. |
date required | string | Date of the feed file required, in the format yyyymmdd . File will contain the previous 24 hours worth of changes up until midnight of the value of the date parameter. To get the most recent changes, use today's date. |
This endpoint returns a file which is a data snaphot of all the artists who's content is not yet saleable nor streamable in the catalogue. The data is contained in a gzipped CSV formatted text file.
Example request: http://feeds.api.7digital.com/1.2/feed/artist/prerelease/full?country=WW&date=20160623&oauth_consumer_key=YOUR_KEY_HERE
Attribute | Type | Description |
---|---|---|
country required | string | The code of the country of the catalogue you want to download. |
date required | string | Date of the feed file required, in the format yyyymmdd . File will contain the previous 24 hours worth of changes up until midnight of the value of the date parameter. To get the most recent changes, use today's date. |
This endpoint returns a file contains a data snaphot of the artists who's content is not yet saleable nor streamable that have changed in the catalogue in the 24 hours prior to midnight on the date of the date parameter. The data is contained in a gzipped CSV formatted text file.
Example request: http://feeds.api.7digital.com/1.2/feed/artist/prelease/updates?country=WW&date=20160623&oauth_consumer_key=YOUR_KEY_HERE
Attribute | Type | Description |
---|---|---|
country required | string | The code of the country of the catalogue you want to download. |
date required | string | Date of the feed file required, in the format yyyymmdd . File will contain the previous 24 hours worth of changes up until midnight of the value of the date parameter. To get the most recent changes, use today's date. |
This endpoint returns a file which is a data snaphot of all the releases contained in the catalogue for a given country. The data is contained in a gzipped CSV formatted text file.
Example request: http://feeds.api.7digital.com/1.2/feed/release/full?country=WW&date=20160623&oauth_consumer_key=YOUR_KEY_HERE
Attribute | Type | Description |
---|---|---|
country required | string | The code of the country of the catalogue you want to download. |
date required | string | Date of the feed file required, in the format yyyymmdd . File will contain the previous 24 hours worth of changes up until midnight of the value of the date parameter. To get the most recent changes, use today's date. |
This endpoint returns a file contains a data snaphot of the releases that have changed in the catalogue in the past 24 hours for a given country. The data is contained in a gzipped CSV formatted text file.
Example request: http://feeds.api.7digital.com/1.2/feed/release/updates?country=WW&date=20160623&oauth_consumer_key=YOUR_KEY_HERE
Attribute | Type | Description |
---|---|---|
country required | string | The code of the country of the catalogue you want to download. |
date required | string | Date of the feed file required, in the format yyyymmdd . File will contain the previous 24 hours worth of changes up until midnight of the value of the date parameter. To get the most recent changes, use today's date. |
This endpoint returns a file which is a data snaphot of all the releases contained in the catalogue for all countries. The data is contained in a gzipped CSV formatted text file.
Example request: http://feeds.api.7digital.com/1.2/feed/release/global/full?date=20160623&oauth_consumer_key=YOUR_KEY_HERE
Attribute | Type | Description |
---|---|---|
country required | string | This should be 'WW' (Worldwide). |
date required | string | Date of the feed file required, in the format yyyymmdd . File will contain the previous 24 hours worth of changes up until midnight of the value of the date parameter. To get the most recent changes, use today's date. |
This endpoint returns a file with all the releases contained in the catalogue for all countries that have changed in the 24 hours prior to midnight on the date of the date parameter. The data is contained in a gzipped CSV formatted text file.
Example request: http://feeds.api.7digital.com/1.2/feed/release/global/updates?date=20160623&oauth_consumer_key=YOUR_KEY_HERE
Attribute | Type | Description |
---|---|---|
country required | string | This should be 'WW' (Worldwide). |
date required | string | Date of the feed file required, in the format yyyymmdd . File will contain the previous 24 hours worth of changes up until midnight of the value of the date parameter. To get the most recent changes, use today's date. |
This endpoint returns a file which is a data snaphot of all the hi res releases of a given bitrate contained in the catalogue for a given country. The data is contained in a gzipped CSV formatted text file.
Example request: http://feeds.api.7digital.com/1.2/feed/release/hi-res/bitrate/16/full?country=WW&date=20160623&oauth_consumer_key=YOUR_KEY_HERE
Attribute | Type | Description |
---|---|---|
country required | string | The code of the country of the catalogue you want to download. |
bitrate required | integer | Bit rate of the the catalogue data you require. Valid values are 16 or 24 |
date required | string | Date of the feed file required, in the format yyyymmdd . File will contain the previous 24 hours worth of changes up until midnight of the value of the date parameter. To get the most recent changes, use today's date. |
This endpoint returns a file with all the hi res releases for a given country for a given bitrate that have changed in the catalogue in the past 24 hours. The data is contained in a gzipped CSV formatted text file.
Example request: http://feeds.api.7digital.com/1.2/feed/release/hi-res/bitrate/16/updates?country=WW&date=20160623&oauth_consumer_key=YOUR_KEY_HERE
Attribute | Type | Description |
---|---|---|
country required | string | The code of the country of the catalogue you want to download. |
bitrate required | integer | Bit rate of the the catalogue data you require. Valid values are 16 or 24 |
date required | string | Date of the feed file required, in the format yyyymmdd . File will contain the previous 24 hours worth of changes up until midnight of the value of the date parameter. To get the most recent changes, use today's date. |
This endpoint returns a file which is a data snaphot of all the releases contained in the catalogue for a given country, which are not yet saleable nor streamable. The data is contained in a gzipped CSV formatted text file.
Example request: http://feeds.api.7digital.com/1.2/feed/release/prerelease/full?country=WW&date=20160623&oauth_consumer_key=YOUR_KEY_HERE
Attribute | Type | Description |
---|---|---|
country required | string | The code of the country of the catalogue you want to download. |
date required | string | Date of the feed file required, in the format yyyymmdd . File will contain the previous 24 hours worth of changes up until midnight of the value of the date parameter. To get the most recent changes, use today's date. |
This endpoint returns a file contains a data snaphot of the releases which are not yet saleable nor streamable that have changed in the catalogue in the past 24 hours for a given country. The data is contained in a gzipped CSV formatted text file.
Example request: http://feeds.api.7digital.com/1.2/feed/release/prerelease/updates?country=WW&date=20160623&oauth_consumer_key=YOUR_KEY_HERE
Attribute | Type | Description |
---|---|---|
country required | string | The code of the country of the catalogue you want to download. |
date required | string | Date of the feed file required, in the format yyyymmdd . File will contain the previous 24 hours worth of changes up until midnight of the value of the date parameter. To get the most recent changes, use today's date. |
This endpoint returns a file which is a data snaphot of all the tracks contained in the catalogue for a given country. The data is contained in a gzipped CSV formatted text file.
Example request: http://feeds.api.7digital.com/1.2/feed/track/full?country=WW&date=20160623&oauth_consumer_key=YOUR_KEY_HERE
Attribute | Type | Description |
---|---|---|
country required | string | The code of the country of the catalogue you want to download. |
date required | string | Date of the feed file required, in the format yyyymmdd . File will contain the previous 24 hours worth of changes up until midnight of the value of the date parameter. To get the most recent changes, use today's date. |
This endpoint returns a file contains a data snaphot of the tracks in the catalogue for a given country that have changed in the 24 hours prior to midnight on the date of the date parameter. The data is contained in a gzipped CSV formatted text file.
Example request: http://feeds.api.7digital.com/1.2/feed/track/updates?country=WW&date=20160623&oauth_consumer_key=YOUR_KEY_HERE
Attribute | Type | Description |
---|---|---|
country required | string | The code of the country of the catalogue you want to download. |
date required | string | Date of the feed file required, in the format yyyymmdd . File will contain the previous 24 hours worth of changes up until midnight of the value of the date parameter. To get the most recent changes, use today's date. |
This endpoint returns a file which is a data snaphot of all the tracks contained in the catalogue for all countries. The data is contained in a gzipped CSV formatted text file.
Example request: http://feeds.api.7digital.com/1.2/feed/track/global/full?date=20160623&oauth_consumer_key=YOUR_KEY_HERE
Attribute | Type | Description |
---|---|---|
country required | string | This should be 'WW' (Worldwide). |
date required | string | Date of the feed file required, in the format yyyymmdd . File will contain the previous 24 hours worth of changes up until midnight of the value of the date parameter. To get the most recent changes, use today's date. |
This endpoint returns a file with all the tracks contained in the catalogue for all countries that have changed in the 24 hours prior to midnight on the date of the date parameter. The data is contained in a gzipped CSV formatted text file.
Example request: http://feeds.api.7digital.com/1.2/feed/track/global/updates?date=20160623&oauth_consumer_key=YOUR_KEY_HERE
Attribute | Type | Description |
---|---|---|
country required | string | This should be 'WW' (Worldwide). |
date required | string | Date of the feed file required, in the format yyyymmdd . File will contain the previous 24 hours worth of changes up until midnight of the value of the date parameter. To get the most recent changes, use today's date. |
This endpoint returns a file which is a data snaphot of all the hi res tracks of a given bitrate contained in the catalogue for a given country. The data is contained in a gzipped CSV formatted text file.
Example request: http://feeds.api.7digital.com/1.2/feed/track/hi-res/bitrate/16/full?country=WW&date=20160623&oauth_consumer_key=YOUR_KEY_HERE
Attribute | Type | Description |
---|---|---|
country required | string | The code of the country of the catalogue you want to download. |
bitrate required | integer | Bit rate of the the catalogue data you require. Valid values are 16 or 24 |
date required | string | Date of the feed file required, in the format yyyymmdd . File will contain the previous 24 hours worth of changes up until midnight of the value of the date parameter. To get the most recent changes, use today's date. |
This endpoint returns a file with all the hi res tracks for a given country for a given bitrate that have changed in the 24 hours prior to midnight on the date of the date parameter. The data is contained in a gzipped CSV formatted text file.
Example request: http://feeds.api.7digital.com/1.2/feed/track/hi-res/bitrate/16/updates?country=WW&date=20160623&oauth_consumer_key=YOUR_KEY_HERE
Attribute | Type | Description |
---|---|---|
country required | string | The code of the country of the catalogue you want to download. |
bitrate required | integer | Bit rate of the the catalogue data you require. Valid values are 16 or 24 |
date required | string | Date of the feed file required, in the format yyyymmdd . File will contain the previous 24 hours worth of changes up until midnight of the value of the date parameter. To get the most recent changes, use today's date. |
This endpoint returns a file which is a data snaphot of all the tracks contained in the catalogue for a given country, which are not yet saleable nor streamable. The data is contained in a gzipped CSV formatted text file.
Example request: http://feeds.api.7digital.com/1.2/feed/track/prerelease/full?country=WW&date=20160623&oauth_consumer_key=YOUR_KEY_HERE
Attribute | Type | Description |
---|---|---|
country required | string | The code of the country of the catalogue you want to download. |
date required | string | Date of the feed file required, in the format yyyymmdd . File will contain the previous 24 hours worth of changes up until midnight of the value of the date parameter. To get the most recent changes, use today's date. |
This endpoint returns a file contains a data snaphot of the tracks in the catalogue for a given country which are not yet saleable nor streamable that have changed in the 24 hours prior to midnight on the date of the date parameter. The data is contained in a gzipped CSV formatted text file.
Example request: http://feeds.api.7digital.com/1.2/feed/track/prerelease/updates?country=WW&date=20160623&oauth_consumer_key=YOUR_KEY_HERE
Attribute | Type | Description |
---|---|---|
country required | string | The code of the country of the catalogue you want to download. |
date required | string | Date of the feed file required, in the format yyyymmdd . File will contain the previous 24 hours worth of changes up until midnight of the value of the date parameter. To get the most recent changes, use today's date. |