diff --git a/discogs/discogs.go b/discogs/discogs.go new file mode 100644 index 0000000..b394872 --- /dev/null +++ b/discogs/discogs.go @@ -0,0 +1,23 @@ +package discogs + +import ( + "github.com/irlndts/go-apirequest" + "net/http" +) + +const discogsAPI = "https://api.discogs.com/" + +// Client is a Discogs client for making Discogs API requests. +type Client struct { + api *apirequest.API + Releases *ReleaseService +} + +// NewClient returns a new Client. +func NewClient(httpClient *http.Client) *Client { + base := apirequest.New().Client(httpClient).Base(discogsAPI) + return &Client{ + api: base, + Releases: newReleaseService(base.New()), + } +} diff --git a/discogs/releases.go b/discogs/releases.go new file mode 100644 index 0000000..0e1ab70 --- /dev/null +++ b/discogs/releases.go @@ -0,0 +1,15 @@ +package discogs + +import ( + "github.com/irlndts/go-apirequest" +) + +type ReleaseService struct { + api *apirequest.API +} + +func newReleaseService(api *apirequest.API) *ReleaseService { + return &ReleaseService{ + api: api.Path("releases/"), + } +}