Skip to main content

Thin client for Pivotal Tracker's API

Project description

Pivotal-Py is a very thin wrapper built on top of httplib2 to make requests against the Pivotal Tracker API.


Install from PyPI with easy_install or pip:

pip install pivotal-py


Pivotal-Py requires httplib2 0.6.0 or later.


This Pivotal Tracker API client uses the token to authenticate with Pivotal Tracker. You can get a token by going to your user profile and creating an API token.

Once you have an API token making requests against the APIs follows a simple pattern of chainable methods, for example:

from pivotal import Pivotal

pv = Pivotal('TOKEN')

# Assuming a base URL of ''

# Perform a GET at /projects and processes content via ElementTree.
etree = pv.projects().get_etree()

# Perform the same GET at /projects but return the response and
# content direct from httplib2.
response, content = pv.projects().get()

Note: As seen above, there are two ways to get the content of a request:

  1. Call get_etree() to return the content as ElementTree object.
  2. Call get() to return the tuple containing both the response and content direct from httplib2.

Any positional arguments get pushed onto the URL:

# Perform a GET at /projects/[id]/stories where [id] is a project ID.
etree = pv.projects(id).stories().get_etree()

Any keyword arguments get mapped to the URL query string and appended at the end of the URL:

# Perform a GET at /projects/[id]/stories and filter stories by those that
# are not started.
etree = pv.projects(id).stories(filter='state:unstarted').get_etree()
# Results in a URL of: /projects/[id]/stories?filter=state%3Aunstarted

Note: POSTs are currently not implemented, but the plan is to implement a post method that takes a body argument which is the body of the POST:

# TODO: POST to /projects to create a new project
etree = pv.projects().post(xml_body)


0.1.3 (2011-07-08)

  • Removed Pivotal import from which was causing httplib2 issues.

0.1.2 (2011-07-08)

  • Added httplib2 as a dependency.

0.1.1 (2010-12-10)

  • Added an examples folder with a single example showing a script to send an email summarizing stories across projects to multiple team members.
  • Provide both get() and get_etree(). The get() method returns the response and content of the request directly from httplib2. The get_etree() will return an ElementTree object of the content.

0.1.0 (2010-10-15)

  • Initial public release.

Project details

Download files

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

Files for pivotal-py, version 0.1.3
Filename, size File type Python version Upload date Hashes
Filename, size pivotal-py-0.1.3.tar.gz (4.7 kB) File type Source Python version None Upload date Hashes View

Supported by

Pingdom Pingdom Monitoring Google Google Object Storage and Download Analytics Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page