diff --git a/hasql.cabal b/hasql.cabal
--- a/hasql.cabal
+++ b/hasql.cabal
@@ -1,7 +1,7 @@
 name:
   hasql
 version:
-  0.19.4
+  0.19.5
 category:
   Hasql, Database, PostgreSQL
 synopsis:
@@ -74,7 +74,7 @@
     -- parsing:
     attoparsec >= 0.10 && < 0.14,
     -- database:
-    postgresql-binary >= 0.7.4 && < 0.8,
+    postgresql-binary >= 0.7.7 && < 0.8,
     postgresql-libpq == 0.9.*,
     -- data:
     dlist >= 0.7 && < 0.8,
diff --git a/library/Hasql/Decoders.hs b/library/Hasql/Decoders.hs
--- a/library/Hasql/Decoders.hs
+++ b/library/Hasql/Decoders.hs
@@ -38,6 +38,7 @@
   interval,
   uuid,
   json,
+  jsonb,
   array,
   composite,
   hstore,
@@ -419,6 +420,14 @@
 json :: Value Aeson.Value
 json =
   Value (Value.decoder (const Decoder.json))
+
+-- |
+-- Decoder of the @JSONB@ values.
+-- 
+{-# INLINABLE jsonb #-}
+jsonb :: Value Aeson.Value
+jsonb =
+  Value (Value.decoder (const Decoder.jsonb))
 
 -- |
 -- Lifts a custom value decoder function to a 'Value' decoder.
diff --git a/library/Hasql/Encoders.hs b/library/Hasql/Encoders.hs
--- a/library/Hasql/Encoders.hs
+++ b/library/Hasql/Encoders.hs
@@ -27,6 +27,7 @@
   interval,
   uuid,
   json,
+  jsonb,
   array,
   enum,
   unknown,
@@ -304,6 +305,13 @@
 json :: Value Aeson.Value
 json =
   Value (Value.unsafePTI PTI.json (const Encoder.json))
+
+-- |
+-- Encoder of @JSONB@ values.
+{-# INLINABLE jsonb #-}
+jsonb :: Value Aeson.Value
+jsonb =
+  Value (Value.unsafePTI PTI.jsonb (const Encoder.jsonb))
 
 -- |
 -- Unlifts the 'Array' encoder to the plain 'Value' encoder.
diff --git a/library/Hasql/PTI.hs b/library/Hasql/PTI.hs
--- a/library/Hasql/PTI.hs
+++ b/library/Hasql/PTI.hs
@@ -48,6 +48,7 @@
 int8range       = mkPTI 3926 (Just 3927)
 interval        = mkPTI 1186 (Just 1187)
 json            = mkPTI 114  (Just 199)
+jsonb           = mkPTI 3802 (Just 3807)
 line            = mkPTI 628  (Just 629)
 lseg            = mkPTI 601  (Just 1018)
 macaddr         = mkPTI 829  (Just 1040)
