This sample application demonstrates how you may upload a set of files organized by Universal Capture Specification (UCS) version 2. Sample contents are included in the sub-directory.
- You need Panopto user account who can create a video on Panopto system. If you don't have it, ask your organization's Panopto administrator.
- If you do not have Python 3 on your system, install the latest stable version from https://python.org
- Install external modules for this application.
pip install requests oauthlib requests_oauthlib
pip install boto3
- Sign in to Panopto web site
- Click your name in right-upper corner, and clikc "User Settings"
- Select "API Clients" tab
- Click "Create new API Client" button
- Enter arbitrary Client Name
- Select Server-side Web Application type.
- Enter
https://localhostinto CORS Origin URL. - Enter
http://localhost:9127/redirectinto Redirect URL. - The rest can be blank. Click Create Key.
- Note the created Client ID and Client Secret.
- Navigate to the target folder on Panopto web site
- Click gear icon at the top-right corner.
- Select Manage tab
- Find Folder ID and note it.
Following command uploads the sample contents in primary-video-only folder.
python upload.py --server your.site.panopto.com --folder-id [Folder ID] --local-folder primary-video-only --client-id [Client ID] --client-secret [Client Secret]
Following command uploads the sample contents in primary-secondary-ppt-and-cuts folder.
python upload.py --server your.site.panopto.com --folder-id [Folder ID] --local-folder primary-secondary-ppt-and-cuts --client-id [Client ID] --client-secret [Client Secret]
Type python upload.py --help for more command line options.
Core part of this application uses the same logic as the simplest upload sample. See that application for technical detail of API usage.
This sample application intentionally does not include error handling or retry logic to simplify the sample. As the best practice, you should have both proper error handling and reasonable retry logic in production code.
The sample videos in this repository are provided by Pixbay under Pixabay License. Panopto thanks the authors of these videos.
- Universal Content Library specification: UCS XML definition, validation tool, and samples.