A Python client library for accessing JW Platform API
Project description
A Python client library for accessing JW Platform API. Visit JW Player Developer site for more information about JW Platform API.
Installation
JW Platform API library can be installed using pip:
pip install jwplatform
Library has Requests package as dependency. It will be installed automatically when installing using pip.
Usage
Import jwplatform library:
from jwplatform.client import JWPlatformClient
Initialize jwplatform client instance. API keys can be created in the JW Platform dashboard on the API Credentials page. Copy the secret value to use here.
jwplatform_client = JWPlatformClient('API_SECRET')
Make an API request:
response = jwplatform_client.Media.get(site_id='SITE_ID', media_id='MEDIA_ID')
If API request is successful, response variable will contain dictionary with information related to the response and the actual video data in response.json_body:
>>> response.json_body
{"id": "Ny05CEfj",
"type": "media",
"created": "2019-09-25T15:29:11.042095+00:00",
"last_modified": "2019-09-25T15:29:11.042095+00:00",
"metadata": {
"title": "Example video",
"tags": ["new", "video"]
}}
JW Platform API library will raise exception inherited from jwplatform.errors.APIError if anything goes wrong. For example, if there is no media with the specified media_id requesting it will raise jwplatform.errors.NotFoundError:
try:
jwplatform_client.Media.get(site_id='SITE_ID', media_id='BAD_MEDIA_ID')
except jwplatform.errors.NotFoundError as err:
print(err)
For the complete list of available exception see jwplatform/errors.py file.
Source Code
Source code for the JW Platform API library provided on GitHub.
V1 Client
The V1 Client remains available for use, but is deprecated. We strongly recommend using the V2 Client when possible.
To use the V1 Client, import the Client from the v1 namespace.
import jwplatform.v1
api_client = jwplatform.v1.Client('SITE_ID', 'V1_API_SECRET')
License
JW Platform API library is distributed under the MIT license.
Changelog
2.1.2 (2021-03-23)
Fixed missing dependency causing import errors after install.
2.1.1 (2021-01-13)
Fixed an issue where the v1 client could not be imported from the jwplatform module.
2.1.0 (2021-01-12)
Added support for JWPlatform file upload using a multi-part mechanism.
2.0.1 (2021-01-11)
Fix a bug on generating the signature when array value is in the query string.
2.0.0 (2020-12-03)
Added support for JWPlatform API v2
All existing v1 API functionality has been moved to the jwplatform.v1 submodule (from jwplatform).
1.3.0 (2019-12-22)
remove Python 2 compatibility
1.2.2 (2018-04-10)
parameters are now included in the request body by default for POST requests
1.2.1 (2017-11-20)
improved default parameters handling when instantiating client
added exponential connection backoff
1.2.0 (2016-11-22)
allow additional Request package params in API requests
1.1.0 (2016-11-03)
added JWPlatformRateLimitExceededError exception
1.0.0 (2016-07-21)
Initial release.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for jwplatform-2.1.2-py2.py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 02b1b5d9811698fe0991fa77d803e5a46bd034736ab79cbc9c7cb79c9f5a6535 |
|
MD5 | 4fedbdf649029967343cd6f8f26c675a |
|
BLAKE2b-256 | a95ae412f896331e2fccdc7603bc3b18bc77411e8eb5001aa71c5a47879729a2 |