module GoogleKnowledgeGraph

Constants

API_URL
VERSION

Attributes

api_key[RW]

Public Class Methods

get(id) click to toggle source
# File lib/google_knowledge_graph.rb, line 13
def get id
  ensure_api_key!
  id.delete_prefix! 'kg:'

  response = request(
    key: api_key,
    limit: 1,
    ids: [id]
  )

  return nil unless response.status.success?
  return nil unless data = JSON.parse(response.body).dig('itemListElement', 0, 'result')

  Entity.new(data)
end

Private Class Methods

ensure_api_key!() click to toggle source
# File lib/google_knowledge_graph.rb, line 49
def ensure_api_key!
  raise StandardError.new('EmptyAPIKey') unless api_key
end
request(params) click to toggle source
# File lib/google_knowledge_graph.rb, line 53
def request params
  HTTP.get API_URL, params: params
end