Box.net SDK for Python
This api module is in developing, any advice is welcome.
Box.net SDK for Python made developers could access Box.net v2 RESTful API with Python programming language in a easier way, from authentication to query/update the information of files/folders.
Developers should apply for an api key while using Box.net API. (Where to apply: Box.net: Developer Services)
>>> from boxapi import Session >>> api_key = "boxnetapikeyexample" >>> session = Session(api_key) >>> session.apply_new_authtoken() Please go to the following url for authentication: https://www.box.com/api/1.0/auth/boxnetapiticketexample >>> ticket = session.ticket
The url for authenticating will be stored in
After the user authorized your app on the above webpage, you can shoot the
authorize() method to get the auth token.
>>> session.authorize(ticket) >>> session.auth_token 'boxnetauthtokenexample'
Take a look and execute
test.py for more action detail.
Action is the general function for calling API methods. To operate correctly, you must know the auth token of the user.
import boxapi api = boxapi.Session("<Your API Key>", auth_token="<Your Auth Token>") api.action("/folders/0")
api.action() will return a dictionary which contains the response from the api call, and already has been transformed into dictionary from JSON format.
Here's a test script under the root folder of this project, named
test.py. Before using the test script, you need to fill
AUTH_TOKEN(optional) manually to make sure it will execute successfully.
If you didn't fill the field
AUTH_TOKEN, you will need to authorize by open the url appear in the prompt, otherwise you will do the default action (call
/folders/0) and see the prettified response on your screen.
Usage of test.py
will do the default action
python test.py "/folders/<other_folder_id>"
will call the action you specified by assigning the first argument and display the response.
boxapi now can work well with all the api methods with
POST, excluding file downloading and file uploading.
I will implement these following features recently:
- Uploading file(s)
- Downloading file(s)
- Directories tranversal
- Session's methods for simplify the progress of doing specify method
- Exception handling