Finance::Bitcoin::API - wrapper for the Bitcoin JSON-RPC API
use Finance::Bitcoin::API; my $uri = 'http://user:password@127.0.0.1:8332/'; my $api = Finance::Bitcoin::API->new( endpoint => $uri ); my $balance = $api->call('getbalance'); print $balance;
This module provides a low-level API for accessing a running Bitcoin instance.
new( %args )
Constructor. %args is a hash of named arguments. You need to provide the 'endpoint' URL as an argument.
call( $method, @params )
Call a method. If successful returns the result; otherwise returns undef.
Caveat: The protocol used to communicate with the Bitcoin daemon is JSON-RPC based. JSON differentiates between numbers and strings: "1" and 1 are considered to be different values. Perl (mostly) does not. Thus the JSON module often needs to guess whether a parameter (i.e. an item in @params) is supposed to be a number or a string. If it guesses incorrectly, this may result in the wrong JSON getting sent to the Bitcoin daemon, and the daemon thus returning an error. To persuade JSON to encode a value as a number, add zero to it; to persuade JSON to encode a value as a string, interpolate it. For example:
"1"
1
@params
$api->call( "sendfrom", "$from_adr", # Str "$to_adr", # Str $btc + 0, # Num 6, # literal: perl already knows this is a Num );
endpoint
Get/set the endpoint URL.
jsonrpc
Retrieve a reference to the JSON::RPC::Legacy::Client object being used. In particular $api->jsonrpc->ua can be useful if you need to alter timeouts or HTTP proxy settings.
$api->jsonrpc->ua
error
Returns the error message (if any) that resulted from the last call.
call
Please report any bugs to http://rt.cpan.org/.
Finance::Bitcoin.
http://www.bitcoin.org/.
Toby Inkster <tobyink@cpan.org>.
Copyright 2010, 2011, 2013, 2014 Toby Inkster
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
THIS PACKAGE IS PROVIDED "AS IS" AND WITHOUT ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
To install Finance::Bitcoin, copy and paste the appropriate command in to your terminal.
cpanm
cpanm Finance::Bitcoin
CPAN shell
perl -MCPAN -e shell install Finance::Bitcoin
For more information on module installation, please visit the detailed CPAN module installation guide.