Outlook カレンダー API の概要

Outlook カレンダーは、Microsoft 365 の Outlook メッセージング ハブの一部です。Outlook メッセージング ハブを使うと、メールや連絡先の管理、組織内のユーザーに関する情報の検索、オンライン会話の開始、ファイルの共有、およびグループでの共同作業ができます。

Outlook カレンダーと統合する理由

Outlook カレンダーの高度な機能とその API により、さまざまな操作がアプリで実行可能になります。 以下のセクションでは、その中からいくつかの機能を紹介いたします。

何億というユーザーに達する豊富なシナリオの構築

何百万人ものユーザーが、効果的な通信や作業を可能にする統合ハブの一部として、Outlook カレンダーを利用しています。 そのようなユーザーは、会議の設定、メール管理、連絡先や他のユーザーに関する情報の検索、会話やオンライン会議の開始などを、Web 上であれ、モバイル端末やデスクトップであれ、すべて 1 つの場所で実行できます。 Microsoft Graph は、これらのユーザーのカレンダー、メール、連絡先にアプリを接続するだけでなく、アプリを使って Microsoft 365 の長所と統合し、生産性とコラボレーションの向上につながるさまざまなシナリオをサポートすることができます。

Outlook カレンダー API のほとんどの機能は、個人用の Microsoft アカウントおよび職場または学校のアカウントのカレンダーに適用されます。

** は、職場または学校のアカウントの Outlook カレンダーのみに適用される機能を示します。

自動予約機構とカレンダーの作成

多くのユーザーは、Outlook による仕事予定、家族や個人の活動時間の整理方法を好んで利用しています。 Microsoft Graph REST API は、操作感がこのカスタマー エクスペリエンスとよく似ており、アプリを使ったイベントの作成、管理、応答を次のように自然に行えます。

  • Outlook では、ユーザーは仕事、家族、その他の用途に合わせてそれぞれカレンダーを作成し、カレンダー グループでそれらを整理できます。 誕生日休日に関する無料のカレンダーを有効にして、連絡先の誕生日や地元の祝日を忘れないようにできます。 スポーツ チームやテレビ番組のカレンダーなど、関心に応じてカレンダーを追加できます。 ユーザーは、カレンダーを選択およびオーバーレイして、同じビューでイベントを確認できます。 予定表 API を使用すると、アプリで予定表を予定表グループ内で同様に整理し、ユーザーのメールボックス内の他の予定表と同様に興味深い予定表と対話できます。

  • Outlook ユーザーは、イベント、メッセージ、連絡先、タスク、グループ投稿に対して、一貫した方法でカテゴリを適用でき、組織の強化と検出の機能を向上することができます。 カレンダー API を使うと、カテゴリに関するユーザーのマスター リストにアクセスして定義できるので、クリエイティブなシナリオがさらに豊富になります。 たとえば、スポーツ クラブではスポーツ トーナメントを整理し、競技種目ごとに色分類項目を別個に指定してメールやイベントを区別するアプリを提供できます。 思いがけない予定変更など、予定間際のニュースでも、そのようなイベントやメールに重要度プロパティをアプリで設定して、ユーザーに通知できます。

  • カレンダー フォルダーでは、1 回きりのイベント作成および更新できるだけでなく、定期的なイベントをスケジュールして管理することもできます。 顧客が会議出席依頼に応答できるようにし、関連するイベント ナビゲーション プロパティを使用してリマインダーをスヌーズまたは無視できます。

同期維持と予定日の操作に関するユーザー支援機能

カレンダー API を使うと、次に示すように、予定日の操作や生産性の向上が容易になります。

  • 変更通知を受信登録し、ユーザーのカレンダー内のイベントに対する変更を追跡することにより、アプリのローカル ストアの同期を維持できます。
  • 軽量な通知ビューに基づいて、ユーザーの予定一覧を表示できます。
  • ユーザーは、会議の承諾や出席を webLink プロパティを介してオンラインで行うことができます。webLink プロパティにより、会議は Outlook on the web で開催されます。
  • ユーザーは、会議の仮承諾または辞退を外出中でも回答できます。

コラボレーションの強化

  • Outlook では、ユーザーどうしでカレンダーを共有でき、カレンダーの内容の読み取り、書き込み、削除に関するアクセス許可を付与できます。 また、ユーザーは自分の代わりに別のユーザーが会議出席依頼に返信するように、カレンダーに指定できます。 あるユーザーの代理をする共有アクションや委任アクションをプログラムを使用して開始することはできませんが、一連のプロパティ (canEditcanSharecanViewPrivateItemsisSharedisSharedWithMe) を使用すると、共有ステータスを確認し、共有カレンダーや委任されたカレンダーに関するシナリオを有効にできます。
  • カレンダー API を利用することにより、サインイン ユーザー、またはサインイン ユーザーとカレンダーを共有または委任しているユーザーの予定表アイテムを取得できます。 たとえば、Garth がカレンダーを John と共有している場合、または Garth が John にアクセスを委任している場合、John からのアクセス許可委任があれば、Garth の共有カレンダーとその内容にも読み取りアクセスが可能になります。
  • Microsoft 365 グループを使用すると、グループ メンバーの共同作業や、グループでの会話やカレンダーへのアクセスが、Outlook で直接行うことができます。 グループ カレンダーとユーザー カレンダーに細かな違いがいくつかあることを除けば、カレンダー API を使用することで、ユーザー カレンダーとほぼ同様にグループ カレンダーを操作できます。 詳細については、calendar リソースをご覧ください**

