/jwplatform-py

A Python client library for accessing JW Platform API.

Primary LanguagePythonMIT LicenseMIT

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.