This is a small Ruby library for accessing the new Dropbox API. It provides a single class, Dropbox::Client, with methods that map to most of the Dropbox API endpoints. Currently all of the endpoints in the auth, files, and users namespaces are supported. Sharing methods are planned.
- Ruby 2.1.0 or later
- The http gem
Run:
gem install dropbox-sdk-v2Then, in your source files:
require'dropbox'Or just add this to your Gemfile:
gem'dropbox-sdk-v2'Also see the full YARD documentation.
Set up a client:
require'dropbox'dbx=Dropbox::Client.new(ENV['DROPBOX_ACCESS_TOKEN'])Create a folder:
folder=dbx.create_folder('/myfolder')# => Dropbox::FolderMetadatafolder.id# => "id:a4ayc_80_OEAAAAAAAAAXz"folder.name# => "myfolder"folder.path_lower# => "/myfolder"Upload a file:
# File body can be a String, File, or any Enumerable.file=dbx.upload('/myfolder/file.txt','file body')# => Dropbox::FileMetadatafile.size# => 9file.rev# => a1c10ce0dd78Download a file:
file,body=dbx.download('/myfolder/file.txt')# => Dropbox::FileMetadata, HTTP::Response::Bodybody.to_s# => "file body"Delete a file:
dbx.delete('/myfolder/file.txt')# => Dropbox::FileMetadataAll contributions are welcome. Please file an issue or submit a pull request.
This project strives for full test coverage. To run the test suite, make a Dropbox App with "app folder" access and generate an access token. Then run DROPBOX_SDK_ACCESS_TOKEN="..." rake test.