diff --git a/Readme.md b/Readme.md
--- a/Readme.md
+++ b/Readme.md
@@ -9,7 +9,7 @@
 
 ## Status
 
-It seems to work - it is already tested in examples/central-counter of servant-purescript and used in production.
+It seems to work - it is already tested in [examples/central-counter](https://github.com/eskimor/servant-purescript/tree/master/examples/central-counter) of servant-purescript and used in production.
 
 Still missing:
 
diff --git a/servant-subscriber.cabal b/servant-subscriber.cabal
--- a/servant-subscriber.cabal
+++ b/servant-subscriber.cabal
@@ -1,5 +1,5 @@
 name:                servant-subscriber
-version:             0.6.0.1
+version:             0.6.0.2
 synopsis:            When REST is not enough ...
 description:         Please see Readme.md
 homepage:            http://github.com/eskimor/servant-subscriber#readme
@@ -16,8 +16,8 @@
 extra-source-files:  Readme.md
 
 Flag WEBSOCKETS_0_11
-               
 
+
 library
   hs-source-dirs:      src
   if flag(WEBSOCKETS_0_11)
@@ -50,7 +50,7 @@
                      , monad-control
                      , monad-logger
                      , network-uri
-                     , servant
+                     , servant >= 0.14
                      , servant-foreign
                      , servant-server
                      , stm
diff --git a/src/Servant/Subscriber/Subscribable.hs b/src/Servant/Subscriber/Subscribable.hs
--- a/src/Servant/Subscriber/Subscribable.hs
+++ b/src/Servant/Subscriber/Subscribable.hs
@@ -1,4 +1,5 @@
 {-# LANGUAGE ConstraintKinds       #-}
+{-# LANGUAGE PolyKinds             #-}
 {-# LANGUAGE DataKinds             #-}
 {-# LANGUAGE DeriveGeneric         #-}
 {-# LANGUAGE FlexibleInstances     #-}
@@ -88,5 +89,5 @@
                                           req & reqFuncName . _FunctionName %~ ("" :) -- Prepend empty string for marking as subscribable.
 
 instance HasLink sub => HasLink (Subscribable :> sub) where
-    type MkLink (Subscribable :> sub) = MkLink sub
-    toLink _ = toLink (Proxy :: Proxy sub)
+    type MkLink (Subscribable :> sub) a = MkLink sub a
+    toLink toA _ = toLink toA (Proxy :: Proxy sub)
diff --git a/src/Servant/Subscriber/Types.hs b/src/Servant/Subscriber/Types.hs
--- a/src/Servant/Subscriber/Types.hs
+++ b/src/Servant/Subscriber/Types.hs
@@ -20,7 +20,7 @@
 import qualified Data.Text as T
 import           GHC.Generics
 import           Network.URI (URI (..), pathSegments, unEscapeString)
-import           Servant.Utils.Links (IsElem, HasLink, MkLink, safeLink)
+import           Servant.Links (IsElem, HasLink, MkLink, safeLink, Link)
 import           System.FilePath.Posix (splitPath)
 import Debug.Trace (trace)
 
@@ -89,11 +89,12 @@
   => Subscriber api
   -> Event
   -> Proxy endpoint
-  -> (MkLink endpoint -> URI)
+  -> (MkLink endpoint Link -> URI)
   -> STM ()
 notify subscriber event pEndpoint getLink = do
   let mkPath = Path . map (T.pack . unEscapeString) . pathSegments . getLink
-  let resource = mkPath $ safeLink (Proxy :: Proxy api) pEndpoint
+  let sLink  = safeLink (Proxy :: Proxy api) pEndpoint
+  let resource = mkPath $ sLink
   trace ("NOTIFIED PATH:" <> show resource) (pure ())
   modifyState event resource subscriber
 
@@ -103,7 +104,7 @@
   => Subscriber api
   -> Event
   -> Proxy endpoint
-  -> (MkLink endpoint -> URI)
+  -> (MkLink endpoint Link -> URI)
   -> IO ()
 notifyIO subscriber event pEndpoint getLink = atomically $ notify subscriber event pEndpoint getLink
 
