KoiosFetcherSubmitterListener

Accessing and processing information stored on the blockchain

Koios provides a query layer which allows your app to access information stored on the blockchain.

Get started:

const koiosProvider = new KoiosProvider('<api|preview|preprod|guild>');

If you are using a privately hosted instance, you can set the URL in the parameter:

const koiosProvider = new KoiosProvider('<KOIOS_URL>');

Choose network for this demo:

fetchAccountInfoFetcher

Fetch account infomation

await koiosProvider.fetchAccountInfo(
  'stake_test1uzx0ksy9f4qnj2mzfdncqyjy84sszh64w43853nug5pedjgytgke9',
)

fetchAddressUtxosFetcher

Fetch UTXOs in the provided address. Optionally, you can filter UTXOs containing a particular asset by providing asset, where it is the concatenation of policy ID and asset.

await koiosProvider.fetchAddressUTxOs(
  'addr_test1vpvx0sacufuypa2k4sngk7q40zc5c4npl337uusdh64kv0c7e4cxr',
  'd9312da562da182b02322fd8acb536f37eb9d29fba7c49dc172555274d657368546f6b656e',
)

fetchAssetAddressesFetcher

Fetch a list of a addresses containing a specific asset where it is the concatenation of policy ID and asset.

await koiosProvider.fetchAssetAddresses(
  'd9312da562da182b02322fd8acb536f37eb9d29fba7c49dc172555274d657368546f6b656e',
)

fetchAssetMetadataFetcher

Fetch the asset metadata by providing asset's unit, which is the concatenation of policy ID and asset name in hex.

await koiosProvider.fetchAssetMetadata(
  'd9312da562da182b02322fd8acb536f37eb9d29fba7c49dc172555274d657368546f6b656e',
)

fetchBlockInfoFetcher

Fetch block infomation. You can get the hash from fetchTxInfo().

await koiosProvider.fetchBlockInfo(
  '79f60880b097ec7dabb81f75f0b52fedf5e922d4f779a11c0c432dcf22c56089',
)

fetchCollectionAssetsFetcher

Fetch a list of assets belonging to a collection by providing its Policy ID.

await koiosProvider.fetchCollectionAssets(
  'd9312da562da182b02322fd8acb536f37eb9d29fba7c49dc17255527', 1,
)

The API will return a list of assets and a cursor next. If the cursor is not null, you can use it to fetch the next page of results. Here is an example of the response.

{
  "assets": [
    {
      "unit": "d9312da562da182b02322fd8acb536f37eb9d29fba7c49dc172555274d657368546f6b656e",
      "quantity": "1"
    },
  ],
  "next": null
}

fetchHandleAddressFetcher

ADA Handle allows users to use a human-readable "Handle" to associate an address.

Each Handle is a unique NFT, minted and issued on the Cardano blockchain. These NFTs act as unique identifiers for the UTXO that they reside in.

Working together with koiosProvider, we can resolve the handle's address with this API.

await koiosProvider.fetchHandleAddress(
  'jingles',
)

Note: if you get an error here, you could be on the wrong network. Change the provider's network at the top of the page.

fetchProtocolParametersFetcher

Fetch the latest protocol parameters. Optionally, you can provide an epoch number to fetch the protocol parameters of that epoch.

await koiosProvider.fetchProtocolParameters(10)

fetchTxInfoFetcher

Fetch transaction infomation. Only confirmed transaction can be retrieved.

await koiosProvider.fetchTxInfo(
  'f4ec9833a3bf95403d395f699bc564938f3419537e7fb5084425d3838a4b6159',
)

submitTxSubmitter

Submit a serialized transaction to the network.

await koiosProvider.submitTx(signedTx)

onTxConfirmedListener

Allow you to listen to a transaction confirmation. Upon confirmation, the callback will be called.

const tx = new Transaction({ initiator: wallet });
tx.sendLovelace('addr_test1vpvx0sacufuypa2k4sngk7q40zc5c4npl337uusdh64kv0c7e4cxr', '5000000');

const unsignedTx = await tx.build();
const signedTx = await wallet.signTx(unsignedTx);
const txHash = await wallet.submitTx(signedTx);

koiosProvider.onTxConfirmed(txHash, () => {
  console.log('Transaction confirmed');
});