In addition to JSON support we’ve also been hard at work improving the API itself. Here’s some of the changes that we’ve introduced to Catalogue API recently. But first 2 important upcoming changes:
“RRP” pricing on release/details
Historically the release/details endpoint provided recommended retail price (RRP) even for releases that didn’t actually have RRP supplied to us by content licensors (i.e. music labels). This typically applies to singles/EPs with 1-4 tracks who tend to have RRP specified only on track level.
In these cases the release RRP provided by the API was calculated as sum of track prices appearing on given release. But as this has been an ongoing source of confusion we’ve taken the decision that we will be more explicit and we will start indicating that a release doesn’t actually have a RRP by returning NULL as the RRP value.
This behaviour is consistent with our documentation (see http://api.7digital.com/1.2/static/documentation/7digitalpublicapi.html#Price) but nevertheless we’ve set up a test endpoint where you can see how release with no RRP will look like in action:
(Please note that this endpoint will be switched off once the changes have been made to the regular endpoint so make sure you don’t use it in any live applications)
Release “barcode” on artist/toptracks endpoint is being deprecated
We will also no longer be providing release barcodes in responses of artist/toptracks API endpoint (no other endpoints will be affected). In short term we will not be removing the entire “barcode” element from the response but it will be populated with an empty string. We recommend you to remove any dependencies on the barcode data for this endpoint as in the future we will be removing it completely (we will provide additional advance warning).
Both above changes are preliminarily scheduled to take place on June 3rd 2013. Please get in touch with us ASAP should you have any questions/concerns about this.
Release duration, release track count & track disc number
On the other hand we’ve been gradually adding the following information to relevant endpoints-
- duration – total length in seconds of all tracks appearing on release
- trackCount - number of tracks appearing on release
- discNumber - disc number track appears on
At the moment these new fields appear at the end of release (or track) response but for readability we will be putting them in their logical order within the response, e.g. so that trackNumber and discNumber appear next to each other. Now maybe a good time to double-check you don’t rely on order of the XML elements in API responses.
Pricing info available in more API endpoints
We’ve also added pricing information to more Catalogue API methods so that you don’t have to make multiple additional API calls e.g. to fetch prices for all tracks appearing in a chart.
All the following now provide prices:
artist/releases release/details release/tracks release/search release/chart release/byDate release/byTag/top release/byTag/new release/recommend track/search track/chartMore relevant API endpoints will be getting pricing info added in the near future.
Catalogue content filtering
Another functionality added to our API is content filtering which allows you to exclude certain types of content as you’re browsing the 7digital Catalogue API.
You can filter content from specific licensors or hide content not cleared for subscription based on-demand streaming services. Filtering can be handled by yourself using optional request parameters (e.g. see artist/releases documentation) or if you’re a Premium API user we can do the job for you and filter specific content for all requests by your API key directly on our servers.
We’re also planning to support additional content filters in the future (e.g. label, explicit content, format) please do let us know what you’d find most useful.