Goutte - Get inner values from $crawler->filter()

I am still working through the code you provided, but one of the first things I'm noticing is right before you are setting $API_RESPONSE, you have the following lines of code...

// return if wanted date is reached
if (date("Y-m-d", strtotime($nodeDate)) == date("Y-m-d", strtotime($wantedDate))) {
  return $res1Array;
}

At that point in the function, you have yet to pushed any data to $res1Array, so it would return just an empty array. It isn't until the $subcrawler (and the second attempt to return $res1Array) in which you are actually pushing information into the array.

Note: I will update my answer once I work through the rest of the code, in hopes to provide you a more complete resolution to your issue.