https://github.com/ccnmtl/pypanopto
Panopto integration library in python
https://github.com/ccnmtl/pypanopto
Last synced: about 2 months ago
JSON representation
Panopto integration library in python
- Host: GitHub
- URL: https://github.com/ccnmtl/pypanopto
- Owner: ccnmtl
- License: gpl-3.0
- Created: 2018-01-11T21:44:03.000Z (over 7 years ago)
- Default Branch: main
- Last Pushed: 2025-04-11T14:11:02.000Z (about 2 months ago)
- Last Synced: 2025-04-11T15:28:53.660Z (about 2 months ago)
- Language: Python
- Homepage:
- Size: 2.74 MB
- Stars: 1
- Watchers: 6
- Forks: 0
- Open Issues: 4
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGES.txt
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
README
# pypanopto [](https://github.com/ccnmtl/pypanopto/actions)
The `pypanopto` library provides Python integration with the [Panopto SOAP API](https://support.panopto.com/s/article/api-0) and the [Panopto Upload API](https://support.panopto.com/s/article/Upload-API).
The library currently supports a small set of API endpoints. The [Zeep client](http://docs.python-zeep.org/en/master/) handles the underlying SOAP interaction.
* [LogOnWithPassword](https://support.panopto.com/resource/PanoptoSupport/API/Help/html/bfb68bf4-a7f7-f0c8-21cb-ebdaf9130caa.htm)
* [LogOnWithExternalProvider](https://support.panopto.com/resource/PanoptoSupport/API/Help/html/2765bd4f-5986-8c21-9d80-d896f37776cf.htm)
* [GetSessionsById](https://support.panopto.com/resource/PanoptoSupport/API/Help/html/65f91dc0-f111-9446-b77b-262b67409687.htm)
* [AddFolder](https://support.panopto.com/resource/PanoptoSupport/API/Help/html/969da43b-430b-7eba-9a12-3be17343f610.htm)The upload flow encapsulates the mix of soap client interaction and S3 upload protocol.
The library is used at Columbia University's [Center for Teaching And Learning](http://ctl.columbia.edu) to handle file upload in our [Wardenclyffe](https://github.com/ccnmtl/wardenclyffe) video management system and playback in [Mediathread](https://github.com/ccnmtl/mediathread), our multimedia annotation tool.
## Installation
You can install ```pypanopto``` through ```pip```:
```python
$ pip install pypanopto
```
Or, if you're using virtualenv, add ```pypanopto``` to your ```requirements.txt```.See this repository's [requirements.txt](https://github.com/ccnmtl/pypanopto/blob/main/requirements.txt) for a list of dependencies.
## Examples
The [examples](https://github.com/ccnmtl/pypanopto/tree/main/examples) directory provides basic command-line examples for all the library functionality.## Parameters explained
* `server` - The url of the Panopto server, minus the `https://` prefix.
* `username` - A Panopto username. The user must have the appropriate access level to interact with the API.
* `password` - The Panopto Password
* `instance_name` - The instance name as defined in Panopto > System > Identity Providers
* `application_key` - An application key, a.k.a the key produced through Panopto > System > Identity Providers
* `session_id` - The uuid of a given Panopto session, a.k.a piece of media
* `folder_id` - The uuid of a given Panopto folder