IMPORTANT: Proposed changes to the data returned by our web service

Our current web service at the /ws/2 endpoint returns too much data in a lot of cases and in many cases we suspect that the programs making the calls to the service don’t actually consume all of that data. We’d like to reduce the amount of unused data our web service returns, in order to reduce our bandwidth costs. We propose that:

  • The web service will no longer includes aliases and tags in relation elements. Regardless of what entity you may request, if the results of your request includes a relation element, any alias or tag elements that are currently returned will no longer be returned.
  • The web service no longer includes aliases and tags in for the Various Artists artist anywhere, unless you specifically request the Various Artist from the /ws/2/artist endpoint.

We’ve mocked up these changes in the following XML files:

We think that this will have a minimal impact on our web service users. If you use our web service, please tell us what you think about this. If you know someone who is using our web service, but may not read this blog, please forward a link to this post to them.

For more background on our research into this topic, please take a look at this document.

3 thoughts on “IMPORTANT: Proposed changes to the data returned by our web service”

  1. Please don’t make any breaking changes, that’s totally irresponsible when so many people rely on the service.

    Why not create a version 2 web service with Json? That saves bandwidth immediately on the tags and you could make all kinds of improvements. Users could then migrate over time causing minimum disruption.

  2. I second the JSON implementation and the versioning of the apis.

    JSON is way easier to consume than XML on most of the languages and as Dow said, it will save bandwidth without any effort.

    Thank you.

  3. There is already a json version of the current webservice in beta, however json does not solve the bandwidth issue, if the data is returned compressed there is neglible difference between xml and json representation.

    This solution attempts to only remove data that is not being used, it only removes data for entities connected via relation that was not intended to be there in the first place, when a release has many relationships this same data is being duplicated over and over.

    Dow do you currently actually make use of tags and aliases for artists linked via a relastionship at the moment, or are youmaking a general point ?

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.