diff --git a/CHANGELOG.md b/CHANGELOG.md
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,6 +1,10 @@
 Changelog
 ==========
 
+## Version 1.2.0
+
+* Export Provider and findFirst to look for credentials (#103)
+
 ## Version 1.1.0
 
 This version brings the following changes:
diff --git a/minio-hs.cabal b/minio-hs.cabal
--- a/minio-hs.cabal
+++ b/minio-hs.cabal
@@ -1,5 +1,5 @@
 name:                minio-hs
-version:             1.1.0
+version:             1.2.0
 synopsis:            A Minio Haskell Library for Amazon S3 compatible cloud
                      storage.
 description:         The Minio Haskell client library provides simple APIs to
diff --git a/src/Network/Minio.hs b/src/Network/Minio.hs
--- a/src/Network/Minio.hs
+++ b/src/Network/Minio.hs
@@ -20,9 +20,11 @@
   (
   -- * Credentials
     Credentials (..)
+  , Provider
   , fromAWSConfigFile
   , fromAWSEnv
   , fromMinioEnv
+  , findFirst
 
   -- * Connecting to object storage
   ---------------------------------
diff --git a/src/Network/Minio/Data.hs b/src/Network/Minio/Data.hs
--- a/src/Network/Minio/Data.hs
+++ b/src/Network/Minio/Data.hs
@@ -113,8 +113,11 @@
                                , cSecretKey :: Text
                                } deriving (Eq, Show)
 
+-- | A Provider is an action that may return Credentials
 type Provider = IO (Maybe Credentials)
 
+-- | Combines the given list of providers, by calling each one in
+-- order until Credentials are found.
 findFirst :: [Provider] -> Provider
 findFirst [] = return Nothing
 findFirst (f:fs) = do c <- f
