Class: Blockr::API

Inherits:
Object
  • Object
show all
Defined in:
lib/blockr/api.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(network: 'btc', api_version: 'v1') ⇒ API

Returns a new instance of API.



7
8
9
10
11
# File 'lib/blockr/api.rb', line 7

def initialize(network:'btc', api_version:'v1')
  @network = network
  @api_version = api_version
  @connection = Connection.new(url)
end

Instance Attribute Details

#api_versionObject (readonly)

Returns the value of attribute api_version.



4
5
6
# File 'lib/blockr/api.rb', line 4

def api_version
  @api_version
end

#networkObject

Returns the value of attribute network.



4
5
6
# File 'lib/blockr/api.rb', line 4

def network
  @network
end

Instance Method Details

#address(address) ⇒ Object



54
55
56
# File 'lib/blockr/api.rb', line 54

def address(address)
  @connection.get("/address/info/#{address}")
end

#address_balance(address) ⇒ Object



58
59
60
# File 'lib/blockr/api.rb', line 58

def address_balance(address)
  @connection.get("/address/balance/#{address}")
end

#address_unconfirmedObject



66
67
68
# File 'lib/blockr/api.rb', line 66

def address_unconfirmed
  @connection.get("/address/unconfirmed/#{address}")
end

#address_unspent_transactions(address, params = nil) ⇒ Object



62
63
64
# File 'lib/blockr/api.rb', line 62

def address_unspent_transactions(address, params=nil)
  @connection.get("/address/unspent/#{address}#{'?' + params.to_param if params}")
end

#block(hash) ⇒ Object



22
23
24
# File 'lib/blockr/api.rb', line 22

def block(hash)
  @connection.get("/block/info/#{hash}")
end

#block_raw(hash) ⇒ Object



26
27
28
# File 'lib/blockr/api.rb', line 26

def block_raw(hash)
  @connection.get("/block/raw/#{hash}")
end

#decode_transaction(hex) ⇒ Object



46
47
48
# File 'lib/blockr/api.rb', line 46

def decode_transaction(hex)
  @connection.post('/tx/decode', hex: hex)
end

#latest_blockObject



30
31
32
# File 'lib/blockr/api.rb', line 30

def latest_block
  block('last')
end

#latest_block_rawObject



34
35
36
# File 'lib/blockr/api.rb', line 34

def latest_block_raw
  block_raw('last')
end

#push_transaction(hex) ⇒ Object



50
51
52
# File 'lib/blockr/api.rb', line 50

def push_transaction(hex)
  @connection.post('/tx/push', hex: hex)
end

#raw_transaction(hash) ⇒ Object



42
43
44
# File 'lib/blockr/api.rb', line 42

def raw_transaction(hash)
  @connection.get("/tx/raw/#{hash}")
end

#transaction(hash) ⇒ Object



38
39
40
# File 'lib/blockr/api.rb', line 38

def transaction(hash)
  @connection.get("/tx/info/#{hash}")
end

#urlObject



13
14
15
# File 'lib/blockr/api.rb', line 13

def url
  "http://#{network}.blockr.io/api/#{api_version}"
end