Skip to main content

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:

>>> 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.

Changelog

1.1.0 (2016-11-03)

  • added JWPlatformRateLimitExceededError exception

1.0.0 (2016-07-21)

  • Initial release.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

jwplatform-1.1.0.tar.gz (9.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

jwplatform-1.1.0-py2.py3-none-any.whl (8.4 kB view details)

Uploaded Python 2Python 3

File details

Details for the file jwplatform-1.1.0.tar.gz.

File metadata

  • Download URL: jwplatform-1.1.0.tar.gz
  • Upload date:
  • Size: 9.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for jwplatform-1.1.0.tar.gz
Algorithm Hash digest
SHA256 8f42abab1c0ff732a2ac1ce5f24c490ec62dca1d97feaa42fd8d290070db15b1
MD5 1ab4a6755381966a96875261e1276338
BLAKE2b-256 5996d72aaf701e5eacc488a23b25d4b9399abac4b23849497afbf2ae5d285d2a

See more details on using hashes here.

File details

Details for the file jwplatform-1.1.0-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for jwplatform-1.1.0-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 56cb7b4f7a4508029b6516fbcdede589567db77de2589161a3c3bb6fba90e81d
MD5 3bc3327e7eab392b6ebc60efa57e985e
BLAKE2b-256 9b1e2df9dd4a1fd5f89a98b955bcc627fc5d33767cc6b7dacea8fe78d259230c

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page