DropboxのAPIを使ってみた
2019/08/12
DropboxのAPIを使う機会があったので調べたことをざっくりメモ。
APIで何ができる?
APIを使えばDropboxのアプリでできることならなんでもできる、と言いたいところですが、そうでもなかったりします。同期(Sync)がないんだよなあ…
- 現在のAPIは Dropbox API v2 と呼ばれている
- DropboxのAPIは結構変遷があり、Web上の古い情報は役に立たないのでちょっと注意が必要
- 以前存在したSyncとDatastoreのAPIは使えなくなっている
- Sync: 同期の仕組みを提供する
- Datastore: key-value形式のデータを保存する
- Deprecating the Sync and Datastore APIs | Dropbox Developer Blog
アップロード/ダウンロードはできるので自前で同期のロジックを書けば同期できますが、同期のロジックってちゃんと書くの難しいですよね…(だからこそAPIが廃止された、という側面もあるようです)
具体的に何ができるか、については Dropbox APIの概要 · watermint.org がよくまとまっていて分かりやすかったです。あとは Dropboxの公式ドキュメント ですね。
どうやってアクセスする?
HTTPのendpointが用意されているので言語を問わず利用可能です。
以下の言語は公式SDKが用意されています。
- Swift
- Objective-C
- Python
- .NET
- Java
- JavaScript
公式SDKがない場合は非公式なライブラリを探すか、endpointにHTTPで直接アクセスするかします。
endpointはOAuth 2.0で認証してURLを叩く一般的な作りになっているので、SDKがなくてもさほど問題ないと思います。
使うための手続きは?
ざっとまとめると以下のような感じです。
- Dropboxにログイン
- https://www.dropbox.com/developers/apps/create にアクセス
Create App
を選択- 以下の3項目を入力/選択
- Choose an API
- Dropbox API or Dropbox Business API
- Choose the type of access you need
- App folder: アプリ専用フォルダにだけアクセスできる
- Full Dropbox: 全フォルダにアクセスできる
- Name your app
- 規約に同意する
Create App
を選択
制限事項は?
Reference Guide - Developers - Dropbox によると
development status
とproduction status
がある- アプリを登録すると最初は
development status
になる - 両者に機能面の差はないが、
development status
だと500ユーザまでしか利用できない production status
にするためにはDropboxに申請を出す必要がある(=審査される)
ということのようです。 development status
はお試し状態って感じですね。
おススメ