how to manually slow down asynchronous javascript requests to parse.com in order to stay below 30 requests per second?

I'm fetching a collection called logCollection from parse.com in a node JS script on my machine. It has 200 elements. Each log has a link to another table (a pointer) called start. I need to fetch this one too.

Here is my code

Parse.User.logIn("user", "pass").then(function(user) {
  // Do stuff after successful login.
  console.log('succesfully logged in');
  return logCollection.fetch();
}).then(function(content) {
  console.log('done fetching logs: ' + logCollection.length);
  var promises = [];
  _.each(logCollection.models, function(thisLog) {

    promises.push(thisLog.attributes.start.fetch());

  });
  // Return a new promise that is resolved when all of the deletes are finished.
  return Parse.Promise.when(promises);
});

The thing is, it will fire at least 200 (start) fetch per second, and it will cause problems with the 30 requests per second limit at parse.com.

Is there a better way to do this? How can I slow down the way js fires the requests?

thanks

In a Parse Query, you can get the fully-fetched objects which are pointed to by that object, by using the include method on the query:

var query = new Parse.Query("SomeClass");
query.include('columnName');
query.find().then(function(results) {
  // each result will have 'columnName' as a fully fetched parse object.
});

This also works with sub-sub objects:

query.include('columnName.nestedColumnName');

or as an array:

query.include(['columnName', 'anotherPointerColumn']);

I came out with this solution that works very good. It was all this time on the parse documentation.

https://www.parse.com/docs/js_guide#promises-series

The following code will fire one request only after the last one has been finished. Doing so, I can fire many requests without worrying about getting to the limit.

var query = new Parse.Query("Comments");
query.equalTo("post", 123);

query.find().then(function(results) {
  // Create a trivial resolved promise as a base case.
  var promise = Parse.Promise.as();
  _.each(results, function(result) {
    // For each item, extend the promise with a function to delete it.
    promise = promise.then(function() {
      // Return a promise that will be resolved when the delete is finished.
      return result.destroy();
    });
  });
  return promise;

}).then(function() {
  // Every comment was deleted.
});