A Python client library for accessing JW Platform API.
Clone or download
Latest commit 8049501 Apr 10, 2018
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
examples Reset timeout_in_seconds to original value Apr 10, 2018
jwplatform release 1.2.2 Apr 10, 2018
tests tests for use_body request option Apr 10, 2018
.gitignore tests for use_body request option Apr 10, 2018
CHANGES.rst release 1.2.2 Apr 10, 2018
LICENSE Initial release Aug 3, 2016
MANIFEST.in release 1.1.0 Nov 3, 2016
README.rst Initial release Aug 3, 2016
requirements.txt Initial release Aug 3, 2016
setup.cfg Initial release Aug 3, 2016
setup.py tests for use_body request option Apr 10, 2018
tox.ini release 1.2.1 Nov 20, 2017

README.rst

JW Platform API Client

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:

>>> import jwplatform

Initialize jwplatform client instance (API key and secrets can be found in the JW Platform dashboard under the account tab):

>>> jwplatform_client = jwplatform.Client('API_KEY', 'API_SECRET')

Make an API request. For this example /videos/show API resource is used:

>>> response = jwplatform_client.videos.show(video_key='yYul4DRz')

If API request is successful, response variable will contain dictionary with information related to the response and the actual video data in response['video']:

>>> response
{'rate_limit': {'limit': 50, 'remaining': 47, 'reset': 1469105100},
 'status': 'ok',
 'video': {'author': None,
  'custom': {'param1': 'value 1',
   'param2': 'value 2'},
  'date': 1225962900,
  'description': None,
  'duration': '12.0',
  'error': None,
  'expires_date': 1459908560,
  'key': 'yYul4DRz',
  'link': 'http://www.jwplatform.com',
  'md5': 'b2d7312bd39cc60e9facc8ed3cbb6418',
  'mediatype': 'video',
  'size': '29478520',
  'sourceformat': None,
  'sourcetype': 'file',
  'sourceurl': None,
  'status': 'ready',
  'tags': 'new, video',
  'title': 'New test video',
  'upload_session_id': None,
  'views': 123}}

JW Platform API library will raise exception inherited from jwplatform.errors.JWPlatformError if response['status'] set to error. For example, there is no /media/show API resource. Requesting it will raise jwplatform.errors.JWPlatformNotFoundError:

>>> try:
...     jwplatform_client.media.show()
... except jwplatform.errors.JWPlatformNotFoundError as err:
...     print(err.message)
API method `/media/show` not found

For the complete list of available exception see jwplatform/errors.py file.

In addition to raising jwplatform.errors.JWPlatformError exceptions, JW Platform API library will re-raise requests.exceptions.RequestException exceptions from the Requests package.

Source Code

Source code for the JW Platform API library provided on GitHub.

License

JW Platform API library is distributed under the MIT license.