diff --git a/packages/component-user-manager/src/Users.js b/packages/component-user-manager/src/Users.js
index 8b95b8c82aef769ce39ab3073bc364a0a5c8fbde..bae6f9efdc8c47d8630f225b098e1bdf2204461e 100644
--- a/packages/component-user-manager/src/Users.js
+++ b/packages/component-user-manager/src/Users.js
@@ -154,7 +154,6 @@ const Users = app => {
    */
   app.patch(
     '/api/users/subscriptions',
-    authBearer,
     require('./routes/users/subscriptions')(app.locals.models),
   )
 
diff --git a/packages/component-user-manager/src/routes/users/subscriptions.js b/packages/component-user-manager/src/routes/users/subscriptions.js
index 7633fc64b2f1cb011c7e08786d4fa3ac8e15cfde..eb0aa8eaacbfe556eaf0f712171ae0a6456a43a5 100644
--- a/packages/component-user-manager/src/routes/users/subscriptions.js
+++ b/packages/component-user-manager/src/routes/users/subscriptions.js
@@ -1,14 +1,14 @@
 const { services } = require('pubsweet-component-helper-service')
 
 module.exports = models => async (req, res) => {
-  const { isUnsubscribed } = req.body
+  const { isUnsubscribed, id } = req.body
 
-  if (!services.checkForUndefinedParams(isUnsubscribed))
+  if (!services.checkForUndefinedParams(isUnsubscribed, id))
     return res.status(400).json({ error: 'Missing required params.' })
 
   let user
   try {
-    user = await models.User.find(req.user)
+    user = await models.User.find(id)
     user.isUnsubscribed = isUnsubscribed
     user = await user.save()
 
diff --git a/packages/components-faraday/src/components/UserProfile/EmailNotifications.js b/packages/components-faraday/src/components/UserProfile/EmailNotifications.js
index 7f20c07ecc07603373662c5cdf320df56a87a260..025b39f98420336584e02dbbd0e5865204302840 100644
--- a/packages/components-faraday/src/components/UserProfile/EmailNotifications.js
+++ b/packages/components-faraday/src/components/UserProfile/EmailNotifications.js
@@ -36,23 +36,33 @@ export default compose(
     modalComponent: ConfirmationModal,
   })),
   withHandlers({
-    subscribe: ({ showModal, hideModal, changeEmailSubscription }) => () => {
+    subscribe: ({
+      userId,
+      showModal,
+      hideModal,
+      changeEmailSubscription,
+    }) => () => {
       showModal({
         title: 'Subscribe to emails',
         subtitle: 'Are you sure you want to subscribe to emails?',
         onConfirm: () => {
-          changeEmailSubscription(false)
+          changeEmailSubscription(userId, false)
           hideModal()
         },
         onCancel: hideModal,
       })
     },
-    unsubscribe: ({ showModal, hideModal, changeEmailSubscription }) => () => {
+    unsubscribe: ({
+      userId,
+      showModal,
+      hideModal,
+      changeEmailSubscription,
+    }) => () => {
       showModal({
         title: 'Unsubscribe from emails',
         subtitle: 'Are you sure you want to unsubscribe from emails?',
         onConfirm: () => {
-          changeEmailSubscription(true)
+          changeEmailSubscription(userId, true)
           hideModal()
         },
         onCancel: hideModal,
diff --git a/packages/components-faraday/src/components/UserProfile/UserProfilePage.js b/packages/components-faraday/src/components/UserProfile/UserProfilePage.js
index f45f86e3fd551d289c8e3b57ecb693238f2422c0..8c95565d6b38efd90cc14183443d9f4aa860fb0f 100644
--- a/packages/components-faraday/src/components/UserProfile/UserProfilePage.js
+++ b/packages/components-faraday/src/components/UserProfile/UserProfilePage.js
@@ -24,6 +24,7 @@ const UserProfilePage = ({ history, user, changeEmailSubscription }) => (
     <EmailNotifications
       changeEmailSubscription={changeEmailSubscription}
       subscribed={!get(user, 'isUnsubscribed')}
+      userId={get(user, 'id')}
     />
     <LinkOrcID id={get(user, 'id')} orcid={get(user, 'orcid')} />
   </Root>
diff --git a/packages/components-faraday/src/redux/users.js b/packages/components-faraday/src/redux/users.js
index 973675ef25bdc0a7ef2f5bd0c0fe76e86fdd9a9b..0d530761bb046d1379a804edcdd1fd160bcafdf2 100644
--- a/packages/components-faraday/src/redux/users.js
+++ b/packages/components-faraday/src/redux/users.js
@@ -22,8 +22,12 @@ export const confirmUser = (userId, confirmationToken) => dispatch =>
     return dispatch(loginSuccess(user))
   })
 
-export const changeEmailSubscription = isUnsubscribed => dispatch => {
+export const changeEmailSubscription = (
+  id,
+  isUnsubscribed = false,
+) => dispatch => {
   update(`/users/subscriptions`, {
+    id,
     isUnsubscribed,
   }).then(() => dispatch(actions.getCurrentUser()))
 }