A minimal implementation of Dropbox API v2
PHP
Clone or download
Latest commit 7ffa228 Jul 19, 2018
Permalink
Failed to load latest commit information.
src refactor fix for piped streams Jul 19, 2018
tests Added test cases for #34 Jan 19, 2018
.editorconfig add skeleton Apr 18, 2017
.gitattributes add skeleton Apr 18, 2017
.gitignore add skeleton Apr 18, 2017
.scrutinizer.yml add skeleton Apr 18, 2017
.styleci.yml add skeleton Apr 18, 2017
.travis.yml Add PHP 7.2 Sep 6, 2017
CHANGELOG.md commit Jul 19, 2018
CONTRIBUTING.md add skeleton Apr 18, 2017
LICENSE.md Enable MIT badge on GitHub Oct 11, 2017
README.md clean up Dec 4, 2017
composer.json edit composer.json Apr 19, 2017
phpunit.xml.dist add skeleton Apr 18, 2017

README.md

A minimal implementation of Dropbox API v2

Latest Version on Packagist Build Status StyleCI Quality Score Total Downloads

This is a minimal PHP implementation of the Dropbox API v2. It contains only the methods needed for our flysystem-dropbox adapter. We are open however to PRs that add extra methods to the client.

Here are a few examples on how you can use the package:

$client = new Spatie\Dropbox\Client($authorizationToken);

//create a folder
$client->createFolder($path);

//list a folder
$client->listFolder($path);

//get a temporary link
$client->getTemporaryLink($path);

Installation

You can install the package via composer:

composer require spatie/dropbox-api

Usage

The first thing you need to do is get an authorization token at Dropbox. Unlike other companies Dropbox has made this very easy. You can just generate a token in the App Console for any Dropbox API app. You'll find more info at the Dropbox Developer Blog.

With an authorization token you can instantiate a Spatie\Dropbox\Client.

$client = new Spatie\Dropbox\Client($authorizationToken);

Look in the source code of Spatie\Dropbox\Client to discover the methods you can use.

If you do not find your favorite method, you can directly use the contentEndpointRequest and rpcEndpointRequest functions.

public function contentEndpointRequest(string $endpoint, array $arguments, $body): ResponseInterface

public function rpcEndpointRequest(string $endpoint, array $parameters): array

Here's an example:

$client->rpcEndpointRequest('search', ['path' => '', 'query' => 'bat cave']);

Changelog

Please see CHANGELOG for more information what has changed recently.

Testing

composer test

Contributing

Please see CONTRIBUTING for details.

Security

If you discover any security related issues, please email freek@spatie.be instead of using the issue tracker.

Postcardware

You're free to use this package (it's MIT-licensed), but if it makes it to your production environment we highly appreciate you sending us a postcard from your hometown, mentioning which of our package(s) you are using.

Our address is: Spatie, Samberstraat 69D, 2060 Antwerp, Belgium.

We publish all received postcards on our company website.

Credits

Support us

Spatie is a webdesign agency based in Antwerp, Belgium. You'll find an overview of all our open source projects on our website.

Does your business depend on our contributions? Reach out and support us on Patreon. All pledges will be dedicated to allocating workforce on maintenance and new awesome stuff.

License

The MIT License (MIT). Please see License File for more information.