Using a loose array just to specify the object properties
I would say, yes, definitely. That saves a lot of manual code writing and makes it easier to change in the event you need to change all of them. 

The only difference I would probably make is, add your different properties when you create the object, that will not only slightly improve speed, but will also make the code a tiny bit smaller.

const data = {
    licenses: results.licenses
};

[
  'teaching_levels',
  'axes',
  'accessibility_resources',
  'contents',
  'resources',
].forEach(name =&gt; data[name] = {
    options: results[name],
    values: req.query[name],
});