Skip to main content
Cushion: a simple CouchDB Document API wrapper

This is a Python wrapper for the CouchDB Document API (http://wiki.apache.org/couchdb/HTTP_Document_API).
It was created primarily as an exercise to learn CouchDB's document API.
The library attempts to expose a very simple interface that closely resembles REST.

For example,

from cushion import api

c = api.Cushion("http://localhost:5984/albums",
username='abc',
password='xyz'
)
c.get(id='1b0c7bb19b1bbacf7f567bf379000d9c')

returns the following JSON object:

{
'Band': 'The Postal Service',
'_rev':'1-f319aeef4dbb8c232f0257cf2a9ae64b',
'_id': '1b0c7bb19b1bbacf7f567bf379000d9c',
'Name': 'Give Up'
}

alternatively, the database can be specified at runtime,

c = api.Cushion("http://localhost:5984",
username='abc',
password='xyz',
timeout=5
)
c.get.albums(id='1b0c7bb19b1bbacf7f567bf379000d9c')

which also returns:

{
'Band': 'The Postal Service',
'_rev':'1-f319aeef4dbb8c232f0257cf2a9ae64b',
'_id': '1b0c7bb19b1bbacf7f567bf379000d9c',
'Name': 'Give Up'
}

to create a document with a document id:

c.put.albums(id='c3ea09f0-9758-480c-aa25-0f71a9caa446', Name='Transatlanticism', Band='Death Cab For Cutie')

alternatively, to create a document without supplying the document id:

c.post.albums(Name='In Ghost Colors', Band='Cut Copy')

Metadata

Release files for cushion 0.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Built distribution (wheel)

Table of built distributions (wheels) for cushion 0.2
File Interpreter ABI Platform
cushion-0.2-py2.6.egg Legacy Egg format - - Details

Release files / cushion-0.2-py2.6.egg

Download URL cushion-0.2-py2.6.egg
Size 6.5 kB
Tags Egg
SHA-256 checksum
How to use checksums
9d86f90dd1cebc0143595387dbae042ab6e09b4f63de118adfaf241a3f4ace0d
BLAKE2b-256 checksum
How to use checksums
0f0aa7a9fa4d1194a14da156a7e78b25089c900de01c2f8cbe88e3960e1bc186
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release history Release notifications | RSS feed

This release

0.2 This release

1 release file

0.1

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page