Skip to content
This repository was archived by the owner on Nov 19, 2024. It is now read-only.

Commit 2cd44a4

Browse files
committed
Deprecating the Bitcoin API of the management canister.
1 parent bed36d9 commit 2cd44a4

File tree

1 file changed

+28
-2
lines changed

1 file changed

+28
-2
lines changed

spec/index.md

Lines changed: 28 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2632,10 +2632,18 @@ Replica-signed queries may improve security because the recipient can verify the
26322632

26332633
## The IC Bitcoin API {#ic-bitcoin-api}
26342634

2635-
The Bitcoin functionality is exposed via the management canister. Information about Bitcoin can be found in the [Bitcoin developer guides](https://developer.bitcoin.org/devguide/). Invoking the functions of the Bitcoin API will cost cycles. We refer the reader to the [Bitcoin documentation](https://internetcomputer.org/docs/current/developer-docs/integrations/bitcoin/bitcoin-how-it-works) for further relevant information and the [IC pricing page](https://internetcomputer.org/docs/current/developer-docs/gas-cost) for information on pricing for the Bitcoin mainnet and testnet.
2635+
The Bitcoin API exposed by the management canister is DEPRECATED.
2636+
Developers should interact with the Bitcoin canisters (`ghsi2-tqaaa-aaaan-aaaca-cai` for Bitcoin mainnet and `g4xu7-jiaaa-aaaan-aaaaq-cai` for Bitcoin testnet) directly.
2637+
Information about Bitcoin and the IC Bitcoin integration can be found in the [Bitcoin developer guides](https://developer.bitcoin.org/devguide/) and the [Bitcoin integration documentation](https://internetcomputer.org/docs/current/developer-docs/integrations/bitcoin/bitcoin-how-it-works).
26362638

26372639
### IC method `bitcoin_get_utxos` {#ic-bitcoin_get_utxos}
26382640

2641+
:::note
2642+
2643+
This method is DEPRECATED. Canister developers are advised to call the method of the same name on the Bitcoin (mainnet or testnet) canister.
2644+
2645+
:::
2646+
26392647
This method can only be called by canisters, i.e., it cannot be called by external users via ingress messages.
26402648

26412649
Given a `get_utxos_request`, which must specify a Bitcoin address and a Bitcoin network (`mainnet` or `testnet`), the function returns all unspent transaction outputs (UTXOs) associated with the provided address in the specified Bitcoin network based on the current view of the Bitcoin blockchain available to the Bitcoin component. The UTXOs are returned sorted by block height in descending order.
@@ -2670,6 +2678,12 @@ The recommended workflow is to issue a request with the desired number of confir
26702678

26712679
### IC method `bitcoin_get_balance` {#ic-bitcoin_get_balance}
26722680

2681+
:::note
2682+
2683+
This method is DEPRECATED. Canister developers are advised to call the method of the same name on the Bitcoin (mainnet or testnet) canister.
2684+
2685+
:::
2686+
26732687
This method can only be called by canisters, i.e., it cannot be called by external users via ingress messages.
26742688

26752689
Given a `get_balance_request`, which must specify a Bitcoin address and a Bitcoin network (`mainnet` or `testnet`), the function returns the current balance of this address in `Satoshi` (10^8 Satoshi = 1 Bitcoin) in the specified Bitcoin network. The same address formats as for [`bitcoin_get_utxos`](#ic-bitcoin_get_utxos) are supported.
@@ -2682,6 +2696,12 @@ Given an address and the optional `min_confirmations` parameter, `bitcoin_get_ba
26822696

26832697
### IC method `bitcoin_send_transaction` {#ic-bitcoin_send_transaction}
26842698

2699+
:::note
2700+
2701+
This method is DEPRECATED. Canister developers are advised to call the method of the same name on the Bitcoin (mainnet or testnet) canister.
2702+
2703+
:::
2704+
26852705
This method can only be called by canisters, i.e., it cannot be called by external users via ingress messages.
26862706

26872707
Given a `send_transaction_request`, which must specify a `blob` of a Bitcoin transaction and a Bitcoin network (`mainnet` or `testnet`), several checks are performed:
@@ -2698,6 +2718,12 @@ If the transaction passes these tests, the transaction is forwarded to the speci
26982718

26992719
### IC method `bitcoin_get_current_fee_percentiles` {#ic-bitcoin_get_current_fee_percentiles}
27002720

2721+
:::note
2722+
2723+
This method is DEPRECATED. Canister developers are advised to call the method of the same name on the Bitcoin (mainnet or testnet) canister.
2724+
2725+
:::
2726+
27012727
This method can only be called by canisters, i.e., it cannot be called by external users via ingress messages.
27022728

27032729
The transaction fees in the Bitcoin network change dynamically based on the number of pending transactions. It must be possible for a canister to determine an adequate fee when creating a Bitcoin transaction.
@@ -2710,7 +2736,7 @@ The [standard nearest-rank estimation method](https://en.wikipedia.org/wiki/Perc
27102736

27112737
:::note
27122738

2713-
The `bitcoin_get_block_headers` endpoint is considered EXPERIMENTAL. Canister developers must be aware that this endpoint may evolve in a non-backward-compatible way.
2739+
This method is DEPRECATED. Canister developers are advised to call the method of the same name on the Bitcoin (mainnet or testnet) canister.
27142740

27152741
:::
27162742

0 commit comments

Comments
 (0)