Discogs::Api
A simple wrapper around the Discogs API.
I'm only aiming to implement endpoints that I actually use at this time, which is a very small subset of what's available. See Implemented Endpoints and consider opening an issue or PR if you need more.
Installation
Add this line to your application's Gemfile:
gem 'discogs-api'
And then execute:
$ bundle
Or install it yourself as:
$ gem install discogs-api
Usage
# Set up a client with your auth token and user agent
client = Discogs::Api::Client.new('my-auth-token', 'my-user-agent')
# Search for an artist
Discogs::Api::Search.artist(client, query: 'Electric Octopus')
# Search for a master
Discogs::Api::Search.master(client, query: 'This is our Culture')
# Search for an release
Discogs::Api::Search.release(client, query: 'This is our Culture')
# Search for a label
Discogs::Api::Search.label(client, query: 'Heavy Psych Sounds')
# Get an artist by its ID
Discogs::Api::Artist.get(client, 5272208)
# Get an artist's releases
Discogs::Api::Artist.releases(client, 5272208)
Implemented Endpoints
- OAuth
- GET oauth/request_token
- POST oauth/access_token
- GET oauth/identify
- Releases
- GET releases/:id
- GET releases/:id/rating
- GET releases/:id/rating/:user
- PUT releases/:id/rating/:user
- DELETE releases/:id/rating/:user
- Masters
- GET masters/:id
- GET masters/:id/versions
- Artists
- GET artists/:id
- GET artists/:id/releases
- Labels
- GET label/:id
- GET label/:id/releases
- Search
- GET database/search
There are more endpoints regarding the marketplace, user identity, user collection, user wantlists, and user lists. I have no intention at all of implementing those at the moment.
Contributing
Bug reports and pull requests are welcome on GitHub at https://github.com/shkm/discogs-api.
License
The gem is available as open source under the terms of the MIT License.