Outlook カレンダー API の概要Outlook calendar API overview

Outlook の予定表は、Microsoft 365 の Outlook メッセージングハブの一部であり、電子メールと連絡先の管理、組織内のユーザーに関する情報の検索、オンライン会話の開始、ファイルの共有、グループでの共同作業を行うことができます。Outlook calendar is part of the Outlook messaging hub in Microsoft 365 that also lets you manage emails and contacts, find information about users in an organization, initiate online conversations, share files, and collaborate in groups.

Outlook カレンダーと統合する理由Why integrate with Outlook calendar?

Outlook カレンダーの高度な機能とその API により、さまざまな操作がアプリで実行可能になります。The rich features of Outlook calendar and its API open up many app opportunities. 以下のセクションでは、その中からいくつかの機能を紹介いたします。The following sections list a few of them.

何億というユーザーに達する豊富なシナリオの構築Reach hundreds of millions of customers and build rich scenarios

何百万人ものユーザーが、効果的な通信や作業を可能にする統合ハブの一部として、Outlook カレンダーを利用しています。Many millions of customers use Outlook calendar as part of an integrated hub that lets them effectively communicate and get things done. そのようなユーザーは、会議の設定、メール管理、連絡先や他のユーザーに関する情報の検索、会話やオンライン会議の開始などを、Web 上であれ、モバイル端末やデスクトップであれ、すべて 1 つの場所で実行できます。They can set up meetings, manage emails, find information about contacts and other users, and initiate conversations or online meetings all in one place, be it on the web, mobile, or desktop. Microsoft Graph は、これらのユーザーのカレンダー、メール、連絡先にアプリを接続するだけでなく、アプリを使って Microsoft 365 の長所と統合し、生産性とコラボレーションの向上につながるさまざまなシナリオをサポートすることができます。Microsoft Graph not only connects apps to the calendar, mail, and contacts data of these customers, it enables apps to integrate with the best of Microsoft 365 and support a wide range of scenarios that enhance productivity and collaboration.

Outlook カレンダー API のほとんどの機能は、個人用の Microsoft アカウントおよび職場または学校のアカウントのカレンダーに適用されます。Most features in the Outlook calendar API apply to calendars in personal Microsoft accounts and work or school accounts.

** は、職場または学校のアカウントの Outlook カレンダーのみに適用される機能を示します。** Denotes features below that are specifically applicable to Outlook calendars in only work or school accounts.

自動予約機構とカレンダーの作成Automate appointment organization and calendaring

多くのユーザーは、Outlook による仕事予定、家族や個人の活動時間の整理方法を好んで利用しています。Customers like how Outlook lets them organize their time for work, family, and personal activities. Microsoft Graph REST API は、操作感がこのカスタマー エクスペリエンスとよく似ており、アプリを使ったイベントの作成、管理、応答を次のように自然に行えます。Microsoft Graph REST API keeps close parity with the customer experience, letting apps create, manage, and respond to events just as naturally:

  • Outlook では、ユーザーは仕事、家族、その他の用途に合わせてそれぞれカレンダーを作成し、カレンダー グループでそれらを整理できます。In Outlook, customers can create individual calendars for work, family, and other purposes, and organize them in calendar groups. 誕生日休日に関する無料のカレンダーを有効にして、連絡先の誕生日や地元の祝日を忘れないようにできます。They can turn on the free Birthdays and Holiday calendar to remind them of contacts' birthdays and local holidays. スポーツ チームやテレビ番組のカレンダーなど、関心に応じてカレンダーを追加できます。They can add calendars that match their interests, such as calendars for sport teams and TV programs. ユーザーは、カレンダーを選択およびオーバーレイして、同じビューでイベントを確認できます。Customers can select and overlay calendars, and see their events in the same view. カレンダー API を使うと、カレンダー グループ内のカレンダーを同様に整理し、ユーザーのメールボックスにある他のカレンダーと同じように関心のあるカレンダーを操作できます。Through the calendar API, your app can similarly organize calendars in calendar groups, and interact with interesting calendars just like any other calendar in the user's mailbox.

  • Outlook ユーザーは、イベント、メッセージ、連絡先、タスク、グループ投稿に対して、一貫した方法でカテゴリを適用でき、組織の強化と検出の機能を向上することができます。Outlook customers can apply categories to events, messages, contacts, tasks, and group posts in a consistent way to enhance organization and discovery. カレンダー API を使うと、カテゴリに関するユーザーのマスター リストにアクセスして定義できるので、クリエイティブなシナリオがさらに豊富になります。The calendar API lets you access and define a user's master list of categories, which opens up additional creative scenarios. たとえば、スポーツ クラブではスポーツ トーナメントを整理し、競技種目ごとに色分類項目を別個に指定してメールやイベントを区別するアプリを提供できます。For example, an athletic club can organize a sports tournament and offer an app that differentiates emails and events for each sport with their own color category. 思いがけない予定変更など、予定間際のニュースでも、そのようなイベントやメールに重要度プロパティをアプリで設定して、ユーザーに通知できます。For last-minute news such as unforeseen timetable changes, the app can also set the importance property of those events and emails to alert customers.

  • カレンダー フォルダーでは、1 回きりのイベント作成および更新できるだけでなく、定期的なイベントをスケジュールして管理することもできます。In a calendar folder, you can create and update single instance events, or schedule and maintain recurring events. ユーザーは会議出席依頼に回答でき、関連付けられているイベント ナビゲーション プロパティを使用すると、アラーム再通知解除もできます。You can let your customers respond to meeting requests, and snooze or dismiss reminders using the associated event navigation property.

