CRUD through HTTP is a good step forward to using resources and becoming RESTful. Another step further into it is to make use of hypermedia-based services and the Restfulie gem allows you to do it very quickly.
|Tags||RESTful REST rest api|
|Operating Systems||OS Independent|
Release Notes: Atom entries now get a default destroy action if the 'self' link exists. Support was added for is_successful? and much more. A feature list is shown in the Web page. Support for the can? method on the server side was added. Extra headers are supported everywhere. Default controller update is supported. A new sample application was added. A twitter example was added. A render_collection method that supports Atom feeds was added. Custom etag support and cache_info were added. Unmarshalling with child elements that do not exist is supported. Custom behavior is allowed for specific response codes.
Release Notes: A transition creation API is supported. The API was changed to use the acts_as_restfulue block instead of defining following_transitions. Support for the render_resource method was implemented. Automatic support was added for eTag on the client side and for eTag and lastModified on the server side. eTag on the client and server side was documented. render_resource was documented. JSON is working on the client and server sides. The transition DSL was documented.
Release Notes: In this new release, restfulie supports can_*** methods to check if a resource can transition to another state. Data is posted through the HTTP request body. The *status* field requirement was removed (it's optional now). Lots of new documentation was added.
Release Notes: This version supports dynamically creating states and transitions, thus the server side implementation can verify whether transitions are possible or not given the state of your resource. This allows HATEOS work through the resource public API (its links).
Release Notes: This is Restfulie's fist release, with support for server and client side RESTful resource-based Web services support: URL identifiers + HTTP verbs + hypermedia support.