diff --git a/library/Solr/HTTPRequestEncoder.hs b/library/Solr/HTTPRequestEncoder.hs
--- a/library/Solr/HTTPRequestEncoder.hs
+++ b/library/Solr/HTTPRequestEncoder.hs
@@ -85,6 +85,20 @@
       Data.ByteString.Char8.unpack $
       url
 
+{-|
+Set the timeout in μs.
+-}
+request_timeout :: Int -> Request a
+request_timeout timeout =
+  Request $
+  Op $
+  const $
+  Endo $
+  \request ->
+    request {
+      Network.HTTP.Client.responseTimeout =
+        Network.HTTP.Client.responseTimeoutMicro timeout
+    }
 
 newtype Body a =
   Body (a -> Network.HTTP.Client.RequestBody)
@@ -117,5 +131,6 @@
   request_url url <>
   request_method "POST" <>
   request_header "content-type" "application/json" <>
+  request_timeout (30 * (10 ^ 6)) <>
   request_body (body_json jsonEncoder)
 
diff --git a/solr.cabal b/solr.cabal
--- a/solr.cabal
+++ b/solr.cabal
@@ -1,7 +1,7 @@
 name:
   solr
 version:
-  0.4.2
+  0.4.3
 synopsis:
   A minimal Solr client library
 homepage:
