class NearApi::Api
Attributes
config[R]
Public Class Methods
new(config = NearApi.config)
click to toggle source
# File lib/near_api/api.rb, line 4 def initialize(config = NearApi.config) @config = config end
Public Instance Methods
block_hash()
click to toggle source
# File lib/near_api/api.rb, line 55 def block_hash NearApi::Base58.decode(status['sync_info']['latest_block_hash']) end
call(method, payload)
click to toggle source
# File lib/near_api/api.rb, line 8 def call(method, payload) json_rpc(method, payload) end
json_rpc(method, payload)
click to toggle source
# File lib/near_api/api.rb, line 59 def json_rpc(method, payload) json_rpc_payload = { id: 'dontcare', jsonrpc: '2.0', method: method, params: payload } uri = URI.parse(config.node_url) req = Net::HTTP::Post.new(uri.to_s) req.body = json_rpc_payload.to_json req['Content-Type'] = 'application/json' response = Net::HTTP.new(uri.host, uri.port).tap { |http| http.use_ssl = true }.request(req) JSON.parse(response.body) end
nonce(key)
click to toggle source
# File lib/near_api/api.rb, line 51 def nonce(key) view_access_key(key)['result']['nonce'] end
status()
click to toggle source
# File lib/near_api/api.rb, line 12 def status uri = URI("#{config.node_url}/status") JSON.parse(Net::HTTP.get(uri)) end
view_access_key(key, finality: 'optimistic')
click to toggle source
# File lib/near_api/api.rb, line 17 def view_access_key(key, finality: 'optimistic') call( 'query', { "request_type": 'view_access_key', "account_id": key.signer_id, "public_key": NearApi::Base58.encode(key.public_key), "finality": finality } ) end
view_access_key_list(account_id, finality: 'optimistic')
click to toggle source
# File lib/near_api/api.rb, line 29 def view_access_key_list(account_id, finality: 'optimistic') call( 'query', { "request_type": 'view_access_key_list', "account_id": account_id, "finality": finality } ) end
view_account(account_id, finality: 'optimistic')
click to toggle source
# File lib/near_api/api.rb, line 40 def view_account(account_id, finality: 'optimistic') call( 'query', { "request_type": 'view_account', "account_id": account_id, "finality": finality } ) end