同期維持と予定日の操作に関するユーザー支援機能Help customers stay synchronized and navigate their day

カレンダー API を使うと、次に示すように、予定日の操作や生産性の向上が容易になります。The calendar API helps customers navigate their day and enhance productivity:

  • 変更通知を受信登録し、ユーザーのカレンダー内のイベントに対する変更を追跡することにより、アプリのローカル ストアの同期を維持できます。You can keep the app local store synchronized by subscribing to change notifications and tracking changes to events in a user's calendar.
  • 軽量な通知ビューに基づいて、ユーザーの予定一覧を表示できます。You can display the user's agenda based on a light-weight reminder view.
  • ユーザーは、会議の承諾や出席を webLink プロパティを介してオンラインで行うことができます。webLink プロパティにより、会議は Outlook on the web で開催されます。You can let the user conveniently accept and take a meeting online through its webLink property, which opens the meeting in Outlook on the web.
  • ユーザーは、会議の仮承諾または辞退を外出中でも回答できます。Users can also tentatively accept or decline a meeting while on the go.

コラボレーションの強化Enhance collaboration

  • Outlook では、ユーザーどうしでカレンダーを共有でき、カレンダーの内容の読み取り、書き込み、削除に関するアクセス許可を付与できます。In Outlook, customers can share calendars with one another and give permissions to read, write, or delete calendar contents. また、ユーザーは自分の代わりに別のユーザーが会議出席依頼に返信するように、カレンダーに指定できます。Or, they can delegate a calendar to let another customer respond to meeting requests on their behalf. あるユーザーの代理をする共有アクションや委任アクションをプログラムを使用して開始することはできませんが、一連のプロパティ (canEditcanSharecanViewPrivateItemsisSharedisSharedWithMe) を使用すると、共有ステータスを確認し、共有カレンダーや委任されたカレンダーに関するシナリオを有効にできます。Programmatically, while you cannot initiate a share or delegate action on behalf of a user, you can use a set of properties to verify the sharing status and enable scenarios around shared or delegated calendars: canEdit, canShare, canViewPrivateItems, isShared, and isSharedWithMe.
  • カレンダー API を利用することにより、サインイン ユーザー、またはサインイン ユーザーとカレンダーを共有または委任しているユーザーの予定表アイテムを取得できます。The calendar API lets you get calendar items of the signed-in user, or users who have shared or delegated their calendars to the signed-in user. たとえば、Garth がカレンダーを John と共有している場合、または Garth が John にアクセスを委任している場合、John からのアクセス許可委任があれば、Garth の共有カレンダーとその内容にも読み取りアクセスが可能になります。For example, if Garth has shared a calendar with John, or if Garth has delegated access to John, then delegated permissions from John would give you read access to Garth's shared calendar and contents as well.
  • Microsoft 365 グループを使用すると、グループメンバーが Outlook で共同作業やグループの会話や予定表へのアクセスを容易に行えるようになります。Microsoft 365 groups make it convenient for group members to collaborate and access group conversations and calendars right in Outlook. グループ カレンダーとユーザー カレンダーに細かな違いがいくつかあることを除けば、カレンダー API を使用することで、ユーザー カレンダーとほぼ同様にグループ カレンダーを操作できます。Aside from a few minor differences between group calendars and user calendars, the calendar API lets you interact with group calendars just like user calendars. 詳細については、calendar リソースをご覧ください**See the calendar resource for more information**.

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

