Batch request Google Calendar php API



PHP Snippet 1:

$batch->add( $this->service->events->insert($gEvent1, 'primary'));

PHP Snippet 2:

public function insert(google_TimelineItem $postBody, $optParams = array()) {
  $params = array('postBody' => $postBody);
  $params = array_merge($params, $optParams);
  $data = $this->__call('insert', array($params));
  if ($this->useObjects()) {
    if(get_class($data) == 'Google_HttpRequest'){
        return $data;
    }else{
        return new google_TimelineItem($data);
    }
  } else {
    return $data;
  }
}

PHP Snippet 3:

public function addEventInBatch($accessToken, $calendarId, array $events)
{
    $client = new Google_Client();
    $client->setAccessToken($accessToken);
    $client->setUseBatch(true);
    $service = new Google_Service_Calendar($client);
    $batch = $service->createBatch();
    collect($events)->each(fn ($event) => $batch->add($service->events->insert($calendarId, $event)));
    return $batch->execute();
}