Making multiple calls to API and processing data in Node.JS
Looking for sensitive terms

I see that you build a regex from a list of terms:


  var danger = ['password','pass','pw','pwd','passwd','key','user','username','secret']
  var re = new RegExp(danger.join('|'))



With this approach,
some of the items in danger are redundant,
because "password" and "passwd" will be already matched by "pass",
"pwd" will be already matched by "pw",
and "username" will be already matched by "user".

Overall this approach looks rather primitive and I suspect it will yield too many false positives to be useful.

Duplicated calls

In this code contents.match(re) is executed twice:


  matches = contents.match(re)
  if(matches.length &gt; 0){
    // console.log("matches", matches)
    review = review.concat(contents.match(re))
  }



That's a waste, it would be better to use matches in place of the second call.

Truthy values in JavaScript

Non-empty arrays are truthy, so instead of if(matches.length &gt; 0) you could write simply if (matches.length), and even just if (matches).
The same goes for if(results.length &gt; 0) later in the code.