python-boxview 1.2.2

Last updated:

0 purchases

python-boxview 1.2.2 Image
python-boxview 1.2.2 Images
Add to Cart

Description:

pythonboxview 1.2.2

Python client library for Box View API

Installation
The easiest way to install the latest version is by using
pip/easy_install to pull it from PyPI:
pip install python-boxview
You may also use Git to clone the repository from Github and install it
manually:
git clone https://github.com/caxap/python-boxview.git
python setup.py install


Authentication
Box View API uses token-based authentication. You need create
application and generate api token at Box Developes Portal. Then use
the token to create instance
from boxview import boxview

api = boxview.BoxView('<your box view api key>')
Alternatively, token can be set by environment variable
BOX_VIEW_API_KEY.


Usage
python-boxview supports all methods from Box View API. List of methods
and parameters description can be found here
import os
from boxview import boxview

api = boxview.BoxView('<your box view api key>')

# upload file to create new document
doc = api.create_document(file='python-boxview.pdf', name='python-boxview')

# create new document from public url
doc = api.create_document(url='https://cloud.box.com/shared/static/4qhegqxubg8ox0uj5ys8.pdf')

doc_id = doc['id']

# retrieve existings document
doc1 = api.get_document(doc_id)

# list all uploaded documents for your api key
all_docs = api.get_documents(limit=10)

# update name of existing document
doc1 = api.update_document(doc_id, name='python-boxview')

# check that document ready to view
bool(api.ready_to_view(doc_id))

# start view session for document
session = api.create_session(doc_id, duration=300)

ses_id = session['id']

# get link to box viewer
api.get_session_url(ses_id)

# retrieve original document content to string
content, mimetype = api.get_document_content_to_string(doc_id)
len(content)

# retrieve pdf version of document to file
api.get_document_content_to_file('python-boxview.pdf', doc_id, extension='.pdf')
os.path.exists('python-boxview.pdf')

# retrieve mimetype of original document content
mimetype = api.get_document_content_mimetype(doc_id)

# create webhook
api.create_webhook('http://example.com/my-webhook')

# create S3 storage profile
api.create_storage_profile('S3', 'super-awesome-bucket', 'AKIAIOSFODNN7EXAMPLE', 'wJalrXUtnFEMI/K7MDENG/bPxRfiCYzEXAMPLEKEY')

# and delete document
api.delete_document(doc_id)


Dealing with Rate Limiting
import time
from boxview import boxview

api = boxview.BoxView('<your box view api key>')

document_id = '2da6cf9261824fb0a4fe532f94d14625'
retry, max_retry = 0, 3
while True:
try:
api.get_thumbnail_to_file('thumbnail_100x100.png', document_id, 100, 100)
break # ok, thumbnail saved
except boxview.RetryAfter as e:
retry += 1
if retry <= max_retry:
time.sleep(e.seconds) # waiting for next call
else:
raise # failed after `max_retry` attempts, exit with exception


License
The MIT License (MIT)
Contributed by Maxim Kamenkov

License:

For personal and professional use. You cannot resell or redistribute these repositories in their original state.

Customer Reviews

There are no reviews.