diff --git a/CHANGELOG.md b/CHANGELOG.md
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,3 +1,13 @@
+0.1.4
+=====
+
+*   Solve [issue #15](https://github.com/alephcloud/hs-aws-kinesis/issues/15),
+    adding support for custom endpoints.
+
+*   Add support for specifying a protocol to `KinesisConfiguration`.
+
+*   Raise lower bound on aws-general to 0.2.1.
+
 0.1.3
 =====
 
diff --git a/aws-kinesis.cabal b/aws-kinesis.cabal
--- a/aws-kinesis.cabal
+++ b/aws-kinesis.cabal
@@ -1,4 +1,4 @@
--- Copyright (c) 2013-2014 PivotCloud, Inc.
+-- Copyright (c) 2013-2015 PivotCloud, Inc.
 --
 -- aws-kinesis.cabal
 --
@@ -17,7 +17,7 @@
 -- under the License.
 
 Name: aws-kinesis
-Version: 0.1.3
+Version: 0.1.4
 Synopsis: Bindings for Amazon Kinesis
 description:
     Bindings for <http://aws.amazon.com/kinesis/ Amazon Kinesis>
@@ -35,7 +35,7 @@
 License-file: LICENSE
 Author: Lars Kuhtz <lkuhtz@pivotmail.com>
 Maintainer: Lars Kuhtz <lkuhtz@pivotmail.com>
-Copyright: Copyright (c) 2013-2014 PivotCloud, Inc.
+Copyright: Copyright (c) 2013-2015 PivotCloud, Inc.
 Category: Network, Web, AWS, Cloud, Distributed Computing
 Build-type: Simple
 
@@ -55,7 +55,7 @@
 source-repository this
     type: git
     location: https://github.com/alephcloud/hs-aws-kinesis.git
-    tag: 0.1.3
+    tag: 0.1.4
 
 Library
     default-language: Haskell2010
@@ -80,7 +80,7 @@
         QuickCheck >= 2.7,
         aeson >= 0.7,
         aws >= 0.9,
-        aws-general >= 0.2,
+        aws-general >= 0.2.1,
         base == 4.*,
         base64-bytestring >= 1.0,
         blaze-builder >= 0.3,
diff --git a/constraints b/constraints
--- a/constraints
+++ b/constraints
@@ -7,7 +7,7 @@
              async ==2.0.1.6,
              attoparsec ==0.12.1.2,
              aws ==0.11.2,
-             aws-general ==0.2.0,
+             aws-general ==0.2.1,
              base ==4.7.0.1,
              base16-bytestring ==0.1.1.6,
              base64-bytestring ==1.0.0.1,
@@ -28,10 +28,10 @@
              containers ==0.5.5.1,
              cookie ==0.4.1.4,
              crypto-cipher-types ==0.0.9,
-             crypto-numbers ==0.2.3,
+             crypto-numbers ==0.2.7,
              crypto-pubkey ==0.2.8,
              crypto-pubkey-types ==0.4.3,
-             crypto-random ==0.0.7,
+             crypto-random ==0.0.8,
              cryptohash ==0.11.6,
              data-default ==0.5.3,
              data-default-class ==0.0.1,
@@ -47,7 +47,7 @@
              ghc-prim ==0.3.1.0,
              hashable ==1.2.3.1,
              hourglass ==0.2.8,
-             http-client ==0.4.7,
+             http-client ==0.4.7.1,
              http-client-tls ==0.2.2,
              http-conduit ==2.1.5,
              http-types ==0.8.5,
@@ -67,10 +67,10 @@
              pem ==0.2.2,
              pretty ==1.1.1.1,
              primitive ==0.5.3.0,
-             process ==1.2.0.0,
+             process ==1.2.2.0,
              publicsuffixlist ==0.1,
              quickcheck-instances ==0.3.10,
-             random ==1.0.1.1,
+             random ==1.1,
              resourcet ==1.1.3.3,
              rts ==1.0,
              safe ==0.3.6,
@@ -79,18 +79,18 @@
              semigroups ==0.16.0.1,
              socks ==0.5.4,
              stm ==2.4.3,
-             streaming-commons ==0.1.8,
+             streaming-commons ==0.1.9.1,
              syb ==0.4.2,
              system-filepath ==0.4.13.1,
              tagged ==0.7.2,
              template-haskell ==2.9.0.0,
              text ==1.2.0.3,
              tf-random ==0.5,
-             time ==1.4.2,
+             time ==1.5.0.1,
              tls ==1.2.16,
              transformers ==0.4.1.0,
              transformers-base ==0.4.3,
-             unix ==2.7.0.1,
+             unix ==2.7.1.0,
              unordered-containers ==0.2.5.1,
              utf8-string ==0.3.8,
              vector ==0.10.11.0,
@@ -99,6 +99,6 @@
              x509-store ==1.5.0,
              x509-system ==1.5.0,
              x509-validation ==1.5.1,
-             xml-conduit ==1.2.3.1,
+             xml-conduit ==1.2.3.2,
              xml-types ==0.3.4,
              zlib ==0.5.4.1
diff --git a/src/Aws/Kinesis.hs b/src/Aws/Kinesis.hs
--- a/src/Aws/Kinesis.hs
+++ b/src/Aws/Kinesis.hs
@@ -1,4 +1,4 @@
--- Copyright (c) 2013-2014 PivotCloud, Inc.
+-- Copyright (c) 2013-2015 PivotCloud, Inc.
 --
 -- Aws.Kinesis
 --
@@ -18,7 +18,7 @@
 
 -- |
 -- Module: Aws.Kinesis
--- Copyright: Copyright (c) 2013-2014 PivotCloud, Inc.
+-- Copyright: Copyright (c) 2013-2015 PivotCloud, Inc.
 -- license: Apache License, Version 2.0
 -- Maintainer: Lars Kuhtz <lars@alephcloud.com>
 -- Stability: experimental
diff --git a/src/Aws/Kinesis/Commands/CreateStream.hs b/src/Aws/Kinesis/Commands/CreateStream.hs
--- a/src/Aws/Kinesis/Commands/CreateStream.hs
+++ b/src/Aws/Kinesis/Commands/CreateStream.hs
@@ -1,4 +1,4 @@
--- Copyright (c) 2013-2014 PivotCloud, Inc.
+-- Copyright (c) 2013-2015 PivotCloud, Inc.
 --
 -- Aws.Kinesis.Commands.CreateStream
 --
@@ -18,7 +18,7 @@
 
 -- |
 -- Module: Aws.Kinesis.Commands.CreateStream
--- Copyright: Copyright (c) 2013-2014 PivotCloud, Inc.
+-- Copyright: Copyright (c) 2013-2015 PivotCloud, Inc.
 -- license: Apache License, Version 2.0
 -- Maintainer: Lars Kuhtz <lars@alephcloud.com>
 -- Stability: experimental
diff --git a/src/Aws/Kinesis/Commands/DeleteStream.hs b/src/Aws/Kinesis/Commands/DeleteStream.hs
--- a/src/Aws/Kinesis/Commands/DeleteStream.hs
+++ b/src/Aws/Kinesis/Commands/DeleteStream.hs
@@ -1,4 +1,4 @@
--- Copyright (c) 2013-2014 PivotCloud, Inc.
+-- Copyright (c) 2013-2015 PivotCloud, Inc.
 --
 -- Aws.Kinesis.Commands.DeleteStream
 --
@@ -18,7 +18,7 @@
 
 -- |
 -- Module: Aws.Kinesis.Commands.DeleteStream
--- Copyright: Copyright (c) 2013-2014 PivotCloud, Inc.
+-- Copyright: Copyright (c) 2013-2015 PivotCloud, Inc.
 -- license: Apache License, Version 2.0
 -- Maintainer: Lars Kuhtz <lars@alephcloud.com>
 -- Stability: experimental
diff --git a/src/Aws/Kinesis/Commands/DescribeStream.hs b/src/Aws/Kinesis/Commands/DescribeStream.hs
--- a/src/Aws/Kinesis/Commands/DescribeStream.hs
+++ b/src/Aws/Kinesis/Commands/DescribeStream.hs
@@ -1,4 +1,4 @@
--- Copyright (c) 2013-2014 PivotCloud, Inc.
+-- Copyright (c) 2013-2015 PivotCloud, Inc.
 --
 -- Aws.Kinesis.Commands.DescribeStream
 --
@@ -18,7 +18,7 @@
 
 -- |
 -- Module: Aws.Kinesis.Commands.DescribeStream
--- Copyright: Copyright (c) 2013-2014 PivotCloud, Inc.
+-- Copyright: Copyright (c) 2013-2015 PivotCloud, Inc.
 -- license: Apache License, Version 2.0
 -- Maintainer: Lars Kuhtz <lars@alephcloud.com>
 -- Stability: experimental
diff --git a/src/Aws/Kinesis/Commands/GetRecords.hs b/src/Aws/Kinesis/Commands/GetRecords.hs
--- a/src/Aws/Kinesis/Commands/GetRecords.hs
+++ b/src/Aws/Kinesis/Commands/GetRecords.hs
@@ -1,4 +1,4 @@
--- Copyright (c) 2013-2014 PivotCloud, Inc.
+-- Copyright (c) 2013-2015 PivotCloud, Inc.
 --
 -- Aws.Kinesis.Commands.GetRecords
 --
@@ -18,7 +18,7 @@
 
 -- |
 -- Module: Aws.Kinesis.Commands.GetRecords
--- Copyright: Copyright (c) 2013-2014 PivotCloud, Inc.
+-- Copyright: Copyright (c) 2013-2015 PivotCloud, Inc.
 -- license: Apache License, Version 2.0
 -- Maintainer: Lars Kuhtz <lars@alephcloud.com>
 -- Stability: experimental
diff --git a/src/Aws/Kinesis/Commands/GetShardIterator.hs b/src/Aws/Kinesis/Commands/GetShardIterator.hs
--- a/src/Aws/Kinesis/Commands/GetShardIterator.hs
+++ b/src/Aws/Kinesis/Commands/GetShardIterator.hs
@@ -1,4 +1,4 @@
--- Copyright (c) 2013-2014 PivotCloud, Inc.
+-- Copyright (c) 2013-2015 PivotCloud, Inc.
 --
 -- Aws.Kinesis.Commands.GetShardIterator
 --
@@ -18,7 +18,7 @@
 
 -- |
 -- Module: Aws.Kinesis.Commands.GetShardIterator
--- Copyright: Copyright (c) 2013-2014 PivotCloud, Inc.
+-- Copyright: Copyright (c) 2013-2015 PivotCloud, Inc.
 -- license: Apache License, Version 2.0
 -- Maintainer: Lars Kuhtz <lars@alephcloud.com>
 -- Stability: experimental
diff --git a/src/Aws/Kinesis/Commands/ListStreams.hs b/src/Aws/Kinesis/Commands/ListStreams.hs
--- a/src/Aws/Kinesis/Commands/ListStreams.hs
+++ b/src/Aws/Kinesis/Commands/ListStreams.hs
@@ -1,4 +1,4 @@
--- Copyright (c) 2013-2014 PivotCloud, Inc.
+-- Copyright (c) 2013-2015 PivotCloud, Inc.
 --
 -- Aws.Kinesis.Commands.ListStreams
 --
@@ -18,7 +18,7 @@
 
 -- |
 -- Module: Aws.Kinesis.Commands.ListStreams
--- Copyright: Copyright (c) 2013-2014 PivotCloud, Inc.
+-- Copyright: Copyright (c) 2013-2015 PivotCloud, Inc.
 -- license: Apache License, Version 2.0
 -- Maintainer: Lars Kuhtz <lars@alephcloud.com>
 -- Stability: experimental
diff --git a/src/Aws/Kinesis/Commands/MergeShards.hs b/src/Aws/Kinesis/Commands/MergeShards.hs
--- a/src/Aws/Kinesis/Commands/MergeShards.hs
+++ b/src/Aws/Kinesis/Commands/MergeShards.hs
@@ -1,4 +1,4 @@
--- Copyright (c) 2013-2014 PivotCloud, Inc.
+-- Copyright (c) 2013-2015 PivotCloud, Inc.
 --
 -- Aws.Kinesis.Commands.MergeShards
 --
@@ -18,7 +18,7 @@
 
 -- |
 -- Module: Aws.Kinesis.Commands.MergeShards
--- Copyright: Copyright (c) 2013-2014 PivotCloud, Inc.
+-- Copyright: Copyright (c) 2013-2015 PivotCloud, Inc.
 -- license: Apache License, Version 2.0
 -- Maintainer: Lars Kuhtz <lars@alephcloud.com>
 -- Stability: experimental
diff --git a/src/Aws/Kinesis/Commands/PutRecord.hs b/src/Aws/Kinesis/Commands/PutRecord.hs
--- a/src/Aws/Kinesis/Commands/PutRecord.hs
+++ b/src/Aws/Kinesis/Commands/PutRecord.hs
@@ -1,4 +1,4 @@
--- Copyright (c) 2013-2014 PivotCloud, Inc.
+-- Copyright (c) 2013-2015 PivotCloud, Inc.
 --
 -- Aws.Kinesis.Commands.PutRecord
 --
@@ -18,7 +18,7 @@
 
 -- |
 -- Module: Aws.Kinesis.Commands.PutRecord
--- Copyright: Copyright (c) 2013-2014 PivotCloud, Inc.
+-- Copyright: Copyright (c) 2013-2015 PivotCloud, Inc.
 -- license: Apache License, Version 2.0
 -- Maintainer: Lars Kuhtz <lars@alephcloud.com>
 -- Stability: experimental
diff --git a/src/Aws/Kinesis/Commands/PutRecords.hs b/src/Aws/Kinesis/Commands/PutRecords.hs
--- a/src/Aws/Kinesis/Commands/PutRecords.hs
+++ b/src/Aws/Kinesis/Commands/PutRecords.hs
@@ -1,4 +1,4 @@
--- Copyright (c) 2013-2014 PivotCloud, Inc.
+-- Copyright (c) 2013-2015 PivotCloud, Inc.
 --
 -- Aws.Kinesis.Commands.PutRecords
 --
@@ -18,7 +18,7 @@
 
 -- |
 -- Module: Aws.Kinesis.Commands.PutRecords
--- Copyright: Copyright (c) 2013-2014 PivotCloud, Inc.
+-- Copyright: Copyright (c) 2013-2015 PivotCloud, Inc.
 -- license: Apache License, Version 2.0
 -- Maintainer: Jon Sterling <jsterling@alephcloud.com>
 -- Stability: experimental
diff --git a/src/Aws/Kinesis/Commands/SplitShard.hs b/src/Aws/Kinesis/Commands/SplitShard.hs
--- a/src/Aws/Kinesis/Commands/SplitShard.hs
+++ b/src/Aws/Kinesis/Commands/SplitShard.hs
@@ -1,4 +1,4 @@
--- Copyright (c) 2013-2014 PivotCloud, Inc.
+-- Copyright (c) 2013-2015 PivotCloud, Inc.
 --
 -- Aws.Kinesis.Commands.SplitShard
 --
@@ -18,7 +18,7 @@
 
 -- |
 -- Module: Aws.Kinesis.Commands.SplitShard
--- Copyright: Copyright (c) 2013-2014 PivotCloud, Inc.
+-- Copyright: Copyright (c) 2013-2015 PivotCloud, Inc.
 -- license: Apache License, Version 2.0
 -- Maintainer: Lars Kuhtz <lars@alephcloud.com>
 -- Stability: experimental
diff --git a/src/Aws/Kinesis/Core.hs b/src/Aws/Kinesis/Core.hs
--- a/src/Aws/Kinesis/Core.hs
+++ b/src/Aws/Kinesis/Core.hs
@@ -1,4 +1,4 @@
--- Copyright (c) 2013-2014 PivotCloud, Inc.
+-- Copyright (c) 2013-2015 PivotCloud, Inc.
 --
 -- Aws.Kinesis.Core
 --
@@ -18,7 +18,7 @@
 
 -- |
 -- Module: Aws.Kinesis.Core
--- Copyright: Copyright (c) 2013-2014 PivotCloud, Inc.
+-- Copyright: Copyright (c) 2013-2015 PivotCloud, Inc.
 -- license: Apache License, Version 2.0
 -- Maintainer: Lars Kuhtz <lars@alephcloud.com>
 -- Stability: experimental
@@ -37,6 +37,7 @@
 
 -- * Kinesis Client Configuration
 , KinesisConfiguration(..)
+, defaultKinesisConfiguration
 
 -- * Kinesis Client Metadata
 , KinesisMetadata(..)
@@ -174,6 +175,7 @@
 kinesisServiceEndpoint EuWest1 = "kinesis.eu-west-1.amazonaws.com"
 kinesisServiceEndpoint UsEast1 = "kinesis.us-east-1.amazonaws.com"
 kinesisServiceEndpoint UsWest2 = "kinesis.us-west-2.amazonaws.com"
+kinesisServiceEndpoint (CustomEndpoint e _) = T.encodeUtf8 e
 kinesisServiceEndpoint r = error $ "Aws.Kinesis.Core.kinesisServiceEndpoint: unsupported region " <> show r -- FIXME
 
 -- -------------------------------------------------------------------------- --
@@ -199,9 +201,18 @@
 
 data KinesisConfiguration qt = KinesisConfiguration
     { kinesisConfRegion :: Region
+    , kinesisConfProtocol :: Protocol
     }
     deriving (Show)
 
+defaultKinesisConfiguration
+    :: Region
+    -> KinesisConfiguration qt
+defaultKinesisConfiguration r = KinesisConfiguration
+    { kinesisConfRegion = r
+    , kinesisConfProtocol = HTTPS
+    }
+
 -- -------------------------------------------------------------------------- --
 -- Kinesis Query
 
@@ -219,7 +230,7 @@
 kinesisSignQuery :: KinesisQuery -> KinesisConfiguration qt -> SignatureData -> SignedQuery
 kinesisSignQuery query conf sigData = SignedQuery
     { sqMethod = Post
-    , sqProtocol = HTTPS
+    , sqProtocol = kinesisConfProtocol conf
     , sqHost = host
     , sqPort = port
     , sqPath = BB.toByteString $ HTTP.encodePathSegments path
@@ -238,7 +249,9 @@
     reqQuery = []
     host = kinesisServiceEndpoint $ kinesisConfRegion conf
     headers = [("host", host), kinesisTargetHeader (kinesisQueryAction query)]
-    port = 443
+    port = case kinesisConfRegion conf of
+               CustomEndpoint _ p -> p
+               _ -> 443
     contentType = Just "application/x-amz-json-1.1"
     body = kinesisQueryBody query
 
diff --git a/src/Aws/Kinesis/Types.hs b/src/Aws/Kinesis/Types.hs
--- a/src/Aws/Kinesis/Types.hs
+++ b/src/Aws/Kinesis/Types.hs
@@ -1,4 +1,4 @@
--- Copyright (c) 2013-2014 PivotCloud, Inc.
+-- Copyright (c) 2013-2015 PivotCloud, Inc.
 --
 -- Aws.Kinesis.Types
 --
@@ -18,7 +18,7 @@
 
 -- |
 -- Module: Aws.Kinesis.Types
--- Copyright: Copyright (c) 2013-2014 PivotCloud, Inc.
+-- Copyright: Copyright (c) 2013-2015 PivotCloud, Inc.
 -- license: Apache License, Version 2.0
 -- Maintainer: Lars Kuhtz <lars@alephcloud.com>
 -- Stability: experimental
diff --git a/tests/Main.hs b/tests/Main.hs
--- a/tests/Main.hs
+++ b/tests/Main.hs
@@ -1,4 +1,4 @@
--- Copyright (c) 2013-2014 PivotCloud, Inc.
+-- Copyright (c) 2013-2015 PivotCloud, Inc.
 --
 -- Main
 --
@@ -18,7 +18,7 @@
 
 -- |
 -- Module: Main
--- Copyright: Copyright (c) 2013-2014 PivotCloud, Inc.
+-- Copyright: Copyright (c) 2013-2015 PivotCloud, Inc.
 -- license: Apache License, Version 2.0
 -- Maintainer: Lars Kuhtz <lars@alephcloud.com>
 -- Stability: experimental
@@ -107,7 +107,7 @@
 -- Kinesis Utils
 
 kinesisConfiguration :: KinesisConfiguration qt
-kinesisConfiguration = KinesisConfiguration testRegion
+kinesisConfiguration = defaultKinesisConfiguration testRegion
 
 simpleKinesis
     :: (AsMemoryResponse a, Transaction r a, ServiceConfiguration r ~ KinesisConfiguration, MonadIO m)
diff --git a/tests/Utils.hs b/tests/Utils.hs
--- a/tests/Utils.hs
+++ b/tests/Utils.hs
@@ -1,4 +1,4 @@
--- Copyright (c) 2013-2014 PivotCloud, Inc.
+-- Copyright (c) 2013-2015 PivotCloud, Inc.
 --
 -- Utils
 --
@@ -18,7 +18,7 @@
 
 -- |
 -- Module: Utils
--- Copyright: Copyright (c) 2013-2014 PivotCloud, Inc.
+-- Copyright: Copyright (c) 2013-2015 PivotCloud, Inc.
 -- license: Apache License, Version 2.0
 -- Maintainer: Lars Kuhtz <lars@alephcloud.com>
 -- Stability: experimental
