Microsoft Graph を使ってみよう : Graph エクスプローラー

# Microsoft Graph エクスプローラー

GUI を使って実際に Graph を触れるツールで、権限に応じたデータの操作が行えます。Graph エクスプローラーでは実際の組織にサインインして使うことも、サンプルを使うことも可能です。Office 365 を使っていない場合はサンプルを試してください。尚、サンプルを使った場合、データの取得のみが可能です。

## レコードの取得

1\. [Graph エクスプローラー](https://developer.microsoft.com/ja-jp/graph/graph-explorer) にアクセス。認証の箇所でサンプルが使用される旨表記あり。アドレスが https://graph.microsoft.com/v1.0/me/ のため自分のデータが取得される。「クエリを実行」をクリック。

<img width="778" alt="Capture.PNG" src="https://qiita-image-store.s3.amazonaws.com/0/214116/f48bc50d-794c-f458-2269-5152ec1ffed6.png">

2\. サンプル組織の結果が表示される。MeganB@M365x214355.onmicrosoft.com として実行している模様。

<img width="707" alt="Capture.PNG" src="https://qiita-image-store.s3.amazonaws.com/0/214116/0412e116-56f8-416a-8530-d3b5ed4e549a.png">

3\. アドレスを https://graph.microsoft.com/v1.0/users?$select=displayName,mail に変更して、クエリを実行。結果でユーザーの一覧が返ることを確認。

<img width="746" alt="Capture.PNG" src="https://qiita-image-store.s3.amazonaws.com/0/214116/ad3ee50e-30b8-3a49-6644-4da430e67ef3.png">

## サンプルクエリの利用

Graph エクスプローラーでは自分でクエリを指定できるほか、サンプルクエリが用意されています。

1\. サンプルクエリより、「自分の上司」を選択。選択と同時に実行される。

<img width="738" alt="Capture.PNG" src="https://qiita-image-store.s3.amazonaws.com/0/214116/fc8b3799-c4bc-fabf-c78d-dc1f78a1b0bd.png">

2\. サンプルクエリは既定で「はじめに」や「ユーザー」が表示されているが、他のサンプルも表示可能。「サンプルをさらに表示」リンクをクリック。

<img width="847" alt="Sketch.png" src="https://qiita-image-store.s3.amazonaws.com/0/214116/1c723bad-2929-1d44-cbee-f0b0cdec0e96.png">

3\. 試したいサンプルカテゴリを選択して、右上の「ｘ」をクリック。

<img width="834" alt="Sketch.png" src="https://qiita-image-store.s3.amazonaws.com/0/214116/92115dc0-0957-569d-d2b2-24f4f3ab5953.png">

4\. 追加されたサンプルから任意のクエリをクリックして結果を確認。また各サンプルの右にあるドキュメントリンクをクリックすると、ドキュメントが開く。

## レコードの更新

取得以外のクエリは、権限のあるユーザーで実際の組織にログインして行います。

1\. 「Sign in with Microsoft」ボタンをクリックしてサインインを実行。

<img width="904" alt="Capture.PNG" src="https://qiita-image-store.s3.amazonaws.com/0/214116/04abbd22-1480-41a2-155d-2296ed269140.png">

2\. 必要なアクセス許可を求められるので、内容を確認して「承認」をクリック。
<img width="897" alt="Capture.PNG" src="https://qiita-image-store.s3.amazonaws.com/0/214116/96581741-047a-ee19-b8d5-bc12d4ca5ef5.png">

3\. 既定のままクエリを実行して、自分のデータが取得できることを確認。

<img width="724" alt="Sketch.png" src="https://qiita-image-store.s3.amazonaws.com/0/214116/f7694fb4-9cb5-54e8-c015-d39f5fccd4d9.png">

4\. HTTP Verb を GET から PATCH に変更し、要求本文を画面ショットのように設定後、クエリを実行。エラーが出ることを確認。これは権限が不足しているため。

<img width="940" alt="Capture.PNG" src="https://qiita-image-store.s3.amazonaws.com/0/214116/30a6efde-8d1e-b85f-0eac-11f282ea89b8.png">

5\. エラーメッセージ内の「modify user permission」をクリックし、「Directory.ReadWrite.All」にチェックを入れる。「アクセス許可の修正」をクリック。

<img width="826" alt="Capture.PNG" src="https://qiita-image-store.s3.amazonaws.com/0/214116/503b5fc5-4524-ec58-ca5d-ecdd8f50863b.png">

6\. 自動でサインアウトが実行されるため、再度サインイン。その後 PATCH を再度実行。

<img width="922" alt="Capture.PNG" src="https://qiita-image-store.s3.amazonaws.com/0/214116/e851d7c2-4d0b-ca48-7734-0e9f9af91947.png">

7\. PATCH を GET に変更してデータを取得。jobTitle が変更されていることを確認。

<img width="856" alt="Capture.PNG" src="https://qiita-image-store.s3.amazonaws.com/0/214116/c5a87be9-c3a8-2f43-cfbf-61256bba3693.png">

同様にレコードの作成や削除も試してください。

## 履歴

クエリの実行履歴も履歴の項目から確認が可能です。

# オープンソース
Graph エクスプローラーはオープンソースです。是非 issue やプルリクエスト投げてください。

GitHub: [microsoftgraph/microsoft-graph-explorer](https://github.com/microsoftgraph/microsoft-graph-explorer)

# まとめ
サインインしなくてもサンプルデータが使えることから、開けばすぐ試せる気軽さと、本当にデータ操作まで行える本格的な機能。また多くのクエリのサンプルもあるので学習には最適です。

[目次に戻る](https://qiita.com/kenakamu/items/6a1ca508dc093779eefa)

# 参照
[Graph エクスプローラー](https://developer.microsoft.com/ja-jp/graph/graph-explorer)