Python bindings for Upwork API
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.


License PyPI version GitHub release Build status

Copyright (c) 2010-2015, Upwork All rights reserved.

Upwork API

These are Python (2 and 3) bindings for Upwork Public API You can use the API to build apps that will help you:

  • Manage your distributed team
  • Search for contractors and jobs
  • Send bulk invitations to interview and make offers
  • Work with Messages workflow
  • Retrieve Time & Financial information for your company, team and contractors

The API is the best way to communicate between apps.


httplib2 oauth2 urllib3


pip install python-upwork

All the dependencies will be automatically installed as well.

SSL Certificates Note

Package forces httplib2 to use the OS's certificates file by default.

If you want to use your own certificates, introduce the following code during initialization:

os.environ['HTTPLIB_CA_CERTS_PATH'] = '/path/to/my/ca_certs.txt'

Quick start

First, you need to create an API key for the authorization process here:

Installing Ipython interactive shell is very useful for working with the API. It offers features such as auto complete, history and docstring help display if you add '?' to the end of the variable/function/class/method among other interesting functionalities. So we really encourage you to install this shell: pip install ipython

To get started, look at the docs and also look at the examples/ folder to see examples how to obtain oauth access tokens for web application and desktop application.

Useful Links