docker-volume-backup/docs/how-tos/set-up-drobox.md
Frederik Ring 0bb94a2f56
Docs site (#269)
* Set up documentation site using jekyll

* Add workflow for deploying docs

* Ini formatting is hard to read

* Add instructions on how to run docs locally

* Work through docs

* Remove content from README

* Miscellaneous fixes

* Fix artifact upload
2023-09-16 11:54:39 +02:00

1.9 KiB

title layout parent nav_order
Set up Dropbox storage backend default How Tos 12

Set up Dropbox storage backend

Acquiring authentication tokens

  1. Create a new Dropbox App in the App Console
  2. Open your new Dropbox App and set DROPBOX_APP_KEY and DROPBOX_APP_SECRET in your environment (e.g. docker-compose.yml) accordingly
  3. Click on Permissions in your app and make sure, that the following permissions are cranted (or more):
  • files.metadata.write
  • files.metadata.read
  • files.content.write
  • files.content.read
  1. Replace APPKEY in https://www.dropbox.com/oauth2/authorize?client_id=APPKEY&token_access_type=offline&response_type=code with the app key from step 2
  2. Visit the URL and confirm the access of your app. This gives you an auth code -> save it somewhere!
  3. Replace AUTHCODE, APPKEY, APPSECRET accordingly and perform the request:
curl https://api.dropbox.com/oauth2/token \
    -d code=AUTHCODE \
    -d grant_type=authorization_code \
    -d client_id=APPKEY \
    -d client_secret=APPSECRET
  1. Execute the request. You will get a JSON formatted reply. Use the value of the refresh_token for the last environment variable DROPBOX_REFRESH_TOKEN
  2. You should now have DROPBOX_APP_KEY, DROPBOX_APP_SECRET and DROPBOX_REFRESH_TOKEN set. These don't expire.

Note: Using the "Generated access token" in the app console is not supported, as it is only very short lived and therefore not suitable for an automatic backup solution. The refresh token handles this automatically - the setup procedure above is only needed once.

Other parameters

Important: If you chose App folder access during the creation of your Dropbox app in step 1 above, you can only write in the app's directory! This means, that DROPBOX_REMOTE_PATH must start with e.g. /Apps/YOUR_APP_NAME or /Apps/YOUR_APP_NAME/some_sub_dir