public GoogleカレンダーのイベントでJSON
を取得するにはどうすればよいですか?私はID
を持っていますが、それへのアクセスはありません。イベントを変更したり、ログインしたりしたくありません。
JSON
/PHP
データベースと同期するためにMySql
を取得したいのですが。
試しましたhttps://www.googleapis.com/calendar/v3/calendars/{calendarId}
しかしログインエラーが発生しました:
{
"error": {
"errors": [
{
"domain": "global",
"reason": "required",
"message": "Login Required",
"locationType": "header",
"location": "Authorization"
}
],
"code": 401,
"message": "Login Required"
}
}
カレンダーを共有する必要がありますpublicly!これは、共有している場合のみ機能しますfree/busyステータス:
http://www.google.com/calendar/feeds/{calendarId}@group.calendar.google.com/public/basic?orderby=starttime&sortorder=ascending&futureevents=true&alt=json
完全な詳細-これは、カレンダーが完全に公開されている場合にのみ機能します
http://www.google.com/calendar/feeds/{calendarId}@group.calendar.google.com/public/full?orderby=starttime&sortorder=ascending&futureevents=true&alt=json
または単にfree-busy
http://www.google.com/calendar/feeds/{calendarId}@group.calendar.google.com/public/free-busy?orderby=starttime&sortorder=ascending&futureevents=true&alt=json
パラメータorderby、sortorderおよび futureeventsはオプションですが、後で役立つ場合があります:)
2014年11月17日以降、Google Calendar APIのv1とv2は無効になりました。
Google Calendar API V には、そのほとんどすべての操作にoauth認証が必要です。私の知る限り、これにはユーザーの操作も必要です。
ただし、公開カレンダーの場合、JSONデータを取得するために単一のリンクを使用することは引き続き可能です(これは現在Googleによって文書化されていません-明日消える可能性のある彼らの側またはプライベートAPIの見落としかどうかはわかりません)。
JSON URLは次のようになります
https://www.googleapis.com/calendar/v3/calendars/ {calendarid}/events?key = {あなたの公開APIキー}
(中かっこ{}は実際のURLに表示されません)。
APIドキュメントには、含めることができる追加のパラメーターが記載されています(ただし、ほとんどのJSONリクエストと同様に、パラメーター&callback =を含めて、JSONP応答を作成できます) JavaScriptの場合)。