-1

I am working with Fireblocks API and when I send multiple transactions one after another, most of them are QUEUED and it seems that Fireblocks is sending transaction requests to Kaleido one by one. Therefore to process 50 transactions it takes around 15 minutes which is way too much for our needs, since we will be sending multiple thousands of transactions in some cases.

Does anyone have any experience with Fireblocks API and how can I fix this?

I am using this endpoint: Fireblocks API Reference - Create transaction

I have also followed this guide: Fireblocks Docs - Creating a transaction

Transactions that go through are successfully confirmed by blockchain. The only issue is Fireblocks QUEUE slowing down the whole process.

Example of submitted transaction model to Fireblocks API (C# object):

CreateTransactionReq transactionRequest = new()
{
  Operation = FireblocksTransactionOperationEnum.TRANSFER,
  AssetId = "CUSTOM_ASSET_ID_REDACTED",
  Source = new Source
  {
    Type = "VAULT_ACCOUNT",
    Id = "25"
  },
  Destination = new Destination
  {
    Type = "VAULT_ACCOUNT",
    Id = "217"
  },
  Note = "",
  Amount = "0.1"
};
TylerH
  • 20,799
  • 66
  • 75
  • 101
Martin Ferenec
  • 57
  • 1
  • 1
  • 9

1 Answers1

1

Fireblocks is using MPC signing which adds a few seconds of overhead to every transaction signed.

Transactions are executed in a FIFO manner to account for dependencies between transactions which is why you are seeing a drift in time.

However, 15 minutes is almost double the time I saw trying to execute 50 transactions (I anonymized some of the data below). The logs are from the receiving end of Fireblocks's web hook.

This is the first interaction, notifying a transaction has been submitted:

Fireblocks.ip - - [23/Apr/2023:21:42:56 +0000] "POST / HTTP/1.1" 200 0 "-" "axios/0.27.2"

This is the last interaction where the 50th transaction was completed:

id: ****UUID4****, status: COMPLETED
Fireblocks.ip - - [23/Apr/2023:21:49:42 +0000] "POST / HTTP/1.1" 200 0 "-" "axios/0.27.2"

You can see they are roughly ±7 minutes apart.

Mat
  • 11
  • 2