This is a Ruby interface to the Gandi XML-RPC API.
** this project is no longer maintained **
Add to your Gemfile:
gem'gandi'Then bundle install.
Otherwise
gem install gandiEvery call to the Gandi API is authenticated so sessions are required to have a unique API key. If you don’t have it already, you can retrieve your API key from your Gandi account page.
require'gandi'api=Gandi::Session.new("24-character API key")# Endpoint: https://rpc.gandi.net/xmlrpc/api.domain.listapi.domain.info('mydomain.com')api.catalog.list(product: {type: 'domains'})
...Alongside the production API, Gandi provides an Operational Test and Evaluation (OT&E) system.
require'gandi'api=Gandi::Session.new("24-character API key",env: :test)api.domain.list
...For further information see the Gandi API documention at http://doc.rpc.gandi.net/
When the XMLRPC call returns an error, an exception is raised.
Gandi::DataError is raised if the error is due to faulty user input and Gandi::ServerError is raised if it is caused by a server-side internal error.
All the possible fault codes can be found in Gandi API manual.
Both exceptions contain a Gandi::FaultCode object which stores the object name and the cause of the error:
fault_code=Gandi::FaultCode.parse(505237)# => #<Gandi::FaultCode::Data:...>fault_code.object# => :object_fqdnfault_code.cause# => :cause_badparameter- Fork it
- Create your feature branch (
git checkout -b my-new-feature) - Commit your changes (
git commit -am 'Add some feature') - Push to the branch (
git push origin my-new-feature) - Create new Pull Request