Sha256: d588af729a87859beea16eb5444b3fa46ac4999fba4eb402c63af4ae186e2fc1
Contents?: true
Size: 1.19 KB
Versions: 1
Compression:
Stored size: 1.19 KB
Contents
require 'httparty' module Namecheap SANDBOX = 'https://api.sandbox.namecheap.com/xml.response' PRODUCTION = 'https://api.namecheap.com/xml.response' class Api attr_reader :username, :key, :client_ip def initialize(options = {}) config_file = options[:config_file] || "#{File.dirname(__FILE__)}/../config/namecheap.yml" environment = options[:environment] || ENV['RACK_ENV'] || 'development' config = options[:config_file] || YAML.load_file(config_file)[environment].symbolize_keys! @key = options[:key] || config[:key] @username = options[:username] || config[:username] @client_ip = options[:client_ip] || config[:client_ip] @endpoint = (environment == 'production' ? PRODUCTION : SANDBOX) end protected def api_call(command, command_args) args = {} args['ApiUser'] = args['UserName'] = @username args['ApiKey'] = @key args['ClientIp'] = @client_ip args['Command'] = command query = @endpoint + '?' + args.to_param HTTParty.get(query) end end end $LOAD_PATH.unshift("#{File.dirname(__FILE__)}/namecheap") Dir.glob("#{File.dirname(__FILE__)}/namecheap/*.rb") { |lib| require File.basename(lib, '.*') }
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
namecheap-0.0.2 | lib/namecheap.rb |