skip to navigation
skip to content

cloudprinting 0.3.2

Simple API for Google Cloud Print

A simple interface to Google Cloud Print.


>>> from cloudprinting import *
>>> auth = OAuth2(access_token="qwertyuiopasdfghjkl", token_token="Bearer")
>>> r = list_jobs(auth=auth)
>>> r['jobs']
[{"id": ...}, ...]
>>> r = submit_job(printer="0e506d12-dbe0-54d3-7392-fd69d45ff2fc", content="test.pdf", auth=auth)
>>> r['job']
{"id": "abcdefgh", ...}
>>> delete_job("abcdefgh", auth=auth)

Supports both Python 2 and 3:

  • ≥ Python 2.6
  • ≥ Python 3.2


Use pip to install the latest version from PyPI:

pip install cloudprinting

Command line interface

The module can be used from the command line via:

python -m cloudprinting ...

See --help for details.


The test suite requires three environment variables:

  • CP_CLIENT_ID – application “client id” (Google API)
  • CP_CLIENT_SECRET – application “client secret” (Google API)
  • CP_REFRESH_TOKEN – refresh token for an authorised Google Account
  • CP_PRINTER_ID – printer ID (optional, default: __google__docs)

During the tests a PDF is printed. By default the Google Docs printer is used, however it is more forgiving than typical printers, so I don’t recommend using it.

Example: \
CP_CLIENT_SECRET=asdfghjklzxcvbnmqwertyuiop \
CP_REFESH_TOKEN=mnbvcxzlkjhgfdspoiuytr \
CP_PRINTER_ID=0e50ed12-dbe0-54d3-a4bd-fdf9d45ff2fc \

Change log


  • Fix bug in auto-refreshing of OAuth2
  • Remove expiration time recording from OAuth2


  • Make OAuth2 arguments all optional
  • Fix
  • Fix README bugs


  • Add OAuth2 authentication
  • ClientLoginAuth only available on Python 2.x
  • By default send capabilities (even if it’s [{}]). This fixes some issues
  • Print jobs now default to using the filename as the title (no more automatic inclusion of datetime)
  • Added a crude command line interface


  • Make ClientLoginAuth cache authentication token


  • Initial version
File Type Py Version Uploaded on Size
cloudprinting-0.3.2.tar.gz (md5) Source 2012-10-10 10KB