A new release of OneMusicAPI is in production, and we've rolled in a whole bunch of changes and useful new features to the API. As well as a few performance improvements, we've added support for returning the record label for a release, the composers for the tracks on a release and also whether the release is a compilation or not.

We've improved error messages when inc parameters are not supported - this can sometimes happen when the parameter is slightly misspelled.

In /disc results combined into the aggregated struct, we've now added the position field. This is useful for multi disc releases, so for any one given disc you can see which numbered position that disc takes.

On to the bigger changes...

Track composers

We've added inc=trackComposers. This provides information about the composer of each track in a release, if the parameter is passed. Here, "composer" is taken in its most generic form, meaning the writer of the music, and so it can include non-classical composers.

For example:

20151208/release?title=magical mystery tour&artist=the beatles&inc=trackComposers

Gives:

[
    {
        "title": "Magical Mystery Tour",
        "artist": "The Beatles",
       	....
        "media": [
            {
                "totalDiscs": "1",
                "position": "1",
                "tracks": [
                	....
                    {
                        "title": "Strawberry Fields Forever",
                        "number": "8",
                        "artists": [
                            "The Beatles"
                        ],
                        "composers": [
                            "John Lennon",
                            "Paul McCartney"
                        ]
                    },
                    ....
        ],
        ....
    },
]

Labels

Labels for releases are exposed with the inc=label parameter:

20151208/release?title=unknown pleasures&artist=joy division&inc=label

Gives:

[
    {
        "title": "Unknown Pleasures",
        "artist": "Joy Division",
        ....
        "label": {
            "name": "Factory"
        },
        ....
    }
]

Pretty self explanatory!

BTW, we do have data about labels in our database, but we don't currently expose it. If it's something you're interested in, let us know!

Compilations

Finally, we've added a compilation flag to releases. This is an optional flag that appears when we know a release is a compilation. For example, a query for:

20151208/release?title=101 party hits&artist=various

This gives:

[
    {
        "title": "101 Party Hits",
        "artist": "Various",
        ...
        "compilation": true,
        "media": [
            ...
        ],
        ...
    }
]

If the release cannot be determined to be a compilation, the flag does not appear.

Discogs compatibility

File this under "while you were sleeping"... These are a bunch of things we've been working on and deploying during the development of this release, rather than being in the release itself.

There has been a number of changes going on over at the Discogs API. As ever, in the background, we've been updating our production app to make sure Discogs data is still fully discoverable with no changes to our own API.

Thanks to chefranden who made the the image above available for sharing.
comments powered by Disqus
© 2017 elsten software limited, Unit 4934, PO Box 6945, London, W1A 6US, UK | terms and conditions | privacy policy