Office 365 API サンプル (Exchange Online、OneDrive for Business へ接続する Web アプリケーション)

Office 365 API を利用すると、OAuth と REST により Exchange Online や SharePoint Online のデータに外部アプリケーションからアクセスできます。Office 365 API は 2014年10月に正式リリースされましたが、プレビューのときと比べて REST API は多く変更されています。特に Exchange!

Web で検索するとサンプル コードはいっぱい見つけることができますが、その記事の書かれたタイミングによってもしかするとプレビューの頃の REST API を使っているかもしれないので、サンプルコードを実行してみたいときには注意が必要です。

現在の REST API リファレンス
 http://msdn.microsoft.com/en-us/office/office365/api/api-catalog

また MSDN に 「Office 365 API プレビューのコード サンプル」 って記事があり、Office 365 API の利用サンプルが、MVC アプリケーションのものから Windows 8 アプリに Windows アプリといくつかのバリエーションで提供されています。とってもとっても参考になるんですが、このサンプルコードも今のところプレビュー時のコードなのでご注意を (2015年1月現在) しくみは変わってないので、上記 REST API リファレンスを見ながら REST 呼び出し部分や返ってきたデータ構造の扱い部分のみ、若干変更が必要です。

ここで提供されているひとつめのサンプルである 「Office 365 APIs: Web server app using REST calls」 について、現行の 365 API にあわせて、一部コードを修正してみました。

  修正後のサンプル ソリューションのダウンロードを行う

<サンプルの動作イメージ>
  Office 365 API で提供される REST API を利用して、OneDrive for Business のファイルを取得してみたり、Exchange Online のメールや予定を取得するといったとってもシンプルなものですが、365 API を利用について基本が全部つまってます。理解できれば、あとはやりたいことに応じて呼ぶ REST API が変わるだけ。
365Sample1

また Office 365 API を利用しているサンプル プログラムは動作確認するためには Azure AD への登録と、登録時に生成される ID と キーをコード内に含める必要があります。

参考までに、サンプルソリューションを動作させる方法も。

① 接続先の Office 365 サブスクリプションで、Azure AD サブスクリプションを利用するためのサインアップを行う  (これは1回だけでいいので、すでに行っている場合はスキップ)

    • Windows Azure ポータルに Office 365 管理者アカウントでサインイン
      ここで無事 Office 365 管理者アカウントで Windows Azure ポータルにアクセスできれば、サインアップは過去にやってあるってことです。
    • サインアップをまだやっていない場合は、「サブスクリプションが見つかりません」的なメッセージが表示されるので、めげずに 「Microsoft Azure にサインアップ」 をクリックする
    • 画面にしたがってサインアップ (登録) 作業をすすめてください。
      クレジットカードの登録を求められますが、Azure AD のみを利用する分にはお金はかかりません。
    • サインアップが終わると、Office 365 管理者アカウントを利用して Windows Azure ポータルにアクセスできるようになり、下図のように、組織名 (Office 365 テナント名) が表示されることが確認できます。
      365Sample3

      また、サインアップ後は、Office 365 管理ポータル内の 「Azure AD」 をクリックすると、Azure ポータルが開けるようになります。
      365Sample2


② Azure AD にアプリを登録

  • VS でデバッグ実行でのみ確認したい場合、あらかじめ VS プロジェクトをデバッグ実行する際の開発環境のポート番号を確認しておいてください。
    プロジェクトのプロパティで確認できます。
    http://localhost:**** ってやつですね
  • Azure ポータルに Office 365 管理者アカウントで入り、組織名をクリック – [アプリケーション] をクリック
  • アプリケーションが一覧されたら、画面下部の [追加] をクリック
  • ダイアログが表示されるので、[組織で開発中のアプリケーションを追加] → 任意のアプリケーション名を登録 → [サインオン URL] にデバッグ実行用の URL を指定 & [アプリケーションの URI] に任意の値を設定
  • アプリケーションが登録されるので、[構成] をクリック
    画面下部の [アプリケーションの追加] をクリックし、Exchange Online と SharePoint Online を追加する
    さらにアクセス許可を設定する。設定後、[保存] クリックしといてください。
    上の

    サンプルを動かすためには、Exchange Online に 「Read users’ mail」 と「Read users’ calendaers」 SharePoint Online には 「Read users’ file」 が必要です。

  • クライアント ID をコピっておく
  • キーを生成 (時間を選択して保存すると生成される) して、コピっておく

 


③ サンプル コード内にクライアント ID とキーを入れる

ダウンロードした Office 365 API のサンプル プログラムにはクライアント ID とキーを指定するコードがあります。この記事で紹介しているサンプルプログラムの場合は、web.config 内です。

 

 

以上、Office 365 API のサンプルプログラムと動作確認方法についてでした。

2015年2月、4月、6月にこんな無償セミナーもあります!ご興味ある方はぜひ受講を検討ください!

「Office 365 API によるアプリ開発と Azure AD 徹底解説」 ハンズオン セミナー

コメントを残す

以下に詳細を記入するか、アイコンをクリックしてログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト /  変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト /  変更 )

%s と連携中