Project

epp-ruby

0.0
No release in over 3 years
Low commit activity in last 3 years
Ruby client for communicating with EPP (Extensible Provisioning Protocol) services. Supports domain, contact, and host management with transfer handshake and domain listing.
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
2025
2026
 Dependencies

Runtime

 Project Readme

epp-ruby

Ruby client for communicating with EPP (Extensible Provisioning Protocol) services. Supports domain, contact, and host management including transfer handshake and domain listing.

Maintained fork of railsguru/epp-client with additional features and fixes.

Installation

Add this line to your application's Gemfile:

gem 'epp-ruby'

Or install it yourself:

$ gem install epp-ruby

Usage

require 'epp-ruby'

client = EPP::Client.new('username', 'password', 'epp.server.com')
client.hello

Domain Check

resp  = client.check EPP::Domain::Check.new('example.com', 'example.net')
check = EPP::Domain::CheckResponse.new(resp)
check.available?('example.com') #=> true
check.available?('example.net') #=> false

Domain Info

resp = client.info EPP::Domain::Info.new('example.com')
info = EPP::Domain::InfoResponse.new(resp)
info.name         #=> "example.com"
info.nameservers  #=> [{"name"=>"ns1.example.net"}]

Domain Create

resp = client.create EPP::Domain::Create.new('example.com', period: 1, unit: 'y',
  nameservers: ['ns1.example.net', 'ns2.example.net'],
  registrant: 'contact-id',
  auth_info: 'secret123')
create = EPP::Domain::CreateResponse.new(resp)

Domain Transfer

resp = client.transfer EPP::Domain::Transfer.new('example.com', 'auth-code', op: 'request')

Domain List

resp = client.list EPP::Domain::List.new

Transfer Handshake (Accept/Reject)

resp = client.transfer_handshake EPP::Commands::TransferHandshake.new('example.com', op: 'approve')

Available Commands

  • check — check domain/contact/host availability
  • create — register domains, contacts, or hosts
  • delete — remove domains, contacts, or hosts
  • info — query domain/contact/host details
  • renew — renew domain registration
  • transfer — initiate or query domain transfers
  • transfer_handshake — accept or reject pending transfers
  • update — modify domains, contacts, or hosts
  • poll / ack — poll for and acknowledge messages
  • list — list domains

History

This gem is a maintained fork of epp-client (v2.1.0) by Geoff Garside, which has been inactive since 2014. It adds transfer handshake support, domain listing, improved domain create/renew, and various bug fixes.

License

MIT