This project is now hosted at GitHub. These pages are only kept as reference.

Source code available in a git repo git clone git:// and browesable at

I got inspired by Django and decided to implement a bit of their object model on top of the base Linode bindings. Thankfully the API is already pretty object oriented. A quick example of usage:

from oop import *
for d in Domain.list():
  for record in Resource.list(domain=d):
    print "\t%s\t%s\t%s" % (, record.type,

results in
  www A
  mail  A
  trac  CNAME
  svn CNAME

There is a class for each of the sections listed on the main API documentation page. A list (that may change in the future) of the classes currently available:

These classes (depending on their underlying abilities) have save/delete/list/get methods. To list all the configs for instance you may do: LinodeConfig.list(linode=l) where l is either a Linode object or an integer. The list() methods returns a generator object, and get() returns a specific object. There is also a builtin cache.