Savon

Heavy metal Ruby SOAP client

Guide | Rubydoc | Google Group | Wishlist | Bugs

Installation

Savon is available through Rubygems and can be installed via:

$ gem install savon

Basic workflow

# Setting up a Savon::Client representing a SOAP service.
client = Savon::Client.new do
  wsdl.document = "http://service.example.com?wsdl"
end

client.wsdl.soap_actions
# => [:create_user, :get_user, :get_all_users]

# Executing a SOAP request to call a "getUser" action.
response = client.request :get_user do
  soap.body = { :id => 1 }
end

response.to_hash
# => { :get_user_response => { :first_name => "The", :last_name => "Hoff" } }

Excited to learn more?

Then you might want to go ahead and read the Savon Guide.