Erlang SDK for Blockfrost.io API.
About • Getting started • Installation • Usage
Erlang SDK for the Blockfrost.io API.
To use this SDK, you first need to log in to blockfrost.io, create your project and retrieve the API token.
The SDK uses rebar3 for project management, hackney
as its HTTP client and jsx for JSON
parsing.
You can either work directly with this repository or add this package as a dependency of your project using
{deps, [
{blockfrost_erlang, "1.0.0"}
]}
To enter a development shell, use nix-shell
.
git clone https://github.com/blockfrost/blockfrost-erlang
cd blockfrost-erlang
nix-shell
rebar3 shell
If you export BLOCKFROST_TOKEN_PATH
environment variable
blockfrost-erlang
will automatically load
and configure network and token:
export BLOCKFROST_TOKEN_PATH=~/.blockfrost.mainnet.token
Then in eshell
:
blockfrost:get_blocks_latest().
{ok, Block} = blockfrost:get_blocks_latest().
Hash = maps:get(<<"hash">>, Block).
TxCount = maps:get(<<"tx_count">>, Block).
io:format("Block ~p tx count: ~p~n", [binary:bin_to_list(Hash), TxCount]).
Alternatively you can use setup/1
function
which accepts a project string, for example
blockfrost:setup("mainnet1A2B3C4D5E6F7G8H9I0J1K2L3M4N5O6P").
Simple IPFS
upload example of a raw string:
blockfrost:post_ipfs_add({multipart, [{<<"Filename">>, <<"Hello Erlang">>}]}).
See hackney documentation
for more examples of multipart
payload format.
Export a token
export BLOCKFROST_TOKEN_PATH=~/.blockfrost.mainnet.token
and run
rebar3 eunit
Run rebar3 dialyzer
Run rebar3 nix lock