この記事は G Suite デベロッパー アドボケート、Wesley Chun(@wescpy)による G Suite Developers Blog の記事 "Modifying events with the Google Calendar API" を元に翻訳・加筆したものです。詳しくは元記事をご覧ください。

Google Calendar APIメール内のマークアップを使ってユーザーのカレンダーにイベントを登録している方もいるでしょう。うれしいことに、これらのツールを使うとアプリから自動的かつシームレスにイベントを登録でき、ユーザーの時間を大幅に節約できます。しかし、もし予定が変わったらどうなるでしょう。その場合を考慮して、アプリからイベントの変更もできるようにしておく必要があります。

メールによるマークアップでは更新もサポートしていますが、できることは限られます。そこで本日の動画では、Calendar API を使ってイベントを変更する方法を紹介しましょう。合わせて、繰り返しの予定を登録する方法も紹介しています。どうぞご覧ください。

あなたの商品に興味を持っている潜在顧客がいて、1、2 回の打ち合わせを設定する場合を考えてみましょう。顧客の興味が増し、商品が最終候補リストに入ると、定期的な打ち合わせが求められます。CRM では、ユーザーの手を煩わせることなくこのような予定を調整できるようにする必要があります。同じように、「友人とのディナー」イベントも、友人と親しくなるにつれて、「また今度」から隔月になるかもしれません。どちらのイベントも、下のような JSON リクエスト ペイロードで日付を調整したり、繰り返し登録できます。
var TIMEZONE = "America/Los_Angeles";
var EVENT = {
    "start": {"dateTime": "2017-07-01T19:00:00", "timeZone": TIMEZONE},
    "end":   {"dateTime": "2017-07-01T22:00:00", "timeZone": TIMEZONE},
    "recurrence": ["RRULE:FREQ=MONTHLY;INTERVAL=2;UNTIL=20171231"]
};

このイベントは、Calendar API の events().patch() メソッドを 1 回呼び出すだけで更新できます。Python を使う場合は、次のようにして API サービスのエンドポイント GCAL に対して更新する有効な EVENT_ID を指定し、上のリクエスト データを渡します。
GCAL.events().patch(calendarId='primary', eventId=EVENT_ID,
    sendNotifications=True, body=EVENT).execute()

Google カレンダーにイベントを登録する方法を紹介した動画を見逃した方は、こちらをご覧ください。また、公式 API ドキュメントもご覧いただけます。さらに、Google Apps Script を使っている方は、プログラムを利用して Calendar サービスから Google カレンダーにアクセスできます。

ぜひこの情報を活用してアプリを改良し、さらに便利でタイムリーな機能をユーザーに提供しましょう。


Reviewed by Eiji Kitamura - Developer Relations Team