docs: function updateCheckResponse(response) {
      let notifications = [],
          notificationGroups = (config.get('notificationGroups') || []).concat(['all']);
  
      debug('Notification Groups', notificationGroups);
      debug('Response Update Check Service', response);
  
      return api.settings.edit({settings: [{key: 'next_update_check', value: response.next_check}]}, internal)
          .then(function () {
              /**
               * @NOTE:
               *
               * When we refactored notifications in Ghost 1.20, the service did not support returning multiple messages.
               * But we wanted to already add the support for future functionality.
               * That's why this helper supports two ways: returning an array of messages or returning an object with
               * a "notifications" key. The second one is probably the best, because we need to support "next_check"
               * on the root level of the response.
               */
              if (_.isArray(response)) {
                  notifications = response;
              } else if ((response.hasOwnProperty('notifications') && _.isArray(response.notifications))) {
                  notifications = response.notifications;
              } else {
                  // CASE: default right now
                  notifications = [response];
              }
  
              // CASE: Hook into received notifications and decide whether you are allowed to receive custom group messages.
              if (notificationGroups.length) {
                  notifications = notifications.filter(function (notification) {
                      // CASE: release notification, keep
                      if (!notification.custom) {
                          return true;
                      }
  
                      // CASE: filter out messages based on your groups
                      return _.includes(notificationGroups.map(function (groupIdentifier) {
                          if (notification.version.match(new RegExp(groupIdentifier))) {
                              return true;
                          }
  
                          return false;
                      }), true) === true;
                  });
              }
  
              return Promise.each(notifications, createCustomNotification);
          });
  }