Outlook とカレンダー API には、イベントのスケジュールに便利な機能が豊富に用意されています。Outlook and the calendar API offer many smart conveniences to schedule events:

  • Outlook カレンダーのアプリ設定により、ユーザーは、フライト、ホテル、食事の予約などのメールや請求書からイベントを自動で追加できます。Through Outlook calendar app settings, customers can enable automatic adding of events from emails, such as flight, hotel, or dining reservations, and billing invoices. 追加されたイベントは、ユーザーのメールボックスにある他の event オブジェクトと同様に操作できるので、Outlook のこの機能に基づいてクリエイティブなシナリオを構築できます。Once added, you can interact with these events just like any other event objects in the user's mailbox, and build creative scenarios upon this Outlook capability.
  • Outlook では、会議室の予約も、出席者をイベントに追加するのと同じくらい簡単に行えます。In Outlook, booking a meeting room is as straight-forward as adding an attendee to the event. カレンダー API では、会議室が emailAddress オブジェクトとして表されます。The calendar API represents a meeting room as an emailAddress object. 会議室を取得し、テナントで使用できる会議室一覧を取得することができます。You can get rooms and get room lists that are available in a tenant. 特定の会議室での会議を計画するには、その会議室をイベントlocation プロパティに割り当てます。**To organize a meeting in a specific room, assign it to the location property of the event.**
  • 特定の期間のユーザーとリソースに関する空き時間情報の確認 ができます。You can look up the free/busy information for users and resources for a specific time period. このデータを、リソース計画やイベント スケジュールなどのさまざまなシナリオに適用できます。**You can then use this data to apply to different scenarios including resource planning and event scheduling.**
  • 最適な時間に会議をスケジュールしなければならないシナリオでは、開催可能な会議日時を特定する findMeetingTimes の使用を検討できます。If your scenario involves scheduling meetings at an optimal time, you can consider using findMeetingTimes to identify possible times or locations to meet. findMeetingTimes 関数は、出席者の空き時間情報、会議室や日時に関する希望、およびユーザーが指定した他の制約事項を考慮します。The findMeetingTimes function considers the free/busy status of the attendees, and any preferred rooms, time, and other constraints you provide. 最初の試行で全員参加可能な会議日時が返されない場合は、理由を確認してから条件を変更し、もう一度 findMeetingTimes を呼び出してください。**If the first try doesn't return a common meeting time, check the reason, adjust your criteria and call findMeetingTimes again.**

複数の場所とタイム ゾーンをまたぐ電話会議Teleconference across multiple locations and time zones

グローバル化に伴い、現代のビジネス会議には、出席者がさまざまな場所やタイム ゾーンから参加していることも少なくありません。With globalization, today's business meetings often involve attendees participating from different locations and time zones. カレンダー API を使用してそのような会議を管理する方法を次に示します。Here's how you can use the calendar API to manage such meetings:

  • Outlook の例として、ユーザーが組織する会議に、シアトルの会議室、パリのコーヒー ショップ、中国のホーム オフィスから出席者が参加するケースが考えられます。As an example in Outlook, customers can organize a meeting and include attendees joining from a conference room in Seattle, a coffee shop in Paris, and a home office in China. プログラムを使用すると、location オブジェクトのコレクションであるイベントの場所プロパティで、このレベルの詳細を場所ごとに displayNamelocationType で反映できます。Programmatically, the event locations property, which is a collection of location objects, can reflect this level of details in displayName and locationType for each location. をご覧ください。See an example.
  • Outlook では、柔軟にイベントを組織し、イベントの開始日時と終了日時ごとにタイム ゾーンを指定できます。Outlook gives customers the flexibility to organize events and specify a time zone for each of the start and end times of an event. このような柔軟性をサポートするため、既定では、カレンダー API はイベント開始日時と終了日時を UTC で返し、用意されている originalStartTimeZone プロパティと originalEndTimeZone プロパティで、イベントの作成時に使用されたタイム ゾーンを示します。To support this flexibility, by default, the calendar API returns the start and end times of an event in UTC, and provides the originalStartTimeZone and originalEndTimeZone properties to note the time zones used when the event was created.
  • 代わりに、Prefer: outlook.timezone="{time zone name}" ヘッダーを指定して、GET イベント操作が開始日時と終了日時を指定したタイム ゾーンで返すようにすることもできます。Alternatively, you can specify the Prefer: outlook.timezone="{time zone name}" header so that a GET event operation returns start and end in the time zone you specify. タイム ゾーン名は、このリストにあるものだけでなく、Windows でサポートされている任意の名前を使用できます。The time zone name can be any of those supported by Windows, as well as those on this list. Prefer ヘッダーの使用をご覧ください。See an example of the Prefer header in use.
  • Microsoft Teams や Skype などのオンライン会議プロバイダーをサポートする組織では、これらのプロバイダーを使用するように Outlook の予定表を設定できます。Organizations that support online meeting providers, such as Microsoft Teams and Skype, can set up Outlook calendars to use these providers. これらの予定表のイベントを簡単にオンライン会議として開催し、参加することができます。You can conveniently organize or attend events in these calendars as online meetings.

