docs: function(args, callback, cache, retryCount){
          retryCount = retryCount || 0;
          concurrentUp();
          googleapis.analytics('v3').data.ga.get(args, function(err, result) {
              concurrentDown();
              if(err) {
                  //  403 error: we probably just need to wait 1 sec...
                  if(err.code === 403) {
                      setTimeout(function(){
                          if(retryCount < concurrentMaxRetry) {
                              retryCount += 1;
                              gaExecuteQuery.apply(this, [args, callback, cache, retryCount]);
                          } else {
                              //  Give up
                              return callback(err);
                          }
                      }, concurrentDelay);
                      return;
                  } else {
                      return callback(err);
                  }
              }
  
              //  Cache the response, if caching is on
              if(cache ) {
                  var fileName = getCacheFileName(args);
                  fs.writeFileSync(fileName, JSON.stringify(result), {encoding: "utf8"});
              }
  
              callback(null, result);
          });
      }