static getSessionsCSV (req, res) {
    ArkimeUtil.noCache(req, res, 'text/csv');

    // default fields to display in csv
    let fields = [
      'ipProtocol', 'firstPacket', 'lastPacket', 'source.ip', 'source.port', 'source.geo.country_iso_code',
      'destination.ip', 'destination.port', 'destination.geo.country_iso_code', 'network.bytes', 'totDataBytes', 'network.packets', 'node'
    ];

    // save requested fields because sessionsListFromQuery returns fields with
    // "rootId" appended onto the end
    let reqFields = fields;

    if (req.query.fields) {
      fields = reqFields = ViewerUtils.queryValueToArray(req.query.fields);
    }

    if (req.query.ids) {
      const ids = ViewerUtils.queryValueToArray(req.query.ids);
      SessionAPIs.sessionsListFromIds(req, ids, fields, (err, list) => {
        if (err) {
          console.log('ERROR - getSessionsCSV', util.inspect(err, false, 50));
          res.end(JSON.stringify({ success: false, text: 'Can\'t get sessions from IDs' }));
        }
        SessionAPIs.#csvListWriter(req, res, list, reqFields);
      });
    } else {
      SessionAPIs.#sessionsListFromQuery(req, res, fields, (err, list) => {
        SessionAPIs.#csvListWriter(req, res, list, reqFields);
      });
    }
  }
POST/GET - /api/sessions/csv OR /sessions.csv

Return all the JSON formatted session data based on the query parameters.
@name /sessions/csv
@param {string} ids - Comma separated list of sessions to retrieve
@param {SessionsQuery} See_List - This API supports a common set of parameters documented in the SessionsQuery section
@returns {csv} csv - The csv with the sessions requested
@example
  Returns all the sessions with the source IP of 1.2.3.4
  curl -v 'http://localhost:8005/api/sessions/csv?date=-1&expression=ip.src%3D%3D1.2.3.4'