スマートなスケジュール設定

Outlook とカレンダー API には、イベントのスケジュールに便利な機能が豊富に用意されています。

  • Outlook カレンダーのアプリ設定により、ユーザーは、フライト、ホテル、食事の予約などのメールや請求書からイベントを自動で追加できます。 追加されたイベントは、ユーザーのメールボックスにある他の event オブジェクトと同様に操作できるので、Outlook のこの機能に基づいてクリエイティブなシナリオを構築できます。
  • Outlook では、会議室の予約も、出席者をイベントに追加するのと同じくらい簡単に行えます。 カレンダー API では、会議室が emailAddress オブジェクトとして表されます。 テナントで使用できる会議室の取得や、会議室一覧の取得ができます。 特定の会議室での会議を計画するには、その会議室をイベントlocation プロパティに割り当てます。**
  • 特定の期間のユーザーとリソースに関する空き時間情報の確認 ができます。 このデータを、リソース計画やイベント スケジュールなどのさまざまなシナリオに適用できます。**
  • 最適な時間に会議をスケジュールしなければならないシナリオでは、開催可能な会議日時を特定する findMeetingTimes の使用を検討できます。 findMeetingTimes 関数は、出席者の空き時間情報、会議室や日時に関する希望、およびユーザーが指定した他の制約事項を考慮します。 最初の試行で全員参加可能な会議日時が返されない場合は、理由を確認してから条件を変更し、もう一度 findMeetingTimes を呼び出してください。**

複数の場所とタイム ゾーンをまたぐ電話会議

グローバル化に伴い、現代のビジネス会議には、出席者がさまざまな場所やタイム ゾーンから参加していることも少なくありません。 カレンダー API を使用してそのような会議を管理する方法を次に示します。

  • Outlook の例として、ユーザーが組織する会議に、シアトルの会議室、パリのコーヒー ショップ、中国のホーム オフィスから出席者が参加するケースが考えられます。 プログラムを使用すると、location オブジェクトのコレクションであるイベントの場所プロパティで、このレベルの詳細を場所ごとに displayNamelocationType で反映できます。 をご覧ください。
  • Outlook では、柔軟にイベントを組織し、イベントの開始日時と終了日時ごとにタイム ゾーンを指定できます。 このような柔軟性をサポートするため、既定では、カレンダー API はイベント開始日時と終了日時を UTC で返し、用意されている originalStartTimeZone プロパティと originalEndTimeZone プロパティで、イベントの作成時に使用されたタイム ゾーンを示します。
  • 代わりに、Prefer: outlook.timezone="{time zone name}" ヘッダーを指定して、GET イベント操作が開始日時と終了日時を指定したタイム ゾーンで返すようにすることもできます。 タイム ゾーン名は、このリストにあるものだけでなく、Windows でサポートされている任意の名前を使用できます。 Prefer ヘッダーの使用をご覧ください。
  • Microsoft Teams や Skype など、オンライン会議プロバイダーをサポートしている組織は、これらのプロバイダーを使用するように Outlook カレンダーを設定できます。 これらの予定表のイベントを簡単にオンライン会議として開催し、参加することができます。

場所の認識能力を持つアプリを構築することで、インテリジェントなコンテキストを提供します

Places API を使用して、ユーザーが場所に移動しやすくなります。また、ユーザーいる場所に基づいて高度なソリューションを提供できます。 以下にシナリオの例を示します。

  • 場所に関する情報をカレンダー イベントに取り込むことで、ユーザーがより簡単に日々の予定をこなし、生産性を高めることができます。**
  • Places API をケータリング アプリケーションで活用することで、会場内での移動やセットアップの効率化を図ります。**
  • 参加者への会議の事前情報のメール送信を自動化し、メールに地図を含めて会議室への行き方を説明できます。**
  • ボットの受信アシスタントをセットアップして、建物内の特定の会議室に関する情報を提供します。**

アプリのシナリオによっては、Outlook の一部として、または Outlook とは別に、Places API を使用することができます。

Microsoft Graph でのソーシャル インテリジェンス、および開発者向けのその他の便利な機能の活用

Microsoft Graph では、people API を使用し、ユーザーの通信パターンやコラボレーション パターン、ビジネス上の関係に基づく 人物データに接続できます。 ユーザー選択などのコントロールを実装し、ユーザーの代わりに会議を組織するときに、ユーザーに関係のある人物を提案できます。

アプリ データを外部データ ストアに保存および管理する際、オーバーヘッドを保存します。 Microsoft Graph では、各リソース インスタンスごとに、カスタム アプリ データをオープン拡張機能として保存できます。 データを入力する必要がある場合、または入力されたスキーマを共有できるようにする場合は、カスタム アプリ データをスキーマ拡張機能に保存できます。

データはどこにありますか?

Microsoft Graph API は、ユーザーの プライマリ メールボックスおよび 共有メールボックス のデータへのアクセスをサポートしています。 データには、Microsoft 365 の一部として Exchange Online 上のクラウド内のメールボックスに格納されている予定表、メール、または個人の連絡先を指定できます。

この API は、Exchange Online 上Exchange Server 上 ではなく、インプレース アーカイブ メールボックスへのアクセスをサポートしていません

API リファレンス

このサービスの API リファレンスをお探しですか?