Module Dropbox

Binding to the Dropbox Remote API.

type error_description = {
error : string;
error_description : string;
}
type error =
| Invalid_arg of error_description

Bad input parameter. The string should indicate why.

| Invalid_token of error_description

Bad or expired token. This can happen if the user or Dropbox revoked or expired an access token. To fix, you should re-authenticate the user.

| Invalid_oauth of error_description

Bad OAuth request (wrong consumer key, bad nonce, expired timestamp...). Unfortunately, re-authenticating the user won't help here.

| Conflict of error_description

A conflict occured when uploading a file. See S.files_put.

| Too_many_requests of error_description

Your app is making too many requests and is being rate limited. Too_many_requests can trigger on a per-app or per-user basis.

| Try_later of int option * error_description

Try_later(sec, e) If sec = Some s, this means your app is being rate limited and you must retry after s seconds. Otherwise, this indicates a transient server error, and your app should retry its request.

| Quota_exceeded of error_description

User is over Dropbox storage quota.

| Server_error of int * error_description

Server error 5xx

| Not_modified of error_description

The folder contents have not changed (relies on hash parameter).

| Unsupported_media_type of error_description

The image is invalid and cannot be converted to a thumbnail.

val string_of_error : error -> string
exception Error of error
module Date : sig ... end

Date representation.

module type S = sig ... end

Dropbox API.

module Make : functor (Client : Cohttp_lwt.S.Client) -> S

Create a concrete Dropbox API implementation given a client one. Note that several instances have been instantiated for you in the Dropbox_* modules so you generally do not have to call this yourself.