Outlook REST API の試し方

Outlook REST API を試すには Outlook Sandbox を使用するのが簡単です。ですが自分で用意した Client ID を使用したり、アプリケーションの権限を使用したりすることはできません。そのため、ここでは Office365APIEditor を使用して Outlook REST API の動作を検証する方法を紹介します。紹介するのはメールの取得方法のみですが、同じ要領で他の権限を使用して様々な情報にアクセスができます。Office365APIEditor の通信を Fiddler で取得すれば、どのような通信が行われているのか確認することができます。 実際に Outlook REST API を使用するアプリケーションを開発する場合は、これらの通信をライブラリを使用しながら (もちろん使用しないことも可能) 実装することになります。なお Outlook REST API よりも Microsoft Graph の利用が推奨されます。

[委任されたアクセス許可] を Office365APIEditor で試す (ビルトイン編)

アクセス トークンの種類Delegated Token
ツールOffice365APIEditor
認証エンドポイントv2.0
APIOutlook REST API
  1. Office365APIEditor をインストールして起動します。
  2. [Tools] – [New Editor] をクリックします。
  3. [File] – [New Access Token] をクリックします。
  4. [I have not registered the application.] を選択して [Next] をクリックします。
  5. [Office365APIEditor built-in application] を選択して [Next] をクリックします。
  6. [Scope editor] をクリックします。
  7. [Deselect all] をクリックします。
  8. [ https://outlook.office.com/mail.read ] のチェックをオンにします。
  9. [OK] をクリックします。
  10. [Next] をクリックします。
  11. Office 365 のユーザーでサインインします。
  12. 上部ペインの [Request] に「https://outlook.office.com/api/v2.0/me/messages」と入力して [Run] をクリックします。
  13. 下部ペインの [Body] に操作をしているユーザーのメールが表示されます。

[委任されたアクセス許可] を Office365APIEditor で試す (カスタム アプリ編)

アクセス トークンの種類Delegated Token
ツールOffice365APIEditor
認証エンドポイントv1.0
APIOutlook REST API
  1. Azure Portal にサインインします。
  2. [Active Directory] – [アプリの登録] – [新規登録] をクリックします。
  3. [名前] に任意のアプリの名前を入力します。(例 : App03)
  4. [サポートされているアカウントの種類] から [この組織のディレクトリ内のアカウントのみ] を選択します。
  5. [リダイレクト URI] で [パブリック クライアント (モバイルとデスクトップ)] を選択し、任意の URI を入力します。(例 : https://localhost/App03)
  6. [登録] をクリックします。
  7. 表示された [アプリケーション (クライアント) ID] の値を控えておきます。
  8. [管理] – [API のアクセス許可] をクリックします。
  9. [アクセス許可の追加] をクリックします。
  10. [Exchange] をクリックします。
  11. [委任されたアクセス許可] をクリックします。
  12. [Mail] – [Mail.Read] のチェックをオンにします。
  13. [アクセス許可の追加] をクリックします。
  14. Office365APIEditor をインストールして起動します。
  15. [Tools] – [New Editor] をクリックします。
  16. [File] – [New Access Token] をクリックします。
  17. [v1.0 Endpoint] を選択して [Next] をクリックします。
  18. [Native app] を選択して [Next] をクリックします。
  19. [Tenant Name] にアプリを登録したテナントの onmicrosoft.com のドメイン名を入力します。(例 : contoso.onmicrosoft.com)
  20. [Application ID] に手順 7 で控えた値を入力します。
  21. [Redirect URI] に手順 5 で入力した URI を入力します。
  22. [Resource] から [Exchange Online] を選択します。
  23. [Next] をクリックします。
  24. Office 365 のユーザーでサインインします。
  25. 上部ペインの [Request] に「https://outlook.office.com/api/v2.0/me/messages」と入力して [Run] をクリックします。
  26. 下部ペインの [Body] に操作をしているユーザーのメールが表示されます。

[アプリケーションの許可] を Office365APIEditor で試す

アクセス トークンの種類App-Only Token
ツールOffice365APIEditor
認証エンドポイントv1.0
APIOutlook REST API
  1. Windows PowerShell を起動します。
  2. 以下のコマンドを実行します。
$cert = New-SelfSignedCertificate -Subject "CN=<任意のアプリケーション名>" -CertStoreLocation "Cert:\CurrentUser\My" -KeyExportPolicy Exportable -KeySpec Signature

実行例 :

$cert = New-SelfSignedCertificate -Subject "CN=App04" -CertStoreLocation "Cert:\CurrentUser\My" -KeyExportPolicy Exportable -KeySpec Signature
  1. 証明書スナップインを起動して現在のユーザーの証明書ストアを表示します。(certmgr.msc を起動します。)
  2. [個人] – [証明書] を展開します。
  3. 先ほどのコマンドで作成した証明書を探し、右クリック メニューから [すべてのタスク] – [エクスポート] をクリックします。
  4. [次へ] をクリックします。
  5. [いいえ、秘密キーをエクスポートしません] を選択して [次へ] をクリックします。
  6. [DER encoded binary X.509 (.CER)] を選択して [次へ] をクリックします。
  7. 任意のファイル名を入力して [次へ] をクリックします。(例 : App04.cer)
  8. [完了] をクリックします。
  9. [正しくエクスポートされました。] と表示されたら [OK] をクリックします。
  10. もう一度証明書の右クリック メニューから [すべてのタスク] – [エクスポート] をクリックします。
  11. [次へ] をクリックします。
  12. [はい、秘密キーをエクスポートします] を選択して [次へ] をクリックします。
  13. [証明のパスにある証明書を可能であればすべて含む] と [証明書のプライバシーを有効にする] のチェックをオンにし、[正しくエクスポートされた時は秘密キーを削除する] と [すべての拡張プロパティをエクスポートする] のチェックはオフにして、[次へ] をクリックします。
  14. [パスワード] のチェックをオンにして、任意のパスワードを入力します。
  15. [次へ] をクリックします。
  16. 任意のファイル名を入力して [次へ] をクリックします。(例 : App04.pfx)
  17. [完了] をクリックします。
  18. [正しくエクスポートされました。] と表示されたら [OK] をクリックします。
  19. Azure Portal にサインインします。
  20. [Active Directory] – [アプリの登録] – [新規登録] をクリックします。
  21. [名前] に任意のアプリの名前を入力します。(例 : App04)
  22. [サポートされているアカウントの種類] から [この組織のディレクトリ内のアカウントのみ] を選択します。
  23. [リダイレクト URI] で [Web] を選択し、任意の URI を入力します。(例 : https://localhost/App04)
  24. [登録] をクリックします。
  25. 表示された [アプリケーション (クライアント) ID] の値を控えておきます。
  26. [管理] – [証明書とシークレット] をクリックします。
  27. [証明書のアップロード] をクリックします。
  28. 手順 11 でエクスポートした証明書を選択して [追加] をクリックします。
  29. [管理] – [API のアクセス許可] をクリックします。
  30. [アクセス許可の追加] をクリックします。
  31. [Exchange] をクリックします。
  32. [アプリケーションの許可] をクリックします。
  33. [Mail] – [Mail.Read] のチェックをオンにします。
  34. [アクセス許可の追加] をクリックします。
  35. [<テナント名> に管理者の同意を与えます] をクリックします。
  36. [はい] をクリックします。
  37. Office365APIEditor をインストールして起動します。
  38. [Tools] – [New Editor] をクリックします。
  39. [File] – [New Access Token] をクリックします。
  40. [v1.0 Endpoint] を選択して [Next] をクリックします。
  41. [Web app / API (Use App Only Token by certificate)] を選択して [Next] をクリックします。
  42. [Tenant Name] にアプリを登録したテナントの onmicrosoft.com のドメイン名を入力します。(例 : contoso.onmicrosoft.com)
  43. [Application ID] に手順 27 で控えた値を入力します。
  44. [Certificate Path] に手順 20 でエクスポートした証明書のパスを入力します。
  45. [Password for cer] に手順 16 で入力したパスワードを入力します。
  46. [Resource] から [Exchange Online] を選択します。
  47. [Next] をクリックします。
  48. 上部ペインの [Request] に「https://outlook.office.com/api/v2.0/users/<任意のユーザーの UPN>/messages」と入力して [Run] をクリックします。(例 : https://outlook.office.com/api/v2.0/users/user01@contoso.onmicrosoft.com/messages)
  49. 下部ペインの [Body] に指定したユーザーのメールが表示されます。