Transaction Operator
The transaction operator allows submitting transactions over REST without specifying a nonce. The system will ensure that the next nonce is correctly specified, and that transactions are re-submitted in case of timeouts or other node errors. Submission is idempotent as long as the same transaction id is used.
Usage:
You can use this API with any app wallet credentials that request the eth_sign
scope. (Chain id 1
is mainnet, 4
is rinkeby, etc).
Curl example:
Shell
https://api.bitski.com/v1/eth/chains/1/transactions
Polling for updates:
Transactions are queued and submitted out of band (status will be PENDING
,
SUBMITTED
, or ERROR
). In order to see the status of a submitted transaction,
all transactions can be queried, or a single transaction can be specified by id:
Or by id
Current Limitations:
- Transactions that do not have a high enough gas price will not automatically have the gas price adjusted. So if gas prices spike, the transaction will remain in the queue until prices return to a low enough level. Alternatively, a new transaction can be submitted with that same nonce via the standard JSON RPC api to increase the gas price and flush the transaction through.
- Transactions that cannot be submitted to the mempool could consume a nonce but be stuck getting retried forever. There are many checks to prevent this, but no guarantees.
gas
andgasPrice
are not currently overridden, and must be provided by the caller.