社畜の所業

社畜の所業

Microsoft365の機能について解説をしていきたいと思います。このブログの情報をご活用いただければ幸いです。たまに他の情報も取り入れていきたいと思います。

※このサイトはPR記事を含みます。

【Microsoft365参考書】Microsoft Graph とは?API とは?

Microsoft Graph とは?API とは?

 

 

Microsoft Graph とは?

Microsoft Graph (マイクロソフトグラフ) は、Microsoft が提供する API プラットフォーム で、Microsoft 365 のさまざまなサービスやデータにアクセスできる統一されたエンドポイントです。

開発者はこれを使って、Microsoft 365、Enterprise Mobility + Security、Windows などの Microsoft クラウドサービスと連携するアプリケーションを構築できます。

 

主な特徴

  • 統一 API エンドポイント : https://graph.microsoft.com を通じて、複数の Microsoft サービスにアクセス可能。
  • RESTful API : HTTP リクエスト(GET, POST, PATCH, DELETE)でデータを操作。
  • OAuth 2.0 認証 : 安全なアクセス制御を提供。
  • リアルタイムデータ : ユーザーのメール、カレンダー、ファイル、Teams チャットなどにリアルタイムでアクセス。

 

 

 

Microsoft Graphでアクセスできる主なデータ

Outlook

メール、カレンダー、連絡先

 

OneDrive

ファイル、フォルダ

 

Teams

チャット、チーム、チャネル

 

EntraID (Azure AD)

ユーザー、グループ、ロール

 

SharePoint

サイト、リスト、ドキュメント

 

Planner / To Do

タスク、プラン

 

 

 

Microsoft Graph でできること

 

1. ユーザー情報の取得・管理

  • ユーザーのプロフィール情報を取得(名前、メール、部署など)
  • 所属グループや役職の確認
  • Azure AD 上のユーザーやグループの作成・更新・削除

 

2. メール・カレンダーの操作(Outlook

  • ユーザーの受信トレイからメールを取得・送信
  • カレンダー予定の取得・作成・更新・削除
  • 会議のスケジュール調整や出席者の確認

 

3. ファイルの操作(OneDrive / SharePoint

  • ユーザーの OneDrive や SharePoint 上のファイルを取得・アップロード・削除
  • ファイルの共有リンクを作成
  • フォルダ構造の取得やナビゲーション

 

4. Microsoft Teams の連携

  • チームやチャネルの一覧取得
  • チャットメッセージの送受信
  • 会議のスケジュールや参加者情報の取得

 

5. タスク管理(Planner / To Do)

  • タスクの取得・作成・更新
  • タスクの進捗状況や期限の管理
  • プロジェクト単位でのタスク整理

 

6. 通知・アラートの送信

  • ユーザーに通知を送る(アプリ内通知やメール)
  • Webhook を使ってリアルタイム通知を受け取る

 

7. Power BI との連携

  • レポートやダッシュボードの取得
  • データセットの更新や共有

 

 

 

Microsoft Graphの使用例

 

1. メール・予定表・連絡先の操作

用途:ユーザーの受信トレイからメールを取得、送信、削除、予定表イベントの作成・更新、連絡先の管理など。

例:

GET /me/messages:自分のメール一覧を取得

POST /me/sendMail:メール送信

 

2. Teamsとの連携

用途:チャットメッセージの取得、会議のスケジュール、チームやチャネルの作成・管理。

例:

GET /teams/{id}/channels:チーム内のチャネル一覧を取得

POST /teams/{id}/scheduleMeeting:会議のスケジュール

 

3. SharePoint・OneDriveのファイル操作

用途:ドキュメントライブラリの取得、ファイルのアップロード・ダウンロード、メタデータの取得。

例:

GET /sites/{site-id}/drive/root/children:ルートフォルダのファイル一覧取得

 

4. セキュリティ・ID管理

用途:リスク検出、アラートの取得、条件付きアクセスの適用、ユーザーの認証状態の確認。

例:
GET /security/alerts:セキュリティアラートの取得

GET /identityProtection/riskyUsers:リスクのあるユーザー一覧取得

 

5. 検索・ナレッジ探索

用途:Microsoft 365全体を横断した検索(メール、ファイル、Teamsなど)。

例:

POST /search/query:カスタムクエリによる検索

 

 

 

APIApplication Programming Interface)とは

アプリケーション同士がデータや機能をやり取りするためのルールや窓口です。

また、プラットフォームとは、いろいろな API をまとめて提供する仕組みであり、開発者が簡単にアクセスできるように、統一された方法・認証・ドキュメントなどが整備されています。

例:天気アプリが気象庁のデータを取得するのも API を通じて行われます。

 

API プラットフォームのメリット

 

一貫性

どのサービスでも同じような方法でアクセスできる

 

セキュリティ

認証・認可(OAuth 2.0 など)が統一されている

 

拡張性

新しいサービスや機能が追加されてもすぐに使える

 

開発効率

ドキュメントやツールが整っていて開発しやすい

 

API を使っているアプリは、実は私たちが日常的に使っているものばかりです。API は「アプリ同士をつなぐ橋渡し」のような役割をしているので、多くの人気アプリやサービスが裏側で API を活用しています。

 

 

 

よく使われているアプリと API の関係

 

1. 天気アプリ

使っている API気象庁、OpenWeatherMap、Weatherstack など

目的:現在の天気や週間予報を取得

 

2. 地図・ナビアプリ(Google MapsYahoo!地図など)

使っている APIGoogle Maps API、Mapbox API

目的:地図表示、ルート検索、現在地取得

 

3. SNS アプリ(InstagramTwitterFacebook

使っている API:各社の公式 API

目的:投稿の取得・投稿、ユーザー情報の取得、いいね・コメントの操作

 

4. チャットアプリ(Slack、Microsoft Teams、LINE)

使っている API:Slack APIMicrosoft Graph、LINE Messaging API

目的:メッセージの送受信、ボットの作成、通知の送信

 

5. ECサイト・ショッピングアプリ(Amazon楽天、Shopify)

使っている APIAmazon Product Advertising API楽天 API、Shopify API

目的:商品情報の取得、注文処理、在庫管理

 

6. 決済アプリ(PayPay、Stripe、PayPal

使っている API:各社の決済 API

目的:支払い処理、取引履歴の取得、ユーザー認証

 

7. 翻訳アプリ(Google 翻訳、DeepL)

使っている APIGoogle Translate API、DeepL API

目的:テキストの翻訳、言語検出

 

 

it-bibouroku.hateblo.jp

 

it-bibouroku.hateblo.jp

 

it-bibouroku.hateblo.jp