var params = {
  TableName: 'MYTABLE',
  FilterExpression: 'contains (myKey , :query)',
  ExpressionAttributeValues: {
    ':query': query
  }
}

var dynamoScan = new Promise(function(resolve, reject) {
  var results = []
  var onScan = (err, data) => {
    if (err) {
      return reject(err)
    }
    results = results.concat(data.Items)
    if (typeof data.LastEvaluatedKey != 'undefined') {
      params.ExclusiveStartKey = data.LastEvaluatedKey
      docClient.scan(params, onScan)
    } else {
      return resolve(results)
    }
  }
  docClient.scan(params, onScan)
})
dynamoScan
  .then((results) => {
    res.json(results)
  })
  .catch((err) => {
    Logger.error(err)
    return next(err)
  })