static async updateHunt (req, res) {
    try {
      const { body: { _source: hunt } } = await Db.getHunt(req.params.id, req.query.cluster);

      // update properties
      if (ArkimeUtil.isString(req.body.description)) {
        hunt.description = req.body.description;
      }

      if (ArkimeUtil.isStringArray(req.body.roles)) {
        hunt.roles = req.body.roles;
      }

      try {
        await Db.setHunt(req.params.id, hunt, req.query.cluster);
        res.send(JSON.stringify({
          success: true,
          text: 'Updated Hunt Succesfully!'
        }));
      } catch (err) {
        console.log(`ERROR - ${req.method} /api/hunt/%s (setHunt)`, ArkimeUtil.sanitizeStr(req.params.id), util.inspect(err, false, 50));
        return res.serverError(500, 'Unable to update hunt');
      }
    } catch (err) {
      console.log(`ERROR - ${req.method} /api/hunt/%s/users (getHunt)`, ArkimeUtil.sanitizeStr(req.params.id), util.inspect(err, false, 50));
      return res.serverError(500, 'Unable update hunt');
    }
  }
PUT - /api/hunt/:id

Update a hunt - can only update description & roles
@name /hunt/:id
@param {Hunt} hunt - The new hunt data
@returns {boolean} success - Whether the operation was successful.
@returns {string} text - The success/error message to (optionally) display to the user.