RESTClient is a simple, Python + wxWidgets Desktop application for talking to RESTful web services. It is designed to fill a gap in existing offerings by offering support for GET/POST/PUT/DELETE, making it a useful tool when exploring RESTful web services which use a wider range of HTTP verbs.

REST is cool. Playing with REST servers is hard. RESTClient seeks to make working with REST servers for demos and the like more easy. This client was created at Dev House Boston 3.

Everyone knows how to fetch data from a RESTful service -- you just plop the URL into your browser, and you're done. This is good. But this isn't the only thing REST is about. When creating data with a RESTful service, you need to be able to POST or PUT arbitrary data, and send DELETE commands to URLs as well. Browsers are ill-suited for this task -- although it is possible to send these requests in code in a browser, the Same Origin Policy limits the utility of these functions for interacting with remote services.

RESTClient aims to fill this gap. By allowing you to enter *any* URL and POST/PUT/DELETE to it, you can move data around more easily. By providing a simple user interface for copy pasting data, you can fetch data from one source, copy it, change your URL and post the data to another source.

RESTClient is a useful alternative to `curl` when dealing with large datasets, providing a friendly user interface allowing easy copy and paste for testing of services. This is primarily designed as a developer tool, but may also be more friendly for demonstrating REST than curl.

Things that RESTClient might be good for:

Missing features: Digest Authentication, redirect following, switch to urllib2, many more.

Get the Code. Requires wxPython to run (Changelog)

Demo Video

(download the flv video)

Get the Flash Player to see this player.