-- Hoogle documentation, generated by Haddock -- See Hoogle, http://www.haskell.org/hoogle/ -- | Client for Discogs REST API -- -- Contains actions to retrieve data from the Discogs database. @package discogs-haskell @version 0.0.5.0 module Discogs.Types.Artist -- | This is required to look up an artist. Example: '108713' newtype ArtistID ArtistID :: Text -> ArtistID -- | The Artist resource represents a person in the Discogs database who -- contributed to a Release in some capacity. data Artist Artist :: Maybe Text -> Int -> Text -> Maybe Text -> Maybe Text -> Text -> Maybe [Text] -> [Text] -> !Array -> !Array -> Artist [profile] :: Artist -> Maybe Text [id] :: Artist -> Int [releases_url] :: Artist -> Text [resource_url] :: Artist -> Maybe Text [uri] :: Artist -> Maybe Text [data_quality] :: Artist -> Text [namevariations] :: Artist -> Maybe [Text] [urls] :: Artist -> [Text] [images] :: Artist -> !Array [members] :: Artist -> !Array -- | This is a list of type Image. data ImagesList ImagesList :: !Array -> ImagesList [imagesList] :: ImagesList -> !Array -- | This is a image of an Artist which has been submitted by a -- contributor. data Image Image :: Int -> String -> String -> String -> String -> Int -> Image [height] :: Image -> Int [iResource_url] :: Image -> String [iType] :: Image -> String [iUri] :: Image -> String [uri150] :: Image -> String [width] :: Image -> Int -- | This is a list of type Member. data MembersList MembersList :: !Array -> MembersList [membersList] :: MembersList -> !Array -- | This is a member that belongs to the Artists. Eg: members of a band, -- contributors to a project. data Member Member :: Bool -> Integer -> String -> String -> Member [active] :: Member -> Bool [id2] :: Member -> Integer [name] :: Member -> String [mResource_url] :: Member -> String -- | This is a list of type ReleaseArtist data ReleaseArtistList ReleaseArtistList :: !Array -> ReleaseArtistList [releaseArtists] :: ReleaseArtistList -> !Array -- | This a Release that the Artist has performed on. data ReleaseArtist ReleaseArtist :: String -> Int -> String -> String -> String -> String -> String -> ReleaseArtist [anv] :: ReleaseArtist -> String [rId] :: ReleaseArtist -> Int [join] :: ReleaseArtist -> String [rName] :: ReleaseArtist -> String [rResource_url] :: ReleaseArtist -> String [role] :: ReleaseArtist -> String [tracks] :: ReleaseArtist -> String instance GHC.Generics.Selector Discogs.Types.Artist.S1_0_6ReleaseArtist instance GHC.Generics.Selector Discogs.Types.Artist.S1_0_5ReleaseArtist instance GHC.Generics.Selector Discogs.Types.Artist.S1_0_4ReleaseArtist instance GHC.Generics.Selector Discogs.Types.Artist.S1_0_3ReleaseArtist instance GHC.Generics.Selector Discogs.Types.Artist.S1_0_2ReleaseArtist instance GHC.Generics.Selector Discogs.Types.Artist.S1_0_1ReleaseArtist instance GHC.Generics.Selector Discogs.Types.Artist.S1_0_0ReleaseArtist instance GHC.Generics.Constructor Discogs.Types.Artist.C1_0ReleaseArtist instance GHC.Generics.Datatype Discogs.Types.Artist.D1ReleaseArtist instance GHC.Generics.Selector Discogs.Types.Artist.S1_0_3Member instance GHC.Generics.Selector Discogs.Types.Artist.S1_0_2Member instance GHC.Generics.Selector Discogs.Types.Artist.S1_0_1Member instance GHC.Generics.Selector Discogs.Types.Artist.S1_0_0Member instance GHC.Generics.Constructor Discogs.Types.Artist.C1_0Member instance GHC.Generics.Datatype Discogs.Types.Artist.D1Member instance GHC.Generics.Selector Discogs.Types.Artist.S1_0_5Image instance GHC.Generics.Selector Discogs.Types.Artist.S1_0_4Image instance GHC.Generics.Selector Discogs.Types.Artist.S1_0_3Image instance GHC.Generics.Selector Discogs.Types.Artist.S1_0_2Image instance GHC.Generics.Selector Discogs.Types.Artist.S1_0_1Image instance GHC.Generics.Selector Discogs.Types.Artist.S1_0_0Image instance GHC.Generics.Constructor Discogs.Types.Artist.C1_0Image instance GHC.Generics.Datatype Discogs.Types.Artist.D1Image instance GHC.Generics.Selector Discogs.Types.Artist.S1_0_0ImagesList instance GHC.Generics.Constructor Discogs.Types.Artist.C1_0ImagesList instance GHC.Generics.Datatype Discogs.Types.Artist.D1ImagesList instance GHC.Generics.Selector Discogs.Types.Artist.S1_0_9Artist instance GHC.Generics.Selector Discogs.Types.Artist.S1_0_8Artist instance GHC.Generics.Selector Discogs.Types.Artist.S1_0_7Artist instance GHC.Generics.Selector Discogs.Types.Artist.S1_0_6Artist instance GHC.Generics.Selector Discogs.Types.Artist.S1_0_5Artist instance GHC.Generics.Selector Discogs.Types.Artist.S1_0_4Artist instance GHC.Generics.Selector Discogs.Types.Artist.S1_0_3Artist instance GHC.Generics.Selector Discogs.Types.Artist.S1_0_2Artist instance GHC.Generics.Selector Discogs.Types.Artist.S1_0_1Artist instance GHC.Generics.Selector Discogs.Types.Artist.S1_0_0Artist instance GHC.Generics.Constructor Discogs.Types.Artist.C1_0Artist instance GHC.Generics.Datatype Discogs.Types.Artist.D1Artist instance GHC.Generics.Constructor Discogs.Types.Artist.C1_0ArtistID instance GHC.Generics.Datatype Discogs.Types.Artist.D1ArtistID instance GHC.Generics.Generic Discogs.Types.Artist.ReleaseArtist instance GHC.Classes.Eq Discogs.Types.Artist.ReleaseArtist instance GHC.Show.Show Discogs.Types.Artist.ReleaseArtist instance GHC.Classes.Eq Discogs.Types.Artist.ReleaseArtistList instance GHC.Show.Show Discogs.Types.Artist.ReleaseArtistList instance GHC.Generics.Generic Discogs.Types.Artist.Member instance GHC.Classes.Eq Discogs.Types.Artist.Member instance GHC.Show.Show Discogs.Types.Artist.Member instance GHC.Classes.Eq Discogs.Types.Artist.MembersList instance GHC.Show.Show Discogs.Types.Artist.MembersList instance GHC.Generics.Generic Discogs.Types.Artist.Image instance GHC.Classes.Eq Discogs.Types.Artist.Image instance GHC.Show.Show Discogs.Types.Artist.Image instance GHC.Generics.Generic Discogs.Types.Artist.ImagesList instance GHC.Classes.Eq Discogs.Types.Artist.ImagesList instance GHC.Show.Show Discogs.Types.Artist.ImagesList instance GHC.Generics.Generic Discogs.Types.Artist.Artist instance GHC.Read.Read Discogs.Types.Artist.Artist instance GHC.Classes.Eq Discogs.Types.Artist.Artist instance GHC.Show.Show Discogs.Types.Artist.Artist instance GHC.Generics.Generic Discogs.Types.Artist.ArtistID instance GHC.Classes.Ord Discogs.Types.Artist.ArtistID instance GHC.Classes.Eq Discogs.Types.Artist.ArtistID instance GHC.Read.Read Discogs.Types.Artist.ArtistID instance GHC.Show.Show Discogs.Types.Artist.ArtistID instance Data.Aeson.Types.Class.FromJSON Discogs.Types.Artist.ArtistID instance Data.Aeson.Types.Class.FromJSON Discogs.Types.Artist.Artist instance Data.Aeson.Types.Class.FromJSON Discogs.Types.Artist.ImagesList instance Data.Aeson.Types.Class.FromJSON Discogs.Types.Artist.Image instance Data.Aeson.Types.Class.FromJSON Discogs.Types.Artist.MembersList instance Data.Aeson.Types.Class.FromJSON Discogs.Types.Artist.Member instance Data.Aeson.Types.Class.FromJSON Discogs.Types.Artist.ReleaseArtistList instance Data.Aeson.Types.Class.FromJSON Discogs.Types.Artist.ReleaseArtist module Discogs.Types.Label -- | This is required to look up a release. Example: '1' newtype LabelID LabelID :: Text -> LabelID -- | The Label resource represents a label, company, recording studio, -- location, or other entity involved with Artists and Releases. data Label Label :: Int -> String -> String -> String -> String -> String -> Array -> Array -> Array -> String -> String -> Label [id] :: Label -> Int [profile] :: Label -> String [releases_url] :: Label -> String [name] :: Label -> String [contact_info] :: Label -> String [uri] :: Label -> String [sublabels] :: Label -> Array [urls] :: Label -> Array [images] :: Label -> Array [resource_url] :: Label -> String [data_quality] :: Label -> String -- | This is for any sort of associated sub-label, siblings, etc. data Sublabel Sublabel :: Int -> String -> String -> Sublabel [sublabel_id] :: Sublabel -> Int [sublabel_name] :: Sublabel -> String [sublabel_resource_url] :: Sublabel -> String -- | A list of type LabelRelease. data LabelReleaseList LabelReleaseList :: Pagination -> !Array -> LabelReleaseList [pagination] :: LabelReleaseList -> Pagination [releases] :: LabelReleaseList -> !Array -- | A release that was put out by a Label. data LabelRelease LabelRelease :: String -> String -> String -> String -> String -> String -> String -> String -> Int -> LabelRelease [artist] :: LabelRelease -> String [release_catno] :: LabelRelease -> String [format] :: LabelRelease -> String [release_id] :: LabelRelease -> String [release_resource_url] :: LabelRelease -> String [status] :: LabelRelease -> String [thumb] :: LabelRelease -> String [title] :: LabelRelease -> String [year] :: LabelRelease -> Int -- | A company that was involved with a specific Label. data Company Company :: String -> String -> Maybe String -> Int -> String -> String -> Company [catno] :: Company -> String [entity_type] :: Company -> String [entity_type_name] :: Company -> Maybe String [company_id] :: Company -> Int [company_name] :: Company -> String [company_resource_url] :: Company -> String instance GHC.Generics.Selector Discogs.Types.Label.S1_0_5Company instance GHC.Generics.Selector Discogs.Types.Label.S1_0_4Company instance GHC.Generics.Selector Discogs.Types.Label.S1_0_3Company instance GHC.Generics.Selector Discogs.Types.Label.S1_0_2Company instance GHC.Generics.Selector Discogs.Types.Label.S1_0_1Company instance GHC.Generics.Selector Discogs.Types.Label.S1_0_0Company instance GHC.Generics.Constructor Discogs.Types.Label.C1_0Company instance GHC.Generics.Datatype Discogs.Types.Label.D1Company instance GHC.Generics.Selector Discogs.Types.Label.S1_0_8LabelRelease instance GHC.Generics.Selector Discogs.Types.Label.S1_0_7LabelRelease instance GHC.Generics.Selector Discogs.Types.Label.S1_0_6LabelRelease instance GHC.Generics.Selector Discogs.Types.Label.S1_0_5LabelRelease instance GHC.Generics.Selector Discogs.Types.Label.S1_0_4LabelRelease instance GHC.Generics.Selector Discogs.Types.Label.S1_0_3LabelRelease instance GHC.Generics.Selector Discogs.Types.Label.S1_0_2LabelRelease instance GHC.Generics.Selector Discogs.Types.Label.S1_0_1LabelRelease instance GHC.Generics.Selector Discogs.Types.Label.S1_0_0LabelRelease instance GHC.Generics.Constructor Discogs.Types.Label.C1_0LabelRelease instance GHC.Generics.Datatype Discogs.Types.Label.D1LabelRelease instance GHC.Generics.Selector Discogs.Types.Label.S1_0_1LabelReleaseList instance GHC.Generics.Selector Discogs.Types.Label.S1_0_0LabelReleaseList instance GHC.Generics.Constructor Discogs.Types.Label.C1_0LabelReleaseList instance GHC.Generics.Datatype Discogs.Types.Label.D1LabelReleaseList instance GHC.Generics.Selector Discogs.Types.Label.S1_0_2Sublabel instance GHC.Generics.Selector Discogs.Types.Label.S1_0_1Sublabel instance GHC.Generics.Selector Discogs.Types.Label.S1_0_0Sublabel instance GHC.Generics.Constructor Discogs.Types.Label.C1_0Sublabel instance GHC.Generics.Datatype Discogs.Types.Label.D1Sublabel instance GHC.Generics.Selector Discogs.Types.Label.S1_0_10Label instance GHC.Generics.Selector Discogs.Types.Label.S1_0_9Label instance GHC.Generics.Selector Discogs.Types.Label.S1_0_8Label instance GHC.Generics.Selector Discogs.Types.Label.S1_0_7Label instance GHC.Generics.Selector Discogs.Types.Label.S1_0_6Label instance GHC.Generics.Selector Discogs.Types.Label.S1_0_5Label instance GHC.Generics.Selector Discogs.Types.Label.S1_0_4Label instance GHC.Generics.Selector Discogs.Types.Label.S1_0_3Label instance GHC.Generics.Selector Discogs.Types.Label.S1_0_2Label instance GHC.Generics.Selector Discogs.Types.Label.S1_0_1Label instance GHC.Generics.Selector Discogs.Types.Label.S1_0_0Label instance GHC.Generics.Constructor Discogs.Types.Label.C1_0Label instance GHC.Generics.Datatype Discogs.Types.Label.D1Label instance GHC.Generics.Constructor Discogs.Types.Label.C1_0LabelID instance GHC.Generics.Datatype Discogs.Types.Label.D1LabelID instance GHC.Classes.Eq Discogs.Types.Label.Company instance GHC.Generics.Generic Discogs.Types.Label.Company instance GHC.Show.Show Discogs.Types.Label.Company instance GHC.Classes.Eq Discogs.Types.Label.LabelRelease instance GHC.Generics.Generic Discogs.Types.Label.LabelRelease instance GHC.Show.Show Discogs.Types.Label.LabelRelease instance GHC.Classes.Eq Discogs.Types.Label.LabelReleaseList instance GHC.Generics.Generic Discogs.Types.Label.LabelReleaseList instance GHC.Show.Show Discogs.Types.Label.LabelReleaseList instance GHC.Classes.Eq Discogs.Types.Label.Sublabel instance GHC.Generics.Generic Discogs.Types.Label.Sublabel instance GHC.Show.Show Discogs.Types.Label.Sublabel instance GHC.Classes.Eq Discogs.Types.Label.Label instance GHC.Generics.Generic Discogs.Types.Label.Label instance GHC.Show.Show Discogs.Types.Label.Label instance GHC.Generics.Generic Discogs.Types.Label.LabelID instance GHC.Classes.Ord Discogs.Types.Label.LabelID instance GHC.Classes.Eq Discogs.Types.Label.LabelID instance GHC.Read.Read Discogs.Types.Label.LabelID instance GHC.Show.Show Discogs.Types.Label.LabelID instance Data.Aeson.Types.Class.FromJSON Discogs.Types.Label.LabelID instance Data.Aeson.Types.Class.FromJSON Discogs.Types.Label.Label instance Data.Aeson.Types.Class.FromJSON Discogs.Types.Label.Sublabel instance Data.Aeson.Types.Class.FromJSON Discogs.Types.Label.LabelReleaseList instance Data.Aeson.Types.Class.FromJSON Discogs.Types.Label.LabelRelease instance Data.Aeson.Types.Class.FromJSON Discogs.Types.Label.Company module Discogs.Types.Release -- | This is required to look up a release. Example: '249504' newtype ReleaseID ReleaseID :: Text -> ReleaseID -- | The Release resource represents a particular physical or digital -- object released by one or more Artists. data Release Release :: Text -> Int -> !Array -> Text -> Maybe Text -> Community -> Maybe Array -> Maybe Text -> Maybe Text -> Maybe Text -> Maybe Int -> Maybe Array -> Maybe Int -> Array -> [Text] -> Maybe Array -> Maybe Array -> Maybe Array -> Int -> Text -> Text -> Maybe Text -> Maybe Text -> Maybe Text -> Maybe Array -> Text -> [Text] -> !Array -> Text -> Maybe Array -> Maybe Int -> Release [title] :: Release -> Text [id] :: Release -> Int [artists] :: Release -> !Array [data_quality] :: Release -> Text [thumb] :: Release -> Maybe Text [community] :: Release -> Community [companies] :: Release -> Maybe Array [country] :: Release -> Maybe Text [date_added] :: Release -> Maybe Text [date_changed] :: Release -> Maybe Text [estimated_weight] :: Release -> Maybe Int [extraartists] :: Release -> Maybe Array [format_quantity] :: Release -> Maybe Int [formats] :: Release -> Array [genres] :: Release -> [Text] [identifiers] :: Release -> Maybe Array [images] :: Release -> Maybe Array [labels] :: Release -> Maybe Array [master_id] :: Release -> Int [master_url] :: Release -> Text [notes] :: Release -> Text [released] :: Release -> Maybe Text [released_formatted] :: Release -> Maybe Text [resource_url] :: Release -> Maybe Text [series] :: Release -> Maybe Array [status] :: Release -> Text [styles] :: Release -> [Text] [tracklist] :: Release -> !Array [uri] :: Release -> Text [videos] :: Release -> Maybe Array [year] :: Release -> Maybe Int -- | This is a list containg Releases. data ReleaseList ReleaseList :: !Array -> Pagination -> ReleaseList [releases] :: ReleaseList -> !Array [pagination] :: ReleaseList -> Pagination -- | This is an artist who performs on a release. data ArtistRelease ArtistRelease :: String -> Int -> Int -> String -> String -> String -> String -> String -> Int -> ArtistRelease [artist] :: ArtistRelease -> String [r_id] :: ArtistRelease -> Int [main_release] :: ArtistRelease -> Int [rResource_url] :: ArtistRelease -> String [role] :: ArtistRelease -> String [rthumb] :: ArtistRelease -> String [rtitle] :: ArtistRelease -> String [rtype] :: ArtistRelease -> String [ryear] :: ArtistRelease -> Int -- | This is the format of a release. Example: 2 X 7" Vinyl data Format Format :: Maybe Array -> Int -> Int -> Format [descriptions] :: Format -> Maybe Array [name] :: Format -> Int [quantity] :: Format -> Int -- | This is the Release's identifier (barcode, etc.) data Identifier Identifier :: String -> String -> Identifier [iType] :: Identifier -> String [value] :: Identifier -> String -- | This is a track contained on a Release. data Track Track :: String -> String -> String -> String -> Track [duration] :: Track -> String [position] :: Track -> String [tTitle] :: Track -> String [type_] :: Track -> String -- | This is a Video resource associated with a Release. data Video Video :: String -> Int -> Bool -> String -> String -> Video [v_description] :: Video -> String [v_duration] :: Video -> Int [embed] :: Video -> Bool [v_title] :: Video -> String [v_uri] :: Video -> String instance GHC.Generics.Selector Discogs.Types.Release.S1_0_4Video instance GHC.Generics.Selector Discogs.Types.Release.S1_0_3Video instance GHC.Generics.Selector Discogs.Types.Release.S1_0_2Video instance GHC.Generics.Selector Discogs.Types.Release.S1_0_1Video instance GHC.Generics.Selector Discogs.Types.Release.S1_0_0Video instance GHC.Generics.Constructor Discogs.Types.Release.C1_0Video instance GHC.Generics.Datatype Discogs.Types.Release.D1Video instance GHC.Generics.Selector Discogs.Types.Release.S1_0_3Track instance GHC.Generics.Selector Discogs.Types.Release.S1_0_2Track instance GHC.Generics.Selector Discogs.Types.Release.S1_0_1Track instance GHC.Generics.Selector Discogs.Types.Release.S1_0_0Track instance GHC.Generics.Constructor Discogs.Types.Release.C1_0Track instance GHC.Generics.Datatype Discogs.Types.Release.D1Track instance GHC.Generics.Selector Discogs.Types.Release.S1_0_1Identifier instance GHC.Generics.Selector Discogs.Types.Release.S1_0_0Identifier instance GHC.Generics.Constructor Discogs.Types.Release.C1_0Identifier instance GHC.Generics.Datatype Discogs.Types.Release.D1Identifier instance GHC.Generics.Selector Discogs.Types.Release.S1_0_2Format instance GHC.Generics.Selector Discogs.Types.Release.S1_0_1Format instance GHC.Generics.Selector Discogs.Types.Release.S1_0_0Format instance GHC.Generics.Constructor Discogs.Types.Release.C1_0Format instance GHC.Generics.Datatype Discogs.Types.Release.D1Format instance GHC.Generics.Selector Discogs.Types.Release.S1_0_30Release instance GHC.Generics.Selector Discogs.Types.Release.S1_0_29Release instance GHC.Generics.Selector Discogs.Types.Release.S1_0_28Release instance GHC.Generics.Selector Discogs.Types.Release.S1_0_27Release instance GHC.Generics.Selector Discogs.Types.Release.S1_0_26Release instance GHC.Generics.Selector Discogs.Types.Release.S1_0_25Release instance GHC.Generics.Selector Discogs.Types.Release.S1_0_24Release instance GHC.Generics.Selector Discogs.Types.Release.S1_0_23Release instance GHC.Generics.Selector Discogs.Types.Release.S1_0_22Release instance GHC.Generics.Selector Discogs.Types.Release.S1_0_21Release instance GHC.Generics.Selector Discogs.Types.Release.S1_0_20Release instance GHC.Generics.Selector Discogs.Types.Release.S1_0_19Release instance GHC.Generics.Selector Discogs.Types.Release.S1_0_18Release instance GHC.Generics.Selector Discogs.Types.Release.S1_0_17Release instance GHC.Generics.Selector Discogs.Types.Release.S1_0_16Release instance GHC.Generics.Selector Discogs.Types.Release.S1_0_15Release instance GHC.Generics.Selector Discogs.Types.Release.S1_0_14Release instance GHC.Generics.Selector Discogs.Types.Release.S1_0_13Release instance GHC.Generics.Selector Discogs.Types.Release.S1_0_12Release instance GHC.Generics.Selector Discogs.Types.Release.S1_0_11Release instance GHC.Generics.Selector Discogs.Types.Release.S1_0_10Release instance GHC.Generics.Selector Discogs.Types.Release.S1_0_9Release instance GHC.Generics.Selector Discogs.Types.Release.S1_0_8Release instance GHC.Generics.Selector Discogs.Types.Release.S1_0_7Release instance GHC.Generics.Selector Discogs.Types.Release.S1_0_6Release instance GHC.Generics.Selector Discogs.Types.Release.S1_0_5Release instance GHC.Generics.Selector Discogs.Types.Release.S1_0_4Release instance GHC.Generics.Selector Discogs.Types.Release.S1_0_3Release instance GHC.Generics.Selector Discogs.Types.Release.S1_0_2Release instance GHC.Generics.Selector Discogs.Types.Release.S1_0_1Release instance GHC.Generics.Selector Discogs.Types.Release.S1_0_0Release instance GHC.Generics.Constructor Discogs.Types.Release.C1_0Release instance GHC.Generics.Datatype Discogs.Types.Release.D1Release instance GHC.Generics.Constructor Discogs.Types.Release.C1_0ReleaseID instance GHC.Generics.Datatype Discogs.Types.Release.D1ReleaseID instance GHC.Classes.Eq Discogs.Types.Release.Video instance GHC.Generics.Generic Discogs.Types.Release.Video instance GHC.Show.Show Discogs.Types.Release.Video instance GHC.Classes.Eq Discogs.Types.Release.Track instance GHC.Generics.Generic Discogs.Types.Release.Track instance GHC.Show.Show Discogs.Types.Release.Track instance GHC.Classes.Eq Discogs.Types.Release.Identifier instance GHC.Generics.Generic Discogs.Types.Release.Identifier instance GHC.Show.Show Discogs.Types.Release.Identifier instance GHC.Classes.Eq Discogs.Types.Release.Format instance GHC.Generics.Generic Discogs.Types.Release.Format instance GHC.Show.Show Discogs.Types.Release.Format instance GHC.Show.Show Discogs.Types.Release.ArtistRelease instance GHC.Show.Show Discogs.Types.Release.ReleaseList instance GHC.Generics.Generic Discogs.Types.Release.Release instance GHC.Classes.Eq Discogs.Types.Release.Release instance GHC.Show.Show Discogs.Types.Release.Release instance GHC.Generics.Generic Discogs.Types.Release.ReleaseID instance GHC.Classes.Ord Discogs.Types.Release.ReleaseID instance GHC.Classes.Eq Discogs.Types.Release.ReleaseID instance GHC.Read.Read Discogs.Types.Release.ReleaseID instance GHC.Show.Show Discogs.Types.Release.ReleaseID instance Data.Aeson.Types.Class.FromJSON Discogs.Types.Release.ReleaseID instance Data.Aeson.Types.Class.FromJSON Discogs.Types.Release.Release instance Data.Aeson.Types.Class.FromJSON Discogs.Types.Release.ReleaseList instance Data.Aeson.Types.Class.FromJSON Discogs.Types.Release.ArtistRelease instance Data.Aeson.Types.Class.FromJSON Discogs.Types.Release.Format instance Data.Aeson.Types.Class.FromJSON Discogs.Types.Release.Identifier instance Data.Aeson.Types.Class.FromJSON Discogs.Types.Release.Track instance Data.Aeson.Types.Class.FromJSON Discogs.Types.Release.Video module Discogs.Types.Master -- | This is required to look up a master release. Example: '1000' data MasterID MasterID :: Text -> MasterID -- | The Master resource represents a set of similar Releases. Masters -- (also known as “master releases”) have a “main release” which is often -- the chronologically earliest. data Master Master :: Text -> Int -> !Array -> Text -> [Text] -> Maybe Array -> Int -> Text -> Maybe Text -> [Text] -> !Array -> Text -> Maybe Array -> Text -> Maybe Int -> Master [title] :: Master -> Text [id] :: Master -> Int [artists] :: Master -> !Array [data_quality] :: Master -> Text [genres] :: Master -> [Text] [images] :: Master -> Maybe Array [main_release] :: Master -> Int [main_release_url] :: Master -> Text [resource_url] :: Master -> Maybe Text [styles] :: Master -> [Text] [tracklist] :: Master -> !Array [uri] :: Master -> Text [videos] :: Master -> Maybe Array [versions_url] :: Master -> Text [year] :: Master -> Maybe Int -- | This is a list of type MasterVersion. data MasterVersionsList MasterVersionsList :: Pagination -> !Array -> MasterVersionsList [pagination] :: MasterVersionsList -> Pagination [versions] :: MasterVersionsList -> !Array instance GHC.Generics.Selector Discogs.Types.Master.S1_0_1MasterVersionsList instance GHC.Generics.Selector Discogs.Types.Master.S1_0_0MasterVersionsList instance GHC.Generics.Constructor Discogs.Types.Master.C1_0MasterVersionsList instance GHC.Generics.Datatype Discogs.Types.Master.D1MasterVersionsList instance GHC.Generics.Selector Discogs.Types.Master.S1_0_14Master instance GHC.Generics.Selector Discogs.Types.Master.S1_0_13Master instance GHC.Generics.Selector Discogs.Types.Master.S1_0_12Master instance GHC.Generics.Selector Discogs.Types.Master.S1_0_11Master instance GHC.Generics.Selector Discogs.Types.Master.S1_0_10Master instance GHC.Generics.Selector Discogs.Types.Master.S1_0_9Master instance GHC.Generics.Selector Discogs.Types.Master.S1_0_8Master instance GHC.Generics.Selector Discogs.Types.Master.S1_0_7Master instance GHC.Generics.Selector Discogs.Types.Master.S1_0_6Master instance GHC.Generics.Selector Discogs.Types.Master.S1_0_5Master instance GHC.Generics.Selector Discogs.Types.Master.S1_0_4Master instance GHC.Generics.Selector Discogs.Types.Master.S1_0_3Master instance GHC.Generics.Selector Discogs.Types.Master.S1_0_2Master instance GHC.Generics.Selector Discogs.Types.Master.S1_0_1Master instance GHC.Generics.Selector Discogs.Types.Master.S1_0_0Master instance GHC.Generics.Constructor Discogs.Types.Master.C1_0Master instance GHC.Generics.Datatype Discogs.Types.Master.D1Master instance GHC.Generics.Constructor Discogs.Types.Master.C1_0MasterID instance GHC.Generics.Datatype Discogs.Types.Master.D1MasterID instance GHC.Generics.Generic Discogs.Types.Master.MasterVersionsList instance GHC.Classes.Eq Discogs.Types.Master.MasterVersionsList instance GHC.Show.Show Discogs.Types.Master.MasterVersionsList instance GHC.Generics.Generic Discogs.Types.Master.Master instance GHC.Classes.Eq Discogs.Types.Master.Master instance GHC.Show.Show Discogs.Types.Master.Master instance GHC.Generics.Generic Discogs.Types.Master.MasterID instance GHC.Classes.Ord Discogs.Types.Master.MasterID instance GHC.Classes.Eq Discogs.Types.Master.MasterID instance GHC.Read.Read Discogs.Types.Master.MasterID instance GHC.Show.Show Discogs.Types.Master.MasterID instance Data.Aeson.Types.Class.FromJSON Discogs.Types.Master.MasterID instance Data.Aeson.Types.Class.FromJSON Discogs.Types.Master.Master instance Data.Aeson.Types.Class.FromJSON Discogs.Types.Master.MasterVersionsList -- | Contains artist-related actions, like finding an artist's releases or -- retrieving an artist's information. module Discogs.Actions.Artist -- | Get the information Discogs exposes on artist with the specified id -- -- GET /artists/:artistId -- --
-- runDiscogsAnon $ Discogs.Actions.getArtist $ ArtistID "108713" --getArtist :: Monad m => ArtistID -> DiscogsT m Artist -- | Get all release information exposed for an artist with specified id -- -- GET /artists/:artistId/releases -- --
-- runDiscogsAnon $ Discogs.Actions.getArtistReleases $ ArtistID "108713" --getArtistReleases :: Monad m => ArtistID -> DiscogsT m ReleaseList -- | Contains release related actions, like finding a specific release by -- id. module Discogs.Actions.Release -- | Get release with the specified id -- -- GET /releases/:releaseId -- --
-- runDiscogsAnon $ Discogs.Actions.getRelease $ ReleaseID "249504" --getRelease :: Monad m => ReleaseID -> DiscogsT m Release -- | Contains master-related actions, like finding a specific master -- release by id or getting a list of all master versions. module Discogs.Actions.Master -- | Get the information on a master release with the specified id -- -- GET /masters/:masterId -- --
-- runDiscogsAnon $ Discogs.Actions.getMaster $ MasterID "1000" --getMaster :: Monad m => MasterID -> DiscogsT m Master -- | Get a list of all master versions with a specific id -- -- GET /masters/:masterId/versions -- --
-- runDiscogsAnon $ Discogs.Actions.getMasterVersions $ MasterID "1000" --getMasterVersions :: Monad m => MasterID -> DiscogsT m MasterVersionsList -- | Contains label related actions, like finding a label by id or getting -- a list of all the label's releases. module Discogs.Actions.Label -- | Get a label with a specific id -- -- GET /labels/:labelId -- --
-- runDiscogsAnon $ Discogs.Actions.getLabel $ LabelID "1" --getLabel :: Monad m => LabelID -> DiscogsT m Label -- | Get all releases from a label with a specific id -- -- GET /labels/:labelId/releases -- --
-- runDiscogsAnon $ Discogs.Actions.getLabelReleases $ LabelID "1" --getLabelReleases :: Monad m => LabelID -> DiscogsT m LabelReleaseList -- | This module contains all actions that wrap Discog's API endpoints. -- Only database actions (with the exception of search) have been -- implemented so far. module Discogs.Actions -- | This module contains all types of data returned by the Discogs API. -- Only database actions (with the exception of search) have been -- implemented so far. module Discogs.Types -- | The Artist resource represents a person in the Discogs database who -- contributed to a Release in some capacity. data Artist -- | The Release resource represents a particular physical or digital -- object released by one or more Artists. data Release -- | The Master resource represents a set of similar Releases. Masters -- (also known as “master releases”) have a “main release” which is often -- the chronologically earliest. data Master -- | The Label resource represents a label, company, recording studio, -- location, or other entity involved with Artists and Releases. data Label -- | This main module contains the building blocks to operate the library. -- It exports functionality for running built DiscogsT actions, as -- well as re-exporting a few helpful types from around the library. Not -- every type is exported, however, due to clashing record fields. It's -- recommended to import modules from Discogs.Types.* qualified -- so that you can use all the record fields without having to deal with -- ambiguous functions. module Discogs -- | Run a Discogs action (or a DiscogsT transformer action). -- This uses the default logged-in settings for DiscogsOptions: -- rate limiting enabled, default manager, login via username and -- password, and the default user-agent. You should change the user agent -- if you're making anything more complex than a basic script, since -- Discogs's API policy says that you should have a uniquely identifiable -- user agent. runDiscogs :: MonadIO m => Text -> Text -> DiscogsT m a -> m (Either (APIError DiscogsError) a) -- | Run a Discogs action (or a DiscogsT transformer action). -- This uses the default logged-out settings, so you won't be able to do -- anything that requires authentication (like searching or marketplace -- related functions). runDiscogsAnon :: MonadIO m => DiscogsT m a -> m (Either (APIError DiscogsError) a) runDiscogsWith :: MonadIO m => DiscogsOptions -> DiscogsT m a -> m (Either (APIError DiscogsError) a) -- | Run a Discogs or DiscogsT action with custom settings. -- You probably won't need this function for most things, but it's handy -- if you want to persist a connection over multiple Discogs -- sessions or use a custom user agent string. runResumeDiscogsWith :: MonadIO m => DiscogsOptions -> DiscogsT m a -> m (Either (APIError DiscogsError, Maybe (DiscogsT m a)) a) interpretIO :: MonadIO m => DiscogsState -> DiscogsT m a -> m (Either (APIError DiscogsError, Maybe (DiscogsT m a)) a) data DiscogsOptions DiscogsOptions :: Bool -> Maybe Manager -> LoginMethod -> Maybe ByteString -> DiscogsOptions [rateLimitingEnabled] :: DiscogsOptions -> Bool [connectionManager] :: DiscogsOptions -> Maybe Manager [loginMethod] :: DiscogsOptions -> LoginMethod [customUserAgent] :: DiscogsOptions -> Maybe ByteString -- | The default set of options (ie: Anonymous login) defaultDiscogsOptions :: DiscogsOptions -- | Are we logging in to Discogs? If yes, should we use a stored set of -- credentials or get a new fresh set? data LoginMethod -- | Don't login, instead use an anonymous account Anonymous :: LoginMethod -- | Login using the specified username and password Credentials :: Text -> Text -> LoginMethod -- | Login using a stored set of credentials. Usually the best way to get -- these is to do runDiscogsAnon $ login user -- pass. StoredDetails :: LoginDetails -> LoginMethod -- | Error type for the API, where a is the type that -- should be returned when something goes wrong on the other end - i.e. -- any error that isn't directly related to this library. data APIError a :: * -> * -- | A type that represents any error that happens on the API end. Define -- your own custom type with a FromJSON instance if you want to -- handle them, or you can use () if you just want to ignore -- them all. APIError :: a -> APIError a -- | Something went wrong when we tried to do a HTTP operation. HTTPError :: HttpException -> APIError a -- | You're trying to create an invalid URL somewhere - check your -- Builder's base URL and your Routes. InvalidURLError :: APIError a -- | Failed when parsing the response, and it wasn't an error on their end. ParseError :: String -> APIError a -- | Empty error to serve as a zero element for Monoid. EmptyError :: APIError a data DiscogsError DiscogsError :: Object -> DiscogsError NoRelease :: DiscogsError NoArtist :: DiscogsError RateLimitError :: Integer -> Text -> DiscogsError NoMasterRelease :: DiscogsError NoLabel :: DiscogsError type Discogs a = DiscogsT IO a newtype DiscogsT m a DiscogsT :: (FreeT (DiscogsF m) m a) -> DiscogsT m a data DiscogsF m a FailWith :: APIError DiscogsError -> DiscogsF m a Nest :: DiscogsT m b -> (Either (APIError DiscogsError) b -> a) -> DiscogsF m a NestResuming :: DiscogsT m b -> (Either (APIError DiscogsError, Maybe (DiscogsT m b)) b -> a) -> DiscogsF m a ReceiveRoute :: Route -> (b -> a) -> DiscogsF m a RunRoute :: Route -> (b -> a) -> DiscogsF m a WithBaseURL :: Text -> DiscogsT m b -> (b -> a) -> DiscogsF m a runRoute :: (FromJSON a, Monad m) => Route -> DiscogsT m a receiveRoute :: (Receivable a, Monad m) => Route -> DiscogsT m a nest :: Monad m => DiscogsT m a -> DiscogsT m (Either (APIError DiscogsError) a) failWith :: Monad m => APIError DiscogsError -> DiscogsT m a newtype Modhash Modhash :: Text -> Modhash data LoginDetails LoginDetails :: Modhash -> CookieJar -> LoginDetails withBaseURL :: Monad m => Text -> DiscogsT m a -> DiscogsT m a builder :: Builder mainBaseURL :: Text loginBaseURL :: Text addHeader :: Maybe ByteString -> Request -> Request addAPIType :: Route -> Route instance GHC.Show.Show Discogs.LoginMethod instance Data.Default.Class.Default Discogs.DiscogsOptions instance Data.Default.Class.Default Discogs.LoginMethod