Action Service – Serving APIs on rails

Action Service provides a way to publish interoperablel web service APIs with Rails without wasting time delving into protocol details.


  • SOAP RPC protocol support

  • Dynamic WSDL generation

  • XML-RPC protocol support

  • Strong type signature hints to improve interoperability with static languages

  • Using Active Record derivatives in return signatures automatically generates a structured type equivalent that can be sent over the wire

Integration with Action Pack

Action Service can be integrated in two different dispatching modes, Direct and Delegated.

  • Direct mode refers to a dispatching mode where one controller represents a single API service, and actions in the controller represent API methods. This is the default mode.

  • Delegated mode refers to a dispatching mode where a controller is a container for one or more API services, and an action on the controller serves as the entry point for an associated service.


Action Service requires that the Action Pack and Active Record are either available to be required immediately or are accessible as GEMs.

It also requires a version of Ruby that includes SOAP support in the standard library. At least version 1.8.2 final (2004-12-25) of Ruby is recommended.


The latest Action Service version can be downloaded from


You can install Action Service with the following command.

% [sudo] ruby setup.rb


Action Service is released under the MIT license.


The Ruby on Rails mailing list

Or, to contact the author, send mail to