Мой API календаря Google хорошо работает со следующим кодом:
private $client;
public function __construct() {
$this->client = new Google_Client();
$this->client->setAuthConfig(__DIR__ . '/client_id.json');
$this->client->setScopes("https://www.googleapis.com/auth/calendar.events.readonly");
$calendarService = new Google_Service_Calendar($this->client);
}
public function showCalendar() {
$calendarService = new Google_Service_Calendar($this->client);
$myCalendarID = "en.usa#holiday@group.v.calendar.google.com";
$events = $calendarService->events->listEvents($myCalendarID, array(
'timeMin' => date(DATE_RFC3339),
'maxResults' => 4))->getItems();
foreach ($events as $e) {
$this->eventsToReturn .= "<div class='summary'>";
$this->eventsToReturn .= $e->getSummary();
$this->eventsToReturn .= ' <span>(';
$this->eventsToReturn .= $e->start->date;
$this->eventsToReturn .= ' )<span>';
$this->eventsToReturn .= "</div>";
}
return $this->eventsToReturn;
Приведенный выше код использует общедоступный календарь.Как только я изменяю $ myCalendarID для ссылки на частный календарь, я получаю
Uncaught Google_Service_Exception: { "error": { "errors": [ { "domain": "global", "reason": "notFound", "message": "Not Found" } ], "code": 404, "message": "Not Found" } }
Есть ли еще один шаг, который мне нужен для проверки с помощью моего личного календаря?