新しい OneDrive API はフル機能にアクセスできる

先月の 2015/2/25 に新しい OneDrive の API が公開 されました。これまでの提供されていた API は、OneDrive と連携したアプリ開発向けの API という感じでしたが、今回は、OneDrive のフル機能を提供するとのこと。また OneDrive のすべてのアプリ自身が、新しい API を使い始めているとのことです。

OneDrive API

OAuth2 の利用と、RESTful API で基本どのプラットフォームからも使えます(これまでと同じ)。

公式 Blog では、新しくできる機能として次の3つをあげています。

  • ファイルやフォルダーの同期情報の取得
  • 10GB までのファイルを分割してアップロード(レジューム機能)
  • ファイルのサムネイルのカスタマイズ

ファイルの検索もできるようになっています。RESTful & OAuth2 自体ははこれまでと同じですが、複数のドライブの概念の追加や、パスの指定方法、JSON 結果の中身など使いやすくなっている印象です。

細かなできないことは、ありそうですが(ごみ箱や、ファイルの共有の種類、アカウント機能や別サービスと密接に関連していることなど)、OneDrive と同等なサービスが作れる魅力的な API かもしれません。

OneDrive API 開発者向けサイト

開発者向けの OneDrive API もこれまでの内容から刷新され、GitHub 上に公開されています。※ 日本語で見つかる OneDrive API のサイトは(現時点では)旧 API 情報なので注意です。

OneDrive API

ドキュメント、ブラウザで API の操作ができるコンソール、サンプルへのリンクがあります。

サンプル

HTML + JavaScript のサンプル onedrive-explorer-js を動かしてみました。OneDrive のエクスプローラーです(これ自体は、いままでの API でもできそうですが)。

まず、実行結果から。sign in リンクから、認証を行います。

onedriveapi2

認証後の画面は OneDrive 風の画面と結果の JSON を確認できます。

onedriveapi3

実行方法

動かすためには、アプリの登録が必要です。OAuth の認証後のリダイレクト先の URL を登録する必要があり、localhost や IP アドレスでは指定できません。

アプリの登録は、Microsoft アカウント デベロッパー センター にアクセスして、アプリを作成します。「API 設定」の項目で、リダイレクト URL を入力します(URL + callback.html です)。

サンプルの index.html 内の clientId=”0000000048144E4F”redirectUri=”https://onedrive.github.io/odx/callback.html” 部分を、アカウント デベロッパー センターの「アプリケーション設定」の「クライアント ID」の値と、設定したリダイレクト URL に書き換えます。

以上で、実行できます。

アプリ登録に関しては、OneDrive authentication and sign-in に記載があります。