module Nymeria
Nymeria
is our primary module namespace.
Attributes
api_key[RW]
Public Class Methods
bulk_enrich(people)
click to toggle source
# File lib/nymeria.rb, line 92 def self.bulk_enrich(people) people = [people] unless people.is_a?(Array) uri = URI("#{BASE_URL}/bulk-enrich") req = request(Net::HTTP::Post.new(uri)) req.body = JSON.dump({ people: people }) res = Net::HTTP.start(uri.hostname, uri.port, use_ssl: uri.scheme == 'https') do |http| http.request(req) end response = JSON.parse(res.body) # Use an open struct here? OpenStruct.new( success?: response['status'] == 'success', usage: OpenStruct.new(response['usage']), data: response.fetch('data', []).map { |data| OpenStruct.new(data) } ) rescue => e OpenStruct.new( success?: false, error: "#{e}" ) end
check_authentication()
click to toggle source
# File lib/nymeria.rb, line 22 def self.check_authentication uri = URI("#{BASE_URL}/check-authentication") req = request(Net::HTTP::Post.new(uri)) res = Net::HTTP.start(uri.hostname, uri.port, use_ssl: uri.scheme == 'https') do |http| http.request(req) end response = JSON.parse(res.body) # Use an open struct here? OpenStruct.new( success?: response['status'] == 'success', error: response['developer_message'] ) rescue => e OpenStruct.new( success?: false, error: "#{e}" ) end
enrich(url, identifier = '')
click to toggle source
# File lib/nymeria.rb, line 68 def self.enrich(url, identifier = '') uri = URI("#{BASE_URL}/enrich") req = request(Net::HTTP::Post.new(uri)) req.body = JSON.dump({ url: url, identifier: identifier }) res = Net::HTTP.start(uri.hostname, uri.port, use_ssl: uri.scheme == 'https') do |http| http.request(req) end response = JSON.parse(res.body) # Use an open struct here? OpenStruct.new( success?: response['status'] == 'success', usage: OpenStruct.new(response['usage']), data: OpenStruct.new(response['data']) ) rescue => e OpenStruct.new( success?: false, error: "#{e}" ) end
request(req)
click to toggle source
# File lib/nymeria.rb, line 14 def request(req) req['Content-Type'] = 'application/json' req['X-Api-Key'] = api_key req['User-Agent'] = USER_AGENT req end
verify(email)
click to toggle source
# File lib/nymeria.rb, line 44 def self.verify(email) uri = URI("#{BASE_URL}/verify") req = request(Net::HTTP::Post.new(uri)) req.body = JSON.dump({ email: email }) res = Net::HTTP.start(uri.hostname, uri.port, use_ssl: uri.scheme == 'https') do |http| http.request(req) end response = JSON.parse(res.body) # Use an open struct here? OpenStruct.new( success?: response['status'] == 'success', usage: OpenStruct.new(response['usage']), data: OpenStruct.new(response['data']) ) rescue => e OpenStruct.new( success?: false, error: "#{e}" ) end