Skip to content

barduinor/box-workshop-python

Repository files navigation

“box-dev-logo”

Box Python Workshops

This project contains workshops on how to use the Box Python SDK to interact with the Box API.

Box configuration steps

  1. Create a Box free account if you don't already have one.
  2. Complete the registration process for a Box developer account.
  3. Making sure you're logged in navigate to the Box Developer Console. This will activate your developer account.
  4. Create a new Box application. Select Custom App, fill in the form and then click Next.
  5. Select User Authentication (OAuth 2.0) and then click Create App.
  6. Scroll down to Redirect URIs and add the following redirect URI:
  7. Check all boxes in application scopes.
    • (or only what you think will be necessary)
  8. Click Save Changes.
  9. Note the Client ID and Client Secret. You will need these later.

Installation and configuration

Get the code

git clone [email protected]:barduinor/box-workshop-python.git
cd box-workshop-python

Set up your virtual environment

python3 -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt

Create your local application environment file

cp sample.env .env

Open the code in the code editor of your choice.

code .

Update the CLIENT_ID and CLIENT_SECRET field values in the env file with the Box application client id and client secret you created on the developer console. Depending on the workshop you are working on, you may need to update other environment variables in the .env file.

# Common settings
CLIENT_ID = YOUR_CLIENT_ID
CLIENT_SECRET = YOU_CLIENT_SECRET

# OAuth2 settings
CALLBACK_HOSTNAME = 127.0.0.1
CALLBACK_PORT = 5000
REDIRECT_URI = http://127.0.0.1:5000/callback

# CCG Settings
ENTERPRISE_ID = YOUR_ENTERPRISE_ID
CCG_USER_ID = THE_USER_ID

# JWT Settings
JWT_CONFIG_PATH = /path/to/your/jwt/config/file

Test the application

Depending on the type of authentication you'll be using test the associated files.

python test_oauth.py

The first time you run the application, it should open a web browser window and prompt you to log in to Box. After you log in, it will ask you to authorize the application. Once this process is complete you can close the browser window. By default the sample app prints the current user's name to the console, and lists the items on the root folder.

The authorization token last for 60 minutes, and the refresh toke for 60 days. If you get stuck, you can delete the .outh.json file and reauthorize the application.

JWT or CCG authentication will not require you to log in to Box.

Questions

If you get stuck or have questions, make sure to ask on our Box Developer Forum

Workshops

You'll find the workshop exercises in the workshops folder.

  • Folders - List, recursion, create, update, rename, copy, error handling, and delete
  • Files - Upload, download, update, move, copy, error handling, and delete
  • File Comments - Interact with the activity feed and comments
  • Search - Using search in the Box API
  • Shared Links - Create and manage shared links
  • File Representations - Working with file representations

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published