場所の認識を備えたアプリを構築し、インテリジェントなコンテキストを提供するBuild apps with location awareness and provide intelligent context

プレース APIを使用すると、ユーザーは場所に移動したり、ユーザーの場所に基づいてインテリジェントなソリューションを提供したりできます。Use the places API to help users navigate to a place, or provide an intelligent solution based on the user's location. 以下にシナリオの例を示します。The following are some example scenarios:

  • 場所に関する情報をカレンダー イベントに取り込むことで、ユーザーがより簡単に日々の予定をこなし、生産性を高めることができます。**Incorporate place details in calendar events to help users navigate their day and enhance productivity.**
  • Places API をケータリング アプリケーションで活用することで、会場内での移動やセットアップの効率化を図ります。**Catering applications can use the places API to assist venue navigation and set up.**
  • 参加者への会議の事前情報のメール送信を自動化し、メールに地図を含めて会議室への行き方を説明できます。**Automate emailing pre-meeting details to attendees and include a map on how to get to a room.**
  • ボットの受信アシスタントをセットアップして、建物内の特定の会議室に関する情報を提供します。**Set up reception bot assistants to provide information about specific rooms in a building.**

アプリのシナリオによっては、Outlook の一部として、または Outlook とは別に、Places API を使用することができます。Depending on your app scenario, you can use the places API within the context of Outlook, or independent of Outlook.

Microsoft Graph でのソーシャル インテリジェンス、および開発者向けのその他の便利な機能の活用Take advantage of social intelligence and other developer conveniences in Microsoft Graph

Microsoft Graph では、people API を使用し、ユーザーの通信パターンやコラボレーション パターン、ビジネス上の関係に基づく 人物データに接続できます。Use the people API in Microsoft Graph to connect to people data which is based on a user's communication and collaboration patterns, and business relationships. ユーザー選択などのコントロールを実装し、ユーザーの代わりに会議を組織するときに、ユーザーに関係のある人物を提案できます。You can implement controls such as a people picker, and suggest persons relevant to the user when organizing meetings on the user's behalf.

アプリ データを外部データ ストアに保存および管理する際、オーバーヘッドを保存します。Save overhead in storing and managing app data in external data stores. Microsoft Graph では、各リソース インスタンスごとに、カスタム アプリ データをオープン拡張機能として保存できます。With Microsoft Graph, you can store custom app data as open extensions in individual resource instances. データを入力する必要がある場合、または入力されたスキーマを共有できるようにする場合は、カスタム アプリ データをスキーマ拡張機能に保存できます。If you require the data to be typed, or would like to be able to share the typed schema, you can store custom app data in schema extensions.

データはどこにありますか?Where is the data?

Microsoft Graph API は、ユーザーの プライマリ メールボックスおよび 共有メールボックス のデータへのアクセスをサポートしています。The Microsoft Graph API supports accessing data in users' primary mailboxes and in shared mailboxes. データは、Microsoft 365 の一部として、またはハイブリッド展開の exchange オンプレミスで、クラウド内のメールボックスに格納されている予定表、メール、または個人用連絡先になることができます。The data can be calendar, mail, or personal contacts stored in a mailbox in the cloud on Exchange Online as part of Microsoft 365, or on Exchange on-premises in a hybrid deployment.

この API は、Exchange Online 上Exchange Server 上 ではなく、インプレース アーカイブ メールボックスへのアクセスをサポートして_いません_。The API does not support accessing in-place archive mailboxes, not on Exchange Online nor on Exchange Server.

API リファレンスAPI reference

このサービスの API リファレンスをお探しですか?Looking for the API reference for this service?

次の手順Next steps