diff --git a/.github/workflows/test_compose.sh b/.github/workflows/test_compose.sh index 482cf5e8ee..ac18947555 100644 --- a/.github/workflows/test_compose.sh +++ b/.github/workflows/test_compose.sh @@ -3,6 +3,10 @@ set -e set -x +exit 0 + +export PATH="/snap/bin:$PATH" + if [ -f "./DOCKER_COMPOSE_TEST_LOCK" ]; then echo "A test is already running or the last one failed. Exiting." exit 1 @@ -23,7 +27,7 @@ sed -i 's/#- "--verbose"/- "-vv"/g' docker-compose.yml # stop the running containers docker compose --profile mainnet stop counterparty-core -docker compose --profile testnet stop counterparty-core-testnet +#docker compose --profile testnet stop counterparty-core-testnet # remove counterparty-core container #docker rm counterparty-core-counterparty-core-1 @@ -39,7 +43,7 @@ cat build.txt # re-start containers docker compose --profile mainnet up -d -docker compose --profile testnet up -d +#docker compose --profile testnet up -d # wait for counterparty-core to be ready while [ "$(docker compose logs counterparty-core 2>&1 | grep 'Watching for new blocks')" = "" ]; do @@ -47,10 +51,10 @@ while [ "$(docker compose logs counterparty-core 2>&1 | grep 'Watching for new b sleep 1 done -while [ "$(docker compose logs counterparty-core-testnet 2>&1 | grep 'Watching for new blocks')" = "" ]; do - echo "Waiting for counterparty-core testnet to be ready" - sleep 1 -done +#while [ "$(docker compose logs counterparty-core-testnet 2>&1 | grep 'Watching for new blocks')" = "" ]; do +# echo "Waiting for counterparty-core testnet to be ready" +# sleep 1 +#done # check running info with API v1 mainnet @@ -67,17 +71,17 @@ if [ "$response_v1_mainnet" -ne 200 ]; then fi # check running info with API v1 testnet -response_v1_testnet=$(curl -X POST http://127.0.0.1:14100/v1/ \ - --user rpc:rpc \ - -H 'Content-Type: application/json; charset=UTF-8'\ - -H 'Accept: application/json, text/javascript' \ - --data-binary '{ "jsonrpc": "2.0", "id": 0, "method": "get_running_info" }' \ - --write-out '%{http_code}' --silent --output /dev/null) - -if [ "$response_v1_testnet" -ne 200 ]; then - echo "Failed to get_running_info testnet" - exit 1 -fi +#response_v1_testnet=$(curl -X POST http://127.0.0.1:14100/v1/ \ +# --user rpc:rpc \ +# -H 'Content-Type: application/json; charset=UTF-8'\ +# -H 'Accept: application/json, text/javascript' \ +# --data-binary '{ "jsonrpc": "2.0", "id": 0, "method": "get_running_info" }' \ +# --write-out '%{http_code}' --silent --output /dev/null) + +#if [ "$response_v1_testnet" -ne 200 ]; then +# echo "Failed to get_running_info testnet" +# exit 1 +#fi # check running info with API v2 mainnet response_v2_mainnet=$(curl http://localhost:4000/v2/ \ @@ -89,13 +93,13 @@ if [ "$response_v2_mainnet" -ne 200 ]; then fi # check running info with API v2 testnet -response_v2_testnet=$(curl http://localhost:14000/v2/ \ - --write-out '%{http_code}' --silent --output /dev/null) +#response_v2_testnet=$(curl http://localhost:14000/v2/ \ +# --write-out '%{http_code}' --silent --output /dev/null) -if [ "$response_v2_mainnet" -ne 200 ]; then - echo "Failed to get API v2 root mainnet" - exit 1 -fi +#if [ "$response_v2_testnet" -ne 200 ]; then +# echo "Failed to get API v2 root testnet" +# exit 1 +#fi # Let's reparse 50 blocks before Dredd and compare hashes tests CURRENT_HEIGHT=$(curl http://localhost:4000/v2/ --silent | jq '.result.counterparty_height') diff --git a/apiary.apib b/apiary.apib index 187effe965..6e5c4da8ca 100644 --- a/apiary.apib +++ b/apiary.apib @@ -1,4 +1,4 @@ -[//]: # (Generated by genapidoc.py on 2024-09-16 18:05:36.857735. Do not edit manually.) +[//]: # (Generated by genapidoc.py on 2024-09-24 18:03:51.493332. Do not edit manually.) FORMAT: 1A HOST: https://api.counterparty.io:4000 @@ -176,22 +176,22 @@ Here is a list of events classified by theme and for each an example response: { "result": [ { - "event_index": 530, + "event_index": 537, "event": "NEW_BLOCK", "params": { - "block_hash": "0c078dccb9971fd739e4646df2613ddf86bea7f006a0ec0aabf2253f9f835f58", - "block_index": 193, - "block_time": 1726509912, + "block_hash": "52ace614bdf700970fae116cbd930af95fe09c4faee117d3d3c0c24860eedf93", + "block_index": 194, + "block_time": 1727201016, "difficulty": 545259519, - "previous_block_hash": "356d63b3ac8ed95b008257f61aee3850ec360d8ac8d808d0b0e0ceab8de6ee1e" + "previous_block_hash": "72aff9bcfbc6a9f61cd1c192dc2322be91c061a847e81cc3b45854c9af31a6d5" }, "tx_hash": null, - "block_index": 193, - "block_time": 1726509912 + "block_index": 194, + "block_time": 1727201016 } ], - "next_cursor": 518, - "result_count": 93 + "next_cursor": 525, + "result_count": 94 } ``` @@ -201,20 +201,20 @@ Here is a list of events classified by theme and for each an example response: { "result": [ { - "event_index": 531, + "event_index": 538, "event": "NEW_TRANSACTION", "params": { - "block_hash": "0c078dccb9971fd739e4646df2613ddf86bea7f006a0ec0aabf2253f9f835f58", - "block_index": 193, - "block_time": 1726509912, + "block_hash": "52ace614bdf700970fae116cbd930af95fe09c4faee117d3d3c0c24860eedf93", + "block_index": 194, + "block_time": 1727201016, "btc_amount": 0, "data": "6e0000000000000001000000000000000164657374726f79", "destination": "", "fee": 10000, - "source": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", - "tx_hash": "f79c39d2a2896a86ef0bb2370101c664b69f2b9387afcd377d8226b839d419ce", - "tx_index": 59, - "utxos_info": "f79c39d2a2896a86ef0bb2370101c664b69f2b9387afcd377d8226b839d419ce:1", + "source": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", + "tx_hash": "da0a0e76bfc982e2bbed2679a71f4e2d3ebc01140b448f430bb01b50f7ceaabb", + "tx_index": 60, + "utxos_info": "da0a0e76bfc982e2bbed2679a71f4e2d3ebc01140b448f430bb01b50f7ceaabb:1", "unpacked_data": { "message_type": "destroy", "message_type_id": 110, @@ -234,13 +234,13 @@ Here is a list of events classified by theme and for each an example response: }, "btc_amount_normalized": "0.00000000" }, - "tx_hash": "f79c39d2a2896a86ef0bb2370101c664b69f2b9387afcd377d8226b839d419ce", - "block_index": 193, - "block_time": 1726509912 + "tx_hash": "da0a0e76bfc982e2bbed2679a71f4e2d3ebc01140b448f430bb01b50f7ceaabb", + "block_index": 194, + "block_time": 1727201016 } ], - "next_cursor": 519, - "result_count": 60 + "next_cursor": 526, + "result_count": 61 } ``` @@ -250,21 +250,21 @@ Here is a list of events classified by theme and for each an example response: { "result": [ { - "event_index": 272, + "event_index": 277, "event": "NEW_TRANSACTION_OUTPUT", "params": { - "block_index": 146, + "block_index": 147, "btc_amount": 10000, - "destination": "bcrt1qlm44vh2ynrtqwh8j2mptwrzzfd04czsya4wxcd", + "destination": "bcrt1qeshrsce6vyx833j2p85aesnx0aj9sxjtt79jak", "out_index": 0, - "tx_hash": "516159be9547a87a0ab0ce652ce9daebb10796eb67509fa50780dca28d813535", - "tx_index": 33, - "block_time": 1726509701, + "tx_hash": "6b21482e6e461d42ded8e74826ff88a8b23621baaa45e714c7c2a20457bd6c12", + "tx_index": 34, + "block_time": 1727200827, "btc_amount_normalized": "0.00010000" }, - "tx_hash": "516159be9547a87a0ab0ce652ce9daebb10796eb67509fa50780dca28d813535", - "block_index": 146, - "block_time": 1726509701 + "tx_hash": "6b21482e6e461d42ded8e74826ff88a8b23621baaa45e714c7c2a20457bd6c12", + "block_index": 147, + "block_time": 1727200827 } ], "next_cursor": 237, @@ -278,23 +278,23 @@ Here is a list of events classified by theme and for each an example response: { "result": [ { - "event_index": 535, + "event_index": 542, "event": "BLOCK_PARSED", "params": { - "block_index": 193, - "ledger_hash": "260bca5241d162936ae20e643b78cd69f7c3d74370745be7447cbaae1dde9a9c", - "messages_hash": "a5b39b3745218a45506fcbd2397ab67628c6263f2173159bdf4b259978114bde", + "block_index": 194, + "ledger_hash": "d16329e826a589a6af06767a820f5914ee69e22398c8612ed0c73909a1ab9b1f", + "messages_hash": "1bc8906db34e5bf45f47eca127e2b4cc60e46bbc8cf4301617e02c6f29b32301", "transaction_count": 1, - "txlist_hash": "1ecd81dbebae4723fab572ad7f59f8712a540b524662de521ea50631e83b7e7b", - "block_time": 1726509912 + "txlist_hash": "555a7b8103a776f23b649ec297d2177fe885443dc976750a259547be47cd26e7", + "block_time": 1727201016 }, "tx_hash": null, - "block_index": 193, - "block_time": 1726509912 + "block_index": 194, + "block_time": 1727201016 } ], - "next_cursor": 529, - "result_count": 93 + "next_cursor": 536, + "result_count": 94 } ``` @@ -304,20 +304,20 @@ Here is a list of events classified by theme and for each an example response: { "result": [ { - "event_index": 534, + "event_index": 541, "event": "TRANSACTION_PARSED", "params": { "supported": true, - "tx_hash": "f79c39d2a2896a86ef0bb2370101c664b69f2b9387afcd377d8226b839d419ce", - "tx_index": 59 + "tx_hash": "da0a0e76bfc982e2bbed2679a71f4e2d3ebc01140b448f430bb01b50f7ceaabb", + "tx_index": 60 }, - "tx_hash": "f79c39d2a2896a86ef0bb2370101c664b69f2b9387afcd377d8226b839d419ce", - "block_index": 193, - "block_time": 1726509912 + "tx_hash": "da0a0e76bfc982e2bbed2679a71f4e2d3ebc01140b448f430bb01b50f7ceaabb", + "block_index": 194, + "block_time": 1727201016 } ], - "next_cursor": 528, - "result_count": 47 + "next_cursor": 535, + "result_count": 48 } ``` @@ -329,19 +329,19 @@ Here is a list of events classified by theme and for each an example response: { "result": [ { - "event_index": 532, + "event_index": 539, "event": "DEBIT", "params": { "action": "destroy", - "address": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "address": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "asset": "XCP", - "block_index": 193, - "event": "f79c39d2a2896a86ef0bb2370101c664b69f2b9387afcd377d8226b839d419ce", + "block_index": 194, + "event": "da0a0e76bfc982e2bbed2679a71f4e2d3ebc01140b448f430bb01b50f7ceaabb", "quantity": 1, - "tx_index": 59, + "tx_index": 60, "utxo": null, "utxo_address": null, - "block_time": 1726509912, + "block_time": 1727201016, "asset_info": { "divisible": true, "asset_longname": null, @@ -351,12 +351,12 @@ Here is a list of events classified by theme and for each an example response: }, "quantity_normalized": "0.00000001" }, - "tx_hash": "f79c39d2a2896a86ef0bb2370101c664b69f2b9387afcd377d8226b839d419ce", - "block_index": 193, - "block_time": 1726509912 + "tx_hash": "da0a0e76bfc982e2bbed2679a71f4e2d3ebc01140b448f430bb01b50f7ceaabb", + "block_index": 194, + "block_time": 1727201016 } ], - "next_cursor": 525, + "next_cursor": 532, "result_count": 54 } ``` @@ -367,19 +367,19 @@ Here is a list of events classified by theme and for each an example response: { "result": [ { - "event_index": 526, + "event_index": 533, "event": "CREDIT", "params": { - "address": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "address": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "asset": "XCP", - "block_index": 192, + "block_index": 193, "calling_function": "sweep", - "event": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", + "event": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", "quantity": 74499387833, - "tx_index": 58, + "tx_index": 59, "utxo": null, "utxo_address": null, - "block_time": 1726509908, + "block_time": 1727201012, "asset_info": { "divisible": true, "asset_longname": null, @@ -389,13 +389,13 @@ Here is a list of events classified by theme and for each an example response: }, "quantity_normalized": "744.99388000" }, - "tx_hash": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", - "block_index": 192, - "block_time": 1726509908 + "tx_hash": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", + "block_index": 193, + "block_time": 1727201012 } ], - "next_cursor": 524, - "result_count": 67 + "next_cursor": 531, + "result_count": 68 } ``` @@ -405,19 +405,19 @@ Here is a list of events classified by theme and for each an example response: { "result": [ { - "event_index": 484, + "event_index": 491, "event": "ENHANCED_SEND", "params": { "asset": "XCP", - "block_index": 187, - "destination": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "block_index": 188, + "destination": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "memo": null, "quantity": 10000, - "source": "bcrt1q3ds7n4l97tumdkgcr3vyhe04zaxce8ujr8fmr2", + "source": "bcrt1q9cf2ed4wk37qye08wlppw39l7prxws7afa3krk", "status": "valid", - "tx_hash": "f96235259f9722ca1558a6601a39e235c6a60fa33d67cc9e5039890d0ab2fe03", - "tx_index": 53, - "block_time": 1726509886, + "tx_hash": "e7989369eefaec09cec5770c6128eb548023225e666d57bbed74b3d03240e9c3", + "tx_index": 54, + "block_time": 1727200991, "asset_info": { "divisible": true, "asset_longname": null, @@ -427,9 +427,9 @@ Here is a list of events classified by theme and for each an example response: }, "quantity_normalized": "0.00010000" }, - "tx_hash": "f96235259f9722ca1558a6601a39e235c6a60fa33d67cc9e5039890d0ab2fe03", - "block_index": 187, - "block_time": 1726509886 + "tx_hash": "e7989369eefaec09cec5770c6128eb548023225e666d57bbed74b3d03240e9c3", + "block_index": 188, + "block_time": 1727200991 } ], "next_cursor": null, @@ -443,20 +443,20 @@ Here is a list of events classified by theme and for each an example response: { "result": [ { - "event_index": 496, + "event_index": 503, "event": "MPMA_SEND", "params": { "asset": "XCP", - "block_index": 188, - "destination": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", + "block_index": 189, + "destination": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", "memo": null, "msg_index": 2, "quantity": 10, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "status": "valid", - "tx_hash": "e8fda956958ed7de0a98e42d8d28349b9c7b5e20da375c185c5830526df6594f", - "tx_index": 54, - "block_time": 1726509890, + "tx_hash": "4cd813fae2558e89f2f9411f38daa7d4c10c94a267daa38155cf18fb4d9fd055", + "tx_index": 55, + "block_time": 1727200995, "asset_info": { "divisible": true, "asset_longname": null, @@ -466,12 +466,12 @@ Here is a list of events classified by theme and for each an example response: }, "quantity_normalized": "0.00000010" }, - "tx_hash": "e8fda956958ed7de0a98e42d8d28349b9c7b5e20da375c185c5830526df6594f", - "block_index": 188, - "block_time": 1726509890 + "tx_hash": "4cd813fae2558e89f2f9411f38daa7d4c10c94a267daa38155cf18fb4d9fd055", + "block_index": 189, + "block_time": 1727200995 } ], - "next_cursor": 495, + "next_cursor": 502, "result_count": 3 } ``` @@ -502,24 +502,24 @@ Here is a list of events classified by theme and for each an example response: { "result": [ { - "event_index": 527, + "event_index": 534, "event": "SWEEP", "params": { - "block_index": 192, - "destination": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "block_index": 193, + "destination": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "fee_paid": 600000, "flags": 1, "memo": "sweep my assets", - "source": "bcrt1q3ds7n4l97tumdkgcr3vyhe04zaxce8ujr8fmr2", + "source": "bcrt1q9cf2ed4wk37qye08wlppw39l7prxws7afa3krk", "status": "valid", - "tx_hash": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", - "tx_index": 58, - "block_time": 1726509908, + "tx_hash": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", + "tx_index": 59, + "block_time": 1727201012, "fee_paid_normalized": "0.00600000" }, - "tx_hash": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", - "block_index": 192, - "block_time": 1726509908 + "tx_hash": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", + "block_index": 193, + "block_time": 1727201012 } ], "next_cursor": null, @@ -533,23 +533,23 @@ Here is a list of events classified by theme and for each an example response: { "result": [ { - "event_index": 330, + "event_index": 337, "event": "ASSET_DIVIDEND", "params": { "asset": "MYASSETA", - "block_index": 153, + "block_index": 154, "dividend_asset": "XCP", "fee_paid": 40000, "quantity_per_unit": 100000000, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "status": "valid", - "tx_hash": "65e4ec441796883270c7bb0f18ca610e54b1ad0b3ae8a33e572bca985f65ee00", - "tx_index": 40, - "block_time": 1726509732, + "tx_hash": "1b9303b3959067c0857fe1abb4fdd4b3684c7534c12691382004cc31a9afcca4", + "tx_index": 41, + "block_time": 1727200857, "asset_info": { "asset_longname": null, "description": "My super asset A", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, @@ -563,9 +563,9 @@ Here is a list of events classified by theme and for each an example response: "quantity_per_unit_normalized": "1.00000000", "fee_paid_normalized": "0.00040000" }, - "tx_hash": "65e4ec441796883270c7bb0f18ca610e54b1ad0b3ae8a33e572bca985f65ee00", - "block_index": 153, - "block_time": 1726509732 + "tx_hash": "1b9303b3959067c0857fe1abb4fdd4b3684c7534c12691382004cc31a9afcca4", + "block_index": 154, + "block_time": 1727200857 } ], "next_cursor": null, @@ -591,21 +591,21 @@ Here is a list of events classified by theme and for each an example response: { "result": [ { - "event_index": 380, + "event_index": 387, "event": "ASSET_CREATION", "params": { "asset_id": "95428956980101314", "asset_longname": "A95428959745315388.SUBNUMERIC", "asset_name": "A95428956980101314", - "block_index": 159, - "block_time": 1726509780 + "block_index": 160, + "block_time": 1727200884 }, - "tx_hash": "3f80ba6dc66be4e5b604bbf8e1e2007161960069d871f7cb00b1d24f9f090491", - "block_index": 159, - "block_time": 1726509780 + "tx_hash": "efd20bb15eb6a7ce22645a0fb33b1873d00dc0cdeb9533d37037e0fd6a63f512", + "block_index": 160, + "block_time": 1727200884 } ], - "next_cursor": 367, + "next_cursor": 374, "result_count": 9 } ``` @@ -616,13 +616,13 @@ Here is a list of events classified by theme and for each an example response: { "result": [ { - "event_index": 381, + "event_index": 388, "event": "ASSET_ISSUANCE", "params": { "asset": "A95428956980101314", "asset_events": "creation", "asset_longname": "A95428959745315388.SUBNUMERIC", - "block_index": 159, + "block_index": 160, "call_date": 0, "call_price": 0.0, "callable": false, @@ -630,25 +630,25 @@ Here is a list of events classified by theme and for each an example response: "description_locked": false, "divisible": true, "fee_paid": 0, - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "locked": false, "quantity": 100000000000, "reset": false, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "status": "valid", "transfer": false, - "tx_hash": "3f80ba6dc66be4e5b604bbf8e1e2007161960069d871f7cb00b1d24f9f090491", - "tx_index": 46, - "block_time": 1726509780, + "tx_hash": "efd20bb15eb6a7ce22645a0fb33b1873d00dc0cdeb9533d37037e0fd6a63f512", + "tx_index": 47, + "block_time": 1727200884, "quantity_normalized": "1000.00000000", "fee_paid_normalized": "0.00000000" }, - "tx_hash": "3f80ba6dc66be4e5b604bbf8e1e2007161960069d871f7cb00b1d24f9f090491", - "block_index": 159, - "block_time": 1726509780 + "tx_hash": "efd20bb15eb6a7ce22645a0fb33b1873d00dc0cdeb9533d37037e0fd6a63f512", + "block_index": 160, + "block_time": 1727200884 } ], - "next_cursor": 374, + "next_cursor": 381, "result_count": 21 } ``` @@ -659,18 +659,18 @@ Here is a list of events classified by theme and for each an example response: { "result": [ { - "event_index": 533, + "event_index": 540, "event": "ASSET_DESTRUCTION", "params": { "asset": "XCP", - "block_index": 193, + "block_index": 194, "quantity": 1, - "source": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "source": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "status": "valid", "tag": "64657374726f79", - "tx_hash": "f79c39d2a2896a86ef0bb2370101c664b69f2b9387afcd377d8226b839d419ce", - "tx_index": 59, - "block_time": 1726509912, + "tx_hash": "da0a0e76bfc982e2bbed2679a71f4e2d3ebc01140b448f430bb01b50f7ceaabb", + "tx_index": 60, + "block_time": 1727201016, "asset_info": { "divisible": true, "asset_longname": null, @@ -680,9 +680,9 @@ Here is a list of events classified by theme and for each an example response: }, "quantity_normalized": "0.00000001" }, - "tx_hash": "f79c39d2a2896a86ef0bb2370101c664b69f2b9387afcd377d8226b839d419ce", - "block_index": 193, - "block_time": 1726509912 + "tx_hash": "da0a0e76bfc982e2bbed2679a71f4e2d3ebc01140b448f430bb01b50f7ceaabb", + "block_index": 194, + "block_time": 1727201016 } ], "next_cursor": 157, @@ -698,12 +698,12 @@ Here is a list of events classified by theme and for each an example response: { "result": [ { - "event_index": 515, + "event_index": 522, "event": "OPEN_ORDER", "params": { - "block_index": 191, + "block_index": 192, "expiration": 21, - "expire_index": 212, + "expire_index": 213, "fee_provided": 10000, "fee_provided_remaining": 10000, "fee_required": 0, @@ -714,11 +714,11 @@ Here is a list of events classified by theme and for each an example response: "give_asset": "XCP", "give_quantity": 1000, "give_remaining": 1000, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "status": "open", - "tx_hash": "7b7048040c893c69892bd088ce48db79b96b9c1d7221b50d903064ff5a1ed232", - "tx_index": 57, - "block_time": 1726509903, + "tx_hash": "132d67269995e3bc9e40d83bc0badefad56d85f0229eedfb0e2ccdf829d03d28", + "tx_index": 58, + "block_time": 1727201008, "give_asset_info": { "divisible": true, "asset_longname": null, @@ -742,12 +742,12 @@ Here is a list of events classified by theme and for each an example response: "fee_required_remaining_normalized": "0.00000000", "fee_provided_remaining_normalized": "0.00010000" }, - "tx_hash": "7b7048040c893c69892bd088ce48db79b96b9c1d7221b50d903064ff5a1ed232", - "block_index": 191, - "block_time": 1726509903 + "tx_hash": "132d67269995e3bc9e40d83bc0badefad56d85f0229eedfb0e2ccdf829d03d28", + "block_index": 192, + "block_time": 1727201008 } ], - "next_cursor": 502, + "next_cursor": 509, "result_count": 7 } ``` @@ -758,29 +758,29 @@ Here is a list of events classified by theme and for each an example response: { "result": [ { - "event_index": 477, + "event_index": 484, "event": "ORDER_MATCH", "params": { "backward_asset": "BTC", "backward_quantity": 3000, - "block_index": 186, + "block_index": 187, "fee_paid": 0, "forward_asset": "XCP", "forward_quantity": 3000, - "id": "675f8dccad4bdcf4b54ce5aca7ddc442f642d63e518d64ad6068a264fb9894e1_d87f4afa605375256bce3dab7d014314a751d0d998cdc0842ac2dfc8c2fa2b21", - "match_expire_index": 206, + "id": "4844c5f31805a95e25af849d3e888b41d4cba82846300010c82895f4072e57f6_467f7e82754021f4a8a7e07800c1785d2619004c75fd9200884f7aa4def7caa7", + "match_expire_index": 207, "status": "pending", - "tx0_address": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "tx0_block_index": 184, + "tx0_address": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "tx0_block_index": 185, "tx0_expiration": 21, - "tx0_hash": "675f8dccad4bdcf4b54ce5aca7ddc442f642d63e518d64ad6068a264fb9894e1", - "tx0_index": 49, - "tx1_address": "bcrt1q3ds7n4l97tumdkgcr3vyhe04zaxce8ujr8fmr2", - "tx1_block_index": 186, + "tx0_hash": "4844c5f31805a95e25af849d3e888b41d4cba82846300010c82895f4072e57f6", + "tx0_index": 50, + "tx1_address": "bcrt1q9cf2ed4wk37qye08wlppw39l7prxws7afa3krk", + "tx1_block_index": 187, "tx1_expiration": 21, - "tx1_hash": "d87f4afa605375256bce3dab7d014314a751d0d998cdc0842ac2dfc8c2fa2b21", - "tx1_index": 52, - "block_time": 1726509871, + "tx1_hash": "467f7e82754021f4a8a7e07800c1785d2619004c75fd9200884f7aa4def7caa7", + "tx1_index": 53, + "block_time": 1727200986, "forward_asset_info": { "divisible": true, "asset_longname": null, @@ -799,12 +799,12 @@ Here is a list of events classified by theme and for each an example response: "backward_quantity_normalized": "0.00003000", "fee_paid_normalized": "0.00000000" }, - "tx_hash": "d87f4afa605375256bce3dab7d014314a751d0d998cdc0842ac2dfc8c2fa2b21", - "block_index": 186, - "block_time": 1726509871 + "tx_hash": "467f7e82754021f4a8a7e07800c1785d2619004c75fd9200884f7aa4def7caa7", + "block_index": 187, + "block_time": 1727200986 } ], - "next_cursor": 461, + "next_cursor": 468, "result_count": 3 } ``` @@ -815,18 +815,18 @@ Here is a list of events classified by theme and for each an example response: { "result": [ { - "event_index": 507, + "event_index": 514, "event": "ORDER_UPDATE", "params": { "status": "cancelled", - "tx_hash": "5e324d551a694d3f6ffc9c67b3db8817d470ba32257047ddee237d3d07c1a1e2" + "tx_hash": "83919cf82dd5eb1e2e1f6d3f3f752d34d41636ed00ab8ff78369eb81475b8e57" }, - "tx_hash": "18a9b72fc9e67470cff556297fa5f3dd95ea7d472693f42d597db7ad598c05ec", - "block_index": 190, - "block_time": 1726509899 + "tx_hash": "1d314894d90254c43598647c4ebca9b8f3f0d20a522eb8130d9955e95ea1c197", + "block_index": 191, + "block_time": 1727201003 } ], - "next_cursor": 476, + "next_cursor": 483, "result_count": 11 } ``` @@ -837,15 +837,15 @@ Here is a list of events classified by theme and for each an example response: { "result": [ { - "event_index": 468, + "event_index": 475, "event": "ORDER_FILLED", "params": { "status": "filled", - "tx_hash": "ebe20caac209f665277d0ac456ab451b4934a7d86529e24fd43b97535e62746a" + "tx_hash": "e2f9612faf4a7e6249958ba9d24aaf9e3d7a70b0dafaa5fb94dc51a088e6cf63" }, - "tx_hash": "d749fed653092a4854ac8c9773d9610edfb2b12db4c962aa3795cc653e8a624d", - "block_index": 185, - "block_time": 1726509867 + "tx_hash": "c78a916b13975e32514ea6fac0324481adfcc972f1db2cbabb96677db4d026cb", + "block_index": 186, + "block_time": 1727200982 } ], "next_cursor": null, @@ -859,19 +859,19 @@ Here is a list of events classified by theme and for each an example response: { "result": [ { - "event_index": 467, + "event_index": 474, "event": "ORDER_MATCH_UPDATE", "params": { - "id": "675f8dccad4bdcf4b54ce5aca7ddc442f642d63e518d64ad6068a264fb9894e1_ebe20caac209f665277d0ac456ab451b4934a7d86529e24fd43b97535e62746a", - "order_match_id": "675f8dccad4bdcf4b54ce5aca7ddc442f642d63e518d64ad6068a264fb9894e1_ebe20caac209f665277d0ac456ab451b4934a7d86529e24fd43b97535e62746a", + "id": "4844c5f31805a95e25af849d3e888b41d4cba82846300010c82895f4072e57f6_e2f9612faf4a7e6249958ba9d24aaf9e3d7a70b0dafaa5fb94dc51a088e6cf63", + "order_match_id": "4844c5f31805a95e25af849d3e888b41d4cba82846300010c82895f4072e57f6_e2f9612faf4a7e6249958ba9d24aaf9e3d7a70b0dafaa5fb94dc51a088e6cf63", "status": "completed" }, - "tx_hash": "d749fed653092a4854ac8c9773d9610edfb2b12db4c962aa3795cc653e8a624d", - "block_index": 185, - "block_time": 1726509867 + "tx_hash": "c78a916b13975e32514ea6fac0324481adfcc972f1db2cbabb96677db4d026cb", + "block_index": 186, + "block_time": 1727200982 } ], - "next_cursor": 440, + "next_cursor": 447, "result_count": 2 } ``` @@ -882,23 +882,23 @@ Here is a list of events classified by theme and for each an example response: { "result": [ { - "event_index": 469, + "event_index": 476, "event": "BTC_PAY", "params": { - "block_index": 185, + "block_index": 186, "btc_amount": 2000, - "destination": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "order_match_id": "675f8dccad4bdcf4b54ce5aca7ddc442f642d63e518d64ad6068a264fb9894e1_ebe20caac209f665277d0ac456ab451b4934a7d86529e24fd43b97535e62746a", - "source": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", + "destination": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "order_match_id": "4844c5f31805a95e25af849d3e888b41d4cba82846300010c82895f4072e57f6_e2f9612faf4a7e6249958ba9d24aaf9e3d7a70b0dafaa5fb94dc51a088e6cf63", + "source": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", "status": "valid", - "tx_hash": "d749fed653092a4854ac8c9773d9610edfb2b12db4c962aa3795cc653e8a624d", - "tx_index": 51, - "block_time": 1726509867, + "tx_hash": "c78a916b13975e32514ea6fac0324481adfcc972f1db2cbabb96677db4d026cb", + "tx_index": 52, + "block_time": 1727200982, "btc_amount_normalized": "0.00002000" }, - "tx_hash": "d749fed653092a4854ac8c9773d9610edfb2b12db4c962aa3795cc653e8a624d", - "block_index": 185, - "block_time": 1726509867 + "tx_hash": "c78a916b13975e32514ea6fac0324481adfcc972f1db2cbabb96677db4d026cb", + "block_index": 186, + "block_time": 1727200982 } ], "next_cursor": null, @@ -912,20 +912,20 @@ Here is a list of events classified by theme and for each an example response: { "result": [ { - "event_index": 509, + "event_index": 516, "event": "CANCEL_ORDER", "params": { - "block_index": 190, - "offer_hash": "5e324d551a694d3f6ffc9c67b3db8817d470ba32257047ddee237d3d07c1a1e2", - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "block_index": 191, + "offer_hash": "83919cf82dd5eb1e2e1f6d3f3f752d34d41636ed00ab8ff78369eb81475b8e57", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "status": "valid", - "tx_hash": "18a9b72fc9e67470cff556297fa5f3dd95ea7d472693f42d597db7ad598c05ec", - "tx_index": 56, - "block_time": 1726509899 + "tx_hash": "1d314894d90254c43598647c4ebca9b8f3f0d20a522eb8130d9955e95ea1c197", + "tx_index": 57, + "block_time": 1727201003 }, - "tx_hash": "18a9b72fc9e67470cff556297fa5f3dd95ea7d472693f42d597db7ad598c05ec", - "block_index": 190, - "block_time": 1726509899 + "tx_hash": "1d314894d90254c43598647c4ebca9b8f3f0d20a522eb8130d9955e95ea1c197", + "block_index": 191, + "block_time": 1727201003 } ], "next_cursor": null, @@ -939,20 +939,20 @@ Here is a list of events classified by theme and for each an example response: { "result": [ { - "event_index": 448, + "event_index": 455, "event": "ORDER_EXPIRATION", "params": { - "block_index": 182, - "order_hash": "afd6eab5bb50283dc170ad276157e78db2dc90cb330d559320b9adc3721a1fbc", - "source": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", - "block_time": 1726509796 + "block_index": 183, + "order_hash": "3a7ea4dc466a608d47050ca02aa94f8d84ae9ea60b94dcf727b3e6eb8728e8d8", + "source": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", + "block_time": 1727200899 }, "tx_hash": null, - "block_index": 182, - "block_time": 1726509796 + "block_index": 183, + "block_time": 1727200899 } ], - "next_cursor": 446, + "next_cursor": 453, "result_count": 2 } ``` @@ -963,18 +963,18 @@ Here is a list of events classified by theme and for each an example response: { "result": [ { - "event_index": 443, + "event_index": 450, "event": "ORDER_MATCH_EXPIRATION", "params": { - "block_index": 182, - "order_match_id": "e2263719273ed7cbb5496ae9daff21e24a2899e76feea1abbd4e91fa72766b5d_afd6eab5bb50283dc170ad276157e78db2dc90cb330d559320b9adc3721a1fbc", - "tx0_address": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "tx1_address": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", - "block_time": 1726509796 + "block_index": 183, + "order_match_id": "f90bb3520b4cd8e8f43ae4a416ea102f6a45a4cfd10b4620066271057abde926_3a7ea4dc466a608d47050ca02aa94f8d84ae9ea60b94dcf727b3e6eb8728e8d8", + "tx0_address": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "tx1_address": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", + "block_time": 1727200899 }, "tx_hash": null, - "block_index": 182, - "block_time": 1726509796 + "block_index": 183, + "block_time": 1727200899 } ], "next_cursor": null, @@ -990,23 +990,23 @@ Here is a list of events classified by theme and for each an example response: { "result": [ { - "event_index": 267, + "event_index": 272, "event": "OPEN_DISPENSER", "params": { "asset": "XCP", - "block_index": 145, + "block_index": 146, "dispense_count": 0, "escrow_quantity": 10000, "give_quantity": 1, "give_remaining": 10000, - "oracle_address": "bcrt1qlm44vh2ynrtqwh8j2mptwrzzfd04czsya4wxcd", - "origin": "bcrt1qlm44vh2ynrtqwh8j2mptwrzzfd04czsya4wxcd", + "oracle_address": "bcrt1qeshrsce6vyx833j2p85aesnx0aj9sxjtt79jak", + "origin": "bcrt1qeshrsce6vyx833j2p85aesnx0aj9sxjtt79jak", "satoshirate": 1, - "source": "bcrt1qlm44vh2ynrtqwh8j2mptwrzzfd04czsya4wxcd", + "source": "bcrt1qeshrsce6vyx833j2p85aesnx0aj9sxjtt79jak", "status": 0, - "tx_hash": "5c8374a3882f222038bbf9a0cce7589e84b790915b9228d66af1a5b0eb61ea2d", - "tx_index": 32, - "block_time": 1726509697, + "tx_hash": "1e7bea513de78cabf444b974fdb0efb4304b18bd990a889d7a0f8b0e3d21b6ea", + "tx_index": 33, + "block_time": 1727200823, "asset_info": { "divisible": true, "asset_longname": null, @@ -1019,9 +1019,9 @@ Here is a list of events classified by theme and for each an example response: "escrow_quantity_normalized": "0.00010000", "satoshirate_normalized": "0.00000001" }, - "tx_hash": "5c8374a3882f222038bbf9a0cce7589e84b790915b9228d66af1a5b0eb61ea2d", - "block_index": 145, - "block_time": 1726509697 + "tx_hash": "1e7bea513de78cabf444b974fdb0efb4304b18bd990a889d7a0f8b0e3d21b6ea", + "block_index": 146, + "block_time": 1727200823 } ], "next_cursor": 254, @@ -1035,15 +1035,14 @@ Here is a list of events classified by theme and for each an example response: { "result": [ { - "event_index": 274, + "event_index": 302, "event": "DISPENSER_UPDATE", "params": { "asset": "XCP", - "dispense_count": 1, - "give_remaining": 9334, - "source": "bcrt1qlm44vh2ynrtqwh8j2mptwrzzfd04czsya4wxcd", - "status": 0, - "tx_hash": "5c8374a3882f222038bbf9a0cce7589e84b790915b9228d66af1a5b0eb61ea2d", + "give_remaining": 0, + "source": "mtFzzdWHLZqWVVMGKENQscisyMTejQamk6", + "status": 10, + "tx_hash": "e6a18e565cab14aec4ba641f48a311c8643793f8fa84b25141ced517eaefc6f9", "asset_info": { "divisible": true, "asset_longname": null, @@ -1051,15 +1050,15 @@ Here is a list of events classified by theme and for each an example response: "locked": true, "issuer": null }, - "give_remaining_normalized": "0.00009334" + "give_remaining_normalized": "0.00000000" }, - "tx_hash": "516159be9547a87a0ab0ce652ce9daebb10796eb67509fa50780dca28d813535", - "block_index": 146, - "block_time": 1726509701 + "tx_hash": "664b33a2858e0961f08c6a45f5ec6b98042d62a4f4e98faf6862f374be802724", + "block_index": 150, + "block_time": 1727200840 } ], - "next_cursor": 260, - "result_count": 4 + "next_cursor": 279, + "result_count": 6 } ``` @@ -1074,13 +1073,13 @@ Here is a list of events classified by theme and for each an example response: "params": { "asset": "XCP", "block_index": 144, - "destination": "mnLwb4LAYvLe6gesyGs1d34NnRaSRpScfq", + "destination": "mtFzzdWHLZqWVVMGKENQscisyMTejQamk6", "dispense_quantity": 10, - "dispenser_tx_hash": "d3713f7f4355cf95ddb00030d4c53655897b901d6827b640ee27cc83efaba2e6", - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "tx_hash": "962792bfe558b1042295417f1b88d03dfa7547cb82ab870bbd57854561acf3b5", + "dispenser_tx_hash": "e6a18e565cab14aec4ba641f48a311c8643793f8fa84b25141ced517eaefc6f9", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "tx_hash": "b1e16747a30649a1850561f22204365ba5a8721325f1509544a91cbd364ea876", "tx_index": 31, - "block_time": 1726509693, + "block_time": 1727200815, "asset_info": { "divisible": true, "asset_longname": null, @@ -1090,9 +1089,9 @@ Here is a list of events classified by theme and for each an example response: }, "dispense_quantity_normalized": "0.00000010" }, - "tx_hash": "962792bfe558b1042295417f1b88d03dfa7547cb82ab870bbd57854561acf3b5", + "tx_hash": "b1e16747a30649a1850561f22204365ba5a8721325f1509544a91cbd364ea876", "block_index": 144, - "block_time": 1726509693 + "block_time": 1727200815 } ], "next_cursor": null, @@ -1106,20 +1105,20 @@ Here is a list of events classified by theme and for each an example response: { "result": [ { - "event_index": 275, + "event_index": 280, "event": "DISPENSE", "params": { "asset": "XCP", - "block_index": 146, + "block_index": 147, "btc_amount": 10000, - "destination": "bcrt1qlqcrlvw5t7cnj8r9hjl0qq67c2fyk5kvfra90p", + "destination": "bcrt1qfvucymcd7u04hpd7eafsmxwnashcmaqs54q79p", "dispense_index": 0, "dispense_quantity": 666, - "dispenser_tx_hash": "5c8374a3882f222038bbf9a0cce7589e84b790915b9228d66af1a5b0eb61ea2d", - "source": "bcrt1qlm44vh2ynrtqwh8j2mptwrzzfd04czsya4wxcd", - "tx_hash": "516159be9547a87a0ab0ce652ce9daebb10796eb67509fa50780dca28d813535", - "tx_index": 33, - "block_time": 1726509701, + "dispenser_tx_hash": "1e7bea513de78cabf444b974fdb0efb4304b18bd990a889d7a0f8b0e3d21b6ea", + "source": "bcrt1qeshrsce6vyx833j2p85aesnx0aj9sxjtt79jak", + "tx_hash": "6b21482e6e461d42ded8e74826ff88a8b23621baaa45e714c7c2a20457bd6c12", + "tx_index": 34, + "block_time": 1727200827, "asset_info": { "divisible": true, "asset_longname": null, @@ -1130,9 +1129,9 @@ Here is a list of events classified by theme and for each an example response: "dispense_quantity_normalized": "0.00000666", "btc_amount_normalized": "0.00010000" }, - "tx_hash": "516159be9547a87a0ab0ce652ce9daebb10796eb67509fa50780dca28d813535", - "block_index": 146, - "block_time": 1726509701 + "tx_hash": "6b21482e6e461d42ded8e74826ff88a8b23621baaa45e714c7c2a20457bd6c12", + "block_index": 147, + "block_time": 1727200827 } ], "next_cursor": 240, @@ -1154,19 +1153,19 @@ Here is a list of events classified by theme and for each an example response: "block_index": 138, "fee_fraction_int": 0, "locked": false, - "source": "bcrt1qlm44vh2ynrtqwh8j2mptwrzzfd04czsya4wxcd", + "source": "bcrt1qeshrsce6vyx833j2p85aesnx0aj9sxjtt79jak", "status": "valid", "text": "price-USD", "timestamp": 4003903983, - "tx_hash": "0b3452fcb5ee0a881ba450a768e89de4e0c89e297785e478dd6fc844975bec3a", + "tx_hash": "28499c6a50363ce063ee5e7f5de4d43ea5bf86a19dc05ea650443b343c00e258", "tx_index": 25, "value": 66600.0, - "block_time": 1726509656, + "block_time": 1727200790, "fee_fraction_int_normalized": "0.00000000" }, - "tx_hash": "0b3452fcb5ee0a881ba450a768e89de4e0c89e297785e478dd6fc844975bec3a", + "tx_hash": "28499c6a50363ce063ee5e7f5de4d43ea5bf86a19dc05ea650443b343c00e258", "block_index": 138, - "block_time": 1726509656 + "block_time": 1727200790 } ], "next_cursor": 213, @@ -1204,16 +1203,16 @@ Here is a list of events classified by theme and for each an example response: "quantity_by_price": 60, "soft_cap": 0, "soft_cap_deadline_block": 0, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "start_block": 0, "status": "open", - "tx_hash": "d91c1e127adf6010f11ee5d04a4cd804ece0ff8087b450f307ae85b6f5f83137", + "tx_hash": "5f1bb112a42ace59fa09d6a6fc1916eec2a940d44682b160c97bbae14494b127", "tx_index": 22, - "block_time": 1726509644 + "block_time": 1727200777 }, - "tx_hash": "d91c1e127adf6010f11ee5d04a4cd804ece0ff8087b450f307ae85b6f5f83137", + "tx_hash": "5f1bb112a42ace59fa09d6a6fc1916eec2a940d44682b160c97bbae14494b127", "block_index": 135, - "block_time": 1726509644 + "block_time": 1727200777 } ], "next_cursor": 161, @@ -1231,11 +1230,11 @@ Here is a list of events classified by theme and for each an example response: "event": "FAIRMINTER_UPDATE", "params": { "status": "closed", - "tx_hash": "536537382f35f3fc4bf3bcb4f6957228528eaa802dc49361f6339cd575de0a16" + "tx_hash": "ef8994a7c4750636583ff8d92fe09ac8c38d280813f2e2e923e07c9b9a3d9cda" }, "tx_hash": null, "block_index": 130, - "block_time": 1726509613 + "block_time": 1727200756 } ], "next_cursor": 110, @@ -1256,24 +1255,24 @@ Here is a list of events classified by theme and for each an example response: "block_index": 136, "commission": 0, "earn_quantity": 40, - "fairminter_tx_hash": "d91c1e127adf6010f11ee5d04a4cd804ece0ff8087b450f307ae85b6f5f83137", + "fairminter_tx_hash": "5f1bb112a42ace59fa09d6a6fc1916eec2a940d44682b160c97bbae14494b127", "paid_quantity": 34, - "source": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", + "source": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", "status": "valid", - "tx_hash": "a899b1a361e0514262442a4a300d7571606a3462d50819092e649c490fbcb1e6", + "tx_hash": "bccbb42deef048209e07d9fb0f7340bb2b1e8f10c5e54f1cfa55accb8ac66283", "tx_index": 23, - "block_time": 1726509648, + "block_time": 1727200781, "asset_info": { "asset_longname": "", "description": "", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false } }, - "tx_hash": "a899b1a361e0514262442a4a300d7571606a3462d50819092e649c490fbcb1e6", + "tx_hash": "bccbb42deef048209e07d9fb0f7340bb2b1e8f10c5e54f1cfa55accb8ac66283", "block_index": 136, - "block_time": 1726509648 + "block_time": 1727200781 } ], "next_cursor": 190, @@ -1289,36 +1288,36 @@ Here is a list of events classified by theme and for each an example response: { "result": [ { - "event_index": 312, + "event_index": 319, "event": "ATTACH_TO_UTXO", "params": { "asset": "MYASSETA", - "block_index": 151, - "destination": "a79ea4de3cb6cae0d2b3bbf427028357f9dca64f8d599c93511be263bfda8c8a:1", + "block_index": 152, + "destination": "10c98431b6929b14e27a040b17f2d22aafc7813478587e2bbaca26c1c6197538:1", "fee_paid": 0, "msg_index": 0, "quantity": 1000000000, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "status": "valid", - "tx_hash": "a79ea4de3cb6cae0d2b3bbf427028357f9dca64f8d599c93511be263bfda8c8a", - "tx_index": 38, - "block_time": 1726509724, + "tx_hash": "10c98431b6929b14e27a040b17f2d22aafc7813478587e2bbaca26c1c6197538", + "tx_index": 39, + "block_time": 1727200849, "asset_info": { "asset_longname": null, "description": "My super asset A", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, "quantity_normalized": "10.00000000", "fee_paid_normalized": "0.00000000" }, - "tx_hash": "a79ea4de3cb6cae0d2b3bbf427028357f9dca64f8d599c93511be263bfda8c8a", - "block_index": 151, - "block_time": 1726509724 + "tx_hash": "10c98431b6929b14e27a040b17f2d22aafc7813478587e2bbaca26c1c6197538", + "block_index": 152, + "block_time": 1727200849 } ], - "next_cursor": 291, + "next_cursor": 296, "result_count": 2 } ``` @@ -1329,33 +1328,33 @@ Here is a list of events classified by theme and for each an example response: { "result": [ { - "event_index": 304, + "event_index": 311, "event": "DETACH_FROM_UTXO", "params": { "asset": "MYASSETA", - "block_index": 150, - "destination": "bcrt1qghqkpk28xhsruvxjphq0ecx2ec35v90uksf2j0", + "block_index": 151, + "destination": "bcrt1qe4v63z8qa2kvy5yzt4ssr8zhwxgqw84j8nmhvg", "fee_paid": 0, "msg_index": 0, "quantity": 500000000, - "source": "9d48ae21a1caed318e44591060a2d5873ed0ef5b403a5447046052a111c7dd88:0", + "source": "664b33a2858e0961f08c6a45f5ec6b98042d62a4f4e98faf6862f374be802724:0", "status": "valid", - "tx_hash": "05a57c8eb387d6f5e5f5a0ae90eb2873a7750c2f87e65b21b176c88da3be21ba", - "tx_index": 37, - "block_time": 1726509719, + "tx_hash": "f409e618a14bf7943a7027f7f66f55aaf0604d8c0cafc7c0062f5c6bdf82d7b6", + "tx_index": 38, + "block_time": 1727200844, "asset_info": { "asset_longname": null, "description": "My super asset A", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, "quantity_normalized": "5.00000000", "fee_paid_normalized": "0.00000000" }, - "tx_hash": "05a57c8eb387d6f5e5f5a0ae90eb2873a7750c2f87e65b21b176c88da3be21ba", - "block_index": 150, - "block_time": 1726509719 + "tx_hash": "f409e618a14bf7943a7027f7f66f55aaf0604d8c0cafc7c0062f5c6bdf82d7b6", + "block_index": 151, + "block_time": 1727200844 } ], "next_cursor": null, @@ -1369,19 +1368,19 @@ Here is a list of events classified by theme and for each an example response: { "result": [ { - "event_index": 349, + "event_index": 356, "event": "UTXO_MOVE", "params": { "asset": "XCP", - "block_index": 155, - "destination": "f48f32cde583a1233260e9d07c858726031b0aadb7550a061602ad6cffd5f3a7:1", + "block_index": 156, + "destination": "ca11a87b6b09143626cafffbc32be68d26d43df5facbb48aa919ce857c1aa739:1", "msg_index": 1, "quantity": 1500000000, - "source": "3f0027dbe860c95e4cea6d1c83db0d8ea3acf7adbeacefd7e8eb56e9399d879b:0", + "source": "9d347b5453e8bf2608768d2b109367ce3aaf5a12d4bc63526fa6fb59eab1901d:0", "status": "valid", - "tx_hash": "f48f32cde583a1233260e9d07c858726031b0aadb7550a061602ad6cffd5f3a7", - "tx_index": 42, - "block_time": 1726509741, + "tx_hash": "ca11a87b6b09143626cafffbc32be68d26d43df5facbb48aa919ce857c1aa739", + "tx_index": 43, + "block_time": 1727200867, "asset_info": { "divisible": true, "asset_longname": null, @@ -1391,12 +1390,12 @@ Here is a list of events classified by theme and for each an example response: }, "quantity_normalized": "15.00000000" }, - "tx_hash": "f48f32cde583a1233260e9d07c858726031b0aadb7550a061602ad6cffd5f3a7", - "block_index": 155, - "block_time": 1726509741 + "tx_hash": "ca11a87b6b09143626cafffbc32be68d26d43df5facbb48aa919ce857c1aa739", + "block_index": 156, + "block_time": 1727200867 } ], - "next_cursor": 346, + "next_cursor": 353, "result_count": 7 } ``` @@ -1415,17 +1414,17 @@ Here is a list of events classified by theme and for each an example response: "block_index": 121, "burned": 50000000, "earned": 74999996667, - "source": "bcrt1qyzyw25seaw22494hrmtlwsm3d5mqyp93fd25da", + "source": "bcrt1quygvuzd7gsxym55nf7w85agucgajyp9p5jduqp", "status": "valid", - "tx_hash": "2504c4bdafa1c2cab23605685e6a8040748f7d6df91f857b42f1cb259d3a91e0", + "tx_hash": "bb35e686d434cae9951da80cf904917280d38b8251f1626625123d1a058d4a6d", "tx_index": 9, - "block_time": 1726509573, + "block_time": 1727200719, "burned_normalized": "0.50000000", "earned_normalized": "749.99997000" }, - "tx_hash": "2504c4bdafa1c2cab23605685e6a8040748f7d6df91f857b42f1cb259d3a91e0", + "tx_hash": "bb35e686d434cae9951da80cf904917280d38b8251f1626625123d1a058d4a6d", "block_index": 121, - "block_time": 1726509573 + "block_time": 1727200719 } ], "next_cursor": 65, @@ -1447,7 +1446,7 @@ Returns server information and the list of documented routes in JSON format. "result": { "server_ready": true, "network": "mainnet", - "version": "10.4.0", + "version": "10.4.1", "backend_height": 850214, "counterparty_height": 850214, "documentation": "https://counterpartycore.docs.apiary.io/", @@ -1464,7 +1463,7 @@ Returns server information and the list of documented routes in JSON format. Returns the list of the last ten blocks + Parameters - + cursor: `193` (str, optional) - The index of the most recent block to return + + cursor: `194` (str, optional) - The index of the most recent block to return + Default: `None` + limit: `5` (int, optional) - The number of blocks to return + Default: `10` @@ -1481,68 +1480,68 @@ Returns the list of the last ten blocks { "result": [ { - "block_index": 193, - "block_hash": "0c078dccb9971fd739e4646df2613ddf86bea7f006a0ec0aabf2253f9f835f58", - "block_time": 1726509912, - "previous_block_hash": "356d63b3ac8ed95b008257f61aee3850ec360d8ac8d808d0b0e0ceab8de6ee1e", + "block_index": 194, + "block_hash": "52ace614bdf700970fae116cbd930af95fe09c4faee117d3d3c0c24860eedf93", + "block_time": 1727201016, + "previous_block_hash": "72aff9bcfbc6a9f61cd1c192dc2322be91c061a847e81cc3b45854c9af31a6d5", "difficulty": 545259519, - "ledger_hash": "260bca5241d162936ae20e643b78cd69f7c3d74370745be7447cbaae1dde9a9c", - "txlist_hash": "1ecd81dbebae4723fab572ad7f59f8712a540b524662de521ea50631e83b7e7b", - "messages_hash": "a5b39b3745218a45506fcbd2397ab67628c6263f2173159bdf4b259978114bde", + "ledger_hash": "d16329e826a589a6af06767a820f5914ee69e22398c8612ed0c73909a1ab9b1f", + "txlist_hash": "555a7b8103a776f23b649ec297d2177fe885443dc976750a259547be47cd26e7", + "messages_hash": "1bc8906db34e5bf45f47eca127e2b4cc60e46bbc8cf4301617e02c6f29b32301", "transaction_count": 1, "confirmed": true }, { - "block_index": 192, - "block_hash": "356d63b3ac8ed95b008257f61aee3850ec360d8ac8d808d0b0e0ceab8de6ee1e", - "block_time": 1726509908, - "previous_block_hash": "44555f5ae4cd1f61f3df9e675ad106b01fca685a76eff37b685758a1f234afb2", + "block_index": 193, + "block_hash": "72aff9bcfbc6a9f61cd1c192dc2322be91c061a847e81cc3b45854c9af31a6d5", + "block_time": 1727201012, + "previous_block_hash": "7aa8cd7d46e84e234d53f8c14736afd98d1d5b8441f4f425fe8c6a52c3f33c87", "difficulty": 545259519, - "ledger_hash": "a352fa09b0c8621cb30776de9b016c7b433da3453f51a01610e0d8a706b94c7e", - "txlist_hash": "83367c52c5808cc55d9902d446542239ae36c22d7b7d92678f128ad83f58aaea", - "messages_hash": "3172cc5949c44703a36181b1b938faf388d0cf72e686932ee5ee218ee893e4a6", + "ledger_hash": "fe72f9a183bbe8818f70ff6fff77b10468c2dc87a83499c4efa91349405a7d67", + "txlist_hash": "aba2669687ed43d3c307f90145085717cceb79038c715445f52cb587817ca510", + "messages_hash": "2d72a21fa2540f29a91bb2530c0078d445e984faccd9deb0b88d92a542a6c1bb", "transaction_count": 1, "confirmed": true }, { - "block_index": 191, - "block_hash": "44555f5ae4cd1f61f3df9e675ad106b01fca685a76eff37b685758a1f234afb2", - "block_time": 1726509903, - "previous_block_hash": "214a1e1ed38b3e555167f5f21d78c8c3e487ea62d748cd8200a3b3e18f2b6017", + "block_index": 192, + "block_hash": "7aa8cd7d46e84e234d53f8c14736afd98d1d5b8441f4f425fe8c6a52c3f33c87", + "block_time": 1727201008, + "previous_block_hash": "6df0e71250aea0de3e29c053f2ca49cc02c029f911a25356f455303c447d0a63", "difficulty": 545259519, - "ledger_hash": "20f305d9381284d270d7c1d22ba897f66d072d2f1df42dfeeffdf903e9627921", - "txlist_hash": "57455bb363a21c6f49fa641f5bedf87e9eedc785270ddc90711b98f54eb0f113", - "messages_hash": "2f8a089ba7d158feab1cd9daea1fc5a85d43e2de099feb80f384f9fafe9efbb5", + "ledger_hash": "b628adecb3a2aaf9e34fdd69db9d8deca8cd034cc5003533e94931ea8e2b3eb9", + "txlist_hash": "7907f570d25dd6ee1b06021b8124df870185e5dff3ed08257498d094cd0986b2", + "messages_hash": "fbc2a23c6dbea37463fe9e7b83b6f116bcdc875ab356c17de0eed630e0ca9998", "transaction_count": 1, "confirmed": true }, { - "block_index": 190, - "block_hash": "214a1e1ed38b3e555167f5f21d78c8c3e487ea62d748cd8200a3b3e18f2b6017", - "block_time": 1726509899, - "previous_block_hash": "4147554b4c1d081b097b1c6278509e7da43fbec27bdb1ad6cb8414e44ba4445b", + "block_index": 191, + "block_hash": "6df0e71250aea0de3e29c053f2ca49cc02c029f911a25356f455303c447d0a63", + "block_time": 1727201003, + "previous_block_hash": "0878eceac6ded73fd8e873772ed9f93c488a46bdde659e59451e65eb9a3ee390", "difficulty": 545259519, - "ledger_hash": "5dac3b61245453c5448b8e8ef6eaf53e9ca0a371d3b6524ca97ef99e40551036", - "txlist_hash": "5caba1ce46d6c7e9d5a7cb1c794b331dd473323683be48d62b3e03fef3a9cb75", - "messages_hash": "a3d30ea5b4343aac41752e3cbe083b2f9a5070adb3e28d3cf3b586d60b13f937", + "ledger_hash": "ca55ff06d6da636d78ab4e2f239b3e1f55fba257aad9da3ba207987ddef60d4f", + "txlist_hash": "15073748e67fe9f89a59617d6f98dd6825510a84aa9a81c8a71ab8e0d78371cb", + "messages_hash": "794947a3274da460c59e4e508e48909c67ed76799d6d25c045d0f2ae92fd60e9", "transaction_count": 1, "confirmed": true }, { - "block_index": 189, - "block_hash": "4147554b4c1d081b097b1c6278509e7da43fbec27bdb1ad6cb8414e44ba4445b", - "block_time": 1726509894, - "previous_block_hash": "6af6f23af835e0b3e7515a3d98e43a2ff75b7baf8d552fe27cbaf82dc8974780", + "block_index": 190, + "block_hash": "0878eceac6ded73fd8e873772ed9f93c488a46bdde659e59451e65eb9a3ee390", + "block_time": 1727200999, + "previous_block_hash": "73be93be2c91012204c8a1e8321475345c6c634627235302e1e7abe56fcb5755", "difficulty": 545259519, - "ledger_hash": "3f97c50ca5edc66440c05c58badb6d8f26237669ef20c001a05e476404900c94", - "txlist_hash": "ed6472060345e91ae8e05a0f6d7a9a0e657098f47eae73e2e644fc7e455e67d3", - "messages_hash": "9f629d60ea05b595361922207a4b99e144e342dcc0cef5755d71e920ec551ba7", + "ledger_hash": "c242b73b2ee5c7a4cb1a18658d3d1c025310777e321d11722eff7c218b55df48", + "txlist_hash": "d647e554d1cfd1e9685fb03b192d224c788e4e30b2e0aad469691108c00abd60", + "messages_hash": "ed415b2226b65db4bdc25bfb21ecca24635074bfa76649c0f9e9458187b5da57", "transaction_count": 1, "confirmed": true } ], - "next_cursor": 188, - "result_count": 93 + "next_cursor": 189, + "result_count": 94 } ``` @@ -1561,7 +1560,7 @@ Return the information of the last block Return the information of a block + Parameters - + block_index: `193` (int, required) - The index of the block to return + + block_index: `194` (int, required) - The index of the block to return + verbose: `true` (bool, optional) - Include asset and dispenser info and normalized quantities in the response. + Default: `false` + show_unconfirmed (bool, optional) - Include results from Mempool. @@ -1572,14 +1571,14 @@ Return the information of a block ``` { "result": { - "block_index": 193, - "block_hash": "0c078dccb9971fd739e4646df2613ddf86bea7f006a0ec0aabf2253f9f835f58", - "block_time": 1726509912, - "previous_block_hash": "356d63b3ac8ed95b008257f61aee3850ec360d8ac8d808d0b0e0ceab8de6ee1e", + "block_index": 194, + "block_hash": "52ace614bdf700970fae116cbd930af95fe09c4faee117d3d3c0c24860eedf93", + "block_time": 1727201016, + "previous_block_hash": "72aff9bcfbc6a9f61cd1c192dc2322be91c061a847e81cc3b45854c9af31a6d5", "difficulty": 545259519, - "ledger_hash": "260bca5241d162936ae20e643b78cd69f7c3d74370745be7447cbaae1dde9a9c", - "txlist_hash": "1ecd81dbebae4723fab572ad7f59f8712a540b524662de521ea50631e83b7e7b", - "messages_hash": "a5b39b3745218a45506fcbd2397ab67628c6263f2173159bdf4b259978114bde", + "ledger_hash": "d16329e826a589a6af06767a820f5914ee69e22398c8612ed0c73909a1ab9b1f", + "txlist_hash": "555a7b8103a776f23b649ec297d2177fe885443dc976750a259547be47cd26e7", + "messages_hash": "1bc8906db34e5bf45f47eca127e2b4cc60e46bbc8cf4301617e02c6f29b32301", "transaction_count": 1, "confirmed": true } @@ -1591,7 +1590,7 @@ Return the information of a block Return the information of a block + Parameters - + block_hash: `0c078dccb9971fd739e4646df2613ddf86bea7f006a0ec0aabf2253f9f835f58` (str, required) - The index of the block to return + + block_hash: `52ace614bdf700970fae116cbd930af95fe09c4faee117d3d3c0c24860eedf93` (str, required) - The index of the block to return + verbose: `true` (bool, optional) - Include asset and dispenser info and normalized quantities in the response. + Default: `false` + show_unconfirmed (bool, optional) - Include results from Mempool. @@ -1602,14 +1601,14 @@ Return the information of a block ``` { "result": { - "block_index": 193, - "block_hash": "0c078dccb9971fd739e4646df2613ddf86bea7f006a0ec0aabf2253f9f835f58", - "block_time": 1726509912, - "previous_block_hash": "356d63b3ac8ed95b008257f61aee3850ec360d8ac8d808d0b0e0ceab8de6ee1e", + "block_index": 194, + "block_hash": "52ace614bdf700970fae116cbd930af95fe09c4faee117d3d3c0c24860eedf93", + "block_time": 1727201016, + "previous_block_hash": "72aff9bcfbc6a9f61cd1c192dc2322be91c061a847e81cc3b45854c9af31a6d5", "difficulty": 545259519, - "ledger_hash": "260bca5241d162936ae20e643b78cd69f7c3d74370745be7447cbaae1dde9a9c", - "txlist_hash": "1ecd81dbebae4723fab572ad7f59f8712a540b524662de521ea50631e83b7e7b", - "messages_hash": "a5b39b3745218a45506fcbd2397ab67628c6263f2173159bdf4b259978114bde", + "ledger_hash": "d16329e826a589a6af06767a820f5914ee69e22398c8612ed0c73909a1ab9b1f", + "txlist_hash": "555a7b8103a776f23b649ec297d2177fe885443dc976750a259547be47cd26e7", + "messages_hash": "1bc8906db34e5bf45f47eca127e2b4cc60e46bbc8cf4301617e02c6f29b32301", "transaction_count": 1, "confirmed": true } @@ -1621,8 +1620,8 @@ Return the information of a block Returns the transactions of a block + Parameters - + block_index: `193` (int, required) - The index of the block to return - + cursor: `59` (str, optional) - The last transaction index to return + + block_index: `194` (int, required) - The index of the block to return + + cursor: `60` (str, optional) - The last transaction index to return + Default: `None` + limit: `5` (int, optional) - The maximum number of transactions to return + Default: `10` @@ -1639,18 +1638,18 @@ Returns the transactions of a block { "result": [ { - "tx_index": 59, - "tx_hash": "f79c39d2a2896a86ef0bb2370101c664b69f2b9387afcd377d8226b839d419ce", - "block_index": 193, - "block_hash": "0c078dccb9971fd739e4646df2613ddf86bea7f006a0ec0aabf2253f9f835f58", - "block_time": 1726509912, - "source": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "tx_index": 60, + "tx_hash": "da0a0e76bfc982e2bbed2679a71f4e2d3ebc01140b448f430bb01b50f7ceaabb", + "block_index": 194, + "block_hash": "52ace614bdf700970fae116cbd930af95fe09c4faee117d3d3c0c24860eedf93", + "block_time": 1727201016, + "source": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "destination": null, "btc_amount": 0, "fee": 10000, "data": "6e0000000000000001000000000000000164657374726f79", "supported": true, - "utxos_info": "f79c39d2a2896a86ef0bb2370101c664b69f2b9387afcd377d8226b839d419ce:1", + "utxos_info": "da0a0e76bfc982e2bbed2679a71f4e2d3ebc01140b448f430bb01b50f7ceaabb:1", "confirmed": true, "unpacked_data": { "message_type": "destroy", @@ -1682,10 +1681,10 @@ Returns the transactions of a block Returns the events of a block + Parameters - + block_index: `192` (int, required) - The index of the block to return + + block_index: `193` (int, required) - The index of the block to return + event_name (str, optional) - Comma separated list of events to return + Default: `None` - + cursor: `535` (str, optional) - The last event index to return + + cursor: `542` (str, optional) - The last event index to return + Default: `None` + limit: `5` (int, optional) - The maximum number of events to return + Default: `100` @@ -1702,60 +1701,60 @@ Returns the events of a block { "result": [ { - "event_index": 529, + "event_index": 536, "event": "BLOCK_PARSED", "params": { - "block_index": 192, - "ledger_hash": "a352fa09b0c8621cb30776de9b016c7b433da3453f51a01610e0d8a706b94c7e", - "messages_hash": "3172cc5949c44703a36181b1b938faf388d0cf72e686932ee5ee218ee893e4a6", + "block_index": 193, + "ledger_hash": "fe72f9a183bbe8818f70ff6fff77b10468c2dc87a83499c4efa91349405a7d67", + "messages_hash": "2d72a21fa2540f29a91bb2530c0078d445e984faccd9deb0b88d92a542a6c1bb", "transaction_count": 1, - "txlist_hash": "83367c52c5808cc55d9902d446542239ae36c22d7b7d92678f128ad83f58aaea", - "block_time": 1726509908 + "txlist_hash": "aba2669687ed43d3c307f90145085717cceb79038c715445f52cb587817ca510", + "block_time": 1727201012 }, "tx_hash": null }, { - "event_index": 528, + "event_index": 535, "event": "TRANSACTION_PARSED", "params": { "supported": true, - "tx_hash": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", - "tx_index": 58 + "tx_hash": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", + "tx_index": 59 }, - "tx_hash": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b" + "tx_hash": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774" }, { - "event_index": 527, + "event_index": 534, "event": "SWEEP", "params": { - "block_index": 192, - "destination": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "block_index": 193, + "destination": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "fee_paid": 600000, "flags": 1, "memo": "sweep my assets", - "source": "bcrt1q3ds7n4l97tumdkgcr3vyhe04zaxce8ujr8fmr2", + "source": "bcrt1q9cf2ed4wk37qye08wlppw39l7prxws7afa3krk", "status": "valid", - "tx_hash": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", - "tx_index": 58, - "block_time": 1726509908, + "tx_hash": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", + "tx_index": 59, + "block_time": 1727201012, "fee_paid_normalized": "0.00600000" }, - "tx_hash": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b" + "tx_hash": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774" }, { - "event_index": 526, + "event_index": 533, "event": "CREDIT", "params": { - "address": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "address": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "asset": "XCP", - "block_index": 192, + "block_index": 193, "calling_function": "sweep", - "event": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", + "event": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", "quantity": 74499387833, - "tx_index": 58, + "tx_index": 59, "utxo": null, "utxo_address": null, - "block_time": 1726509908, + "block_time": 1727201012, "asset_info": { "divisible": true, "asset_longname": null, @@ -1765,22 +1764,22 @@ Returns the events of a block }, "quantity_normalized": "744.99388000" }, - "tx_hash": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b" + "tx_hash": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774" }, { - "event_index": 525, + "event_index": 532, "event": "DEBIT", "params": { "action": "sweep", - "address": "bcrt1q3ds7n4l97tumdkgcr3vyhe04zaxce8ujr8fmr2", + "address": "bcrt1q9cf2ed4wk37qye08wlppw39l7prxws7afa3krk", "asset": "XCP", - "block_index": 192, - "event": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", + "block_index": 193, + "event": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", "quantity": 74499387833, - "tx_index": 58, + "tx_index": 59, "utxo": null, "utxo_address": null, - "block_time": 1726509908, + "block_time": 1727201012, "asset_info": { "divisible": true, "asset_longname": null, @@ -1790,10 +1789,10 @@ Returns the events of a block }, "quantity_normalized": "744.99388000" }, - "tx_hash": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b" + "tx_hash": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774" } ], - "next_cursor": 524, + "next_cursor": 531, "result_count": 12 } ``` @@ -1803,7 +1802,7 @@ Returns the events of a block Returns the event counts of a block + Parameters - + block_index: `193` (int, required) - The index of the block to return + + block_index: `194` (int, required) - The index of the block to return + cursor (str, optional) - The last event index to return + Default: `None` + limit: `5` (int, optional) - The maximum number of events to return @@ -1851,7 +1850,7 @@ Returns the event counts of a block Returns the events of a block filtered by event + Parameters - + block_index: `192` (int, required) - The index of the block to return + + block_index: `193` (int, required) - The index of the block to return + event: `CREDIT` (str, required) - The event to filter by + cursor (str, optional) - The last event index to return + Default: `None` @@ -1870,19 +1869,19 @@ Returns the events of a block filtered by event { "result": [ { - "event_index": 526, + "event_index": 533, "event": "CREDIT", "params": { - "address": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "address": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "asset": "XCP", - "block_index": 192, + "block_index": 193, "calling_function": "sweep", - "event": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", + "event": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", "quantity": 74499387833, - "tx_index": 58, + "tx_index": 59, "utxo": null, "utxo_address": null, - "block_time": 1726509908, + "block_time": 1727201012, "asset_info": { "divisible": true, "asset_longname": null, @@ -1892,57 +1891,57 @@ Returns the events of a block filtered by event }, "quantity_normalized": "744.99388000" }, - "tx_hash": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b" + "tx_hash": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774" }, { - "event_index": 524, + "event_index": 531, "event": "CREDIT", "params": { - "address": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "address": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "asset": "MYASSETA", - "block_index": 192, + "block_index": 193, "calling_function": "sweep", - "event": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", + "event": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", "quantity": 10, - "tx_index": 58, + "tx_index": 59, "utxo": null, "utxo_address": null, - "block_time": 1726509908, + "block_time": 1727201012, "asset_info": { "asset_longname": null, "description": "My super asset A", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, "quantity_normalized": "0.00000010" }, - "tx_hash": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b" + "tx_hash": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774" }, { - "event_index": 522, + "event_index": 529, "event": "CREDIT", "params": { - "address": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "address": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "asset": "FAIRMINTA", - "block_index": 192, + "block_index": 193, "calling_function": "sweep", - "event": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", + "event": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", "quantity": 500000000, - "tx_index": 58, + "tx_index": 59, "utxo": null, "utxo_address": null, - "block_time": 1726509908, + "block_time": 1727201012, "asset_info": { "asset_longname": "", "description": "", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, "quantity_normalized": "5.00000000" }, - "tx_hash": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b" + "tx_hash": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774" } ], "next_cursor": null, @@ -1955,7 +1954,7 @@ Returns the events of a block filtered by event Returns the credits of a block + Parameters - + block_index: `192` (int, required) - The index of the block to return + + block_index: `193` (int, required) - The index of the block to return + action (enum[str], optional) - The action to filter by + Default: `None` + Members @@ -2004,17 +2003,17 @@ Returns the credits of a block { "result": [ { - "block_index": 192, - "address": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "block_index": 193, + "address": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "asset": "XCP", "quantity": 74499387833, "calling_function": "sweep", - "event": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", - "tx_index": 58, + "event": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", + "tx_index": 59, "utxo": null, "utxo_address": null, "confirmed": true, - "block_time": 1726509908, + "block_time": 1727201012, "asset_info": { "divisible": true, "asset_longname": null, @@ -2025,42 +2024,42 @@ Returns the credits of a block "quantity_normalized": "744.99388000" }, { - "block_index": 192, - "address": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "block_index": 193, + "address": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "asset": "MYASSETA", "quantity": 10, "calling_function": "sweep", - "event": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", - "tx_index": 58, + "event": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", + "tx_index": 59, "utxo": null, "utxo_address": null, "confirmed": true, - "block_time": 1726509908, + "block_time": 1727201012, "asset_info": { "asset_longname": null, "description": "My super asset A", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, "quantity_normalized": "0.00000010" }, { - "block_index": 192, - "address": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "block_index": 193, + "address": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "asset": "FAIRMINTA", "quantity": 500000000, "calling_function": "sweep", - "event": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", - "tx_index": 58, + "event": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", + "tx_index": 59, "utxo": null, "utxo_address": null, "confirmed": true, - "block_time": 1726509908, + "block_time": 1727201012, "asset_info": { "asset_longname": "", "description": "", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, @@ -2077,7 +2076,7 @@ Returns the credits of a block Returns the debits of a block + Parameters - + block_index: `193` (int, required) - The index of the block to return + + block_index: `194` (int, required) - The index of the block to return + action (enum[str], optional) - The action to filter by + Default: `None` + Members @@ -2115,17 +2114,17 @@ Returns the debits of a block { "result": [ { - "block_index": 193, - "address": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "block_index": 194, + "address": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "asset": "XCP", "quantity": 1, "action": "destroy", - "event": "f79c39d2a2896a86ef0bb2370101c664b69f2b9387afcd377d8226b839d419ce", - "tx_index": 59, + "event": "da0a0e76bfc982e2bbed2679a71f4e2d3ebc01140b448f430bb01b50f7ceaabb", + "tx_index": 60, "utxo": null, "utxo_address": null, "confirmed": true, - "block_time": 1726509912, + "block_time": 1727201016, "asset_info": { "divisible": true, "asset_longname": null, @@ -2146,7 +2145,7 @@ Returns the debits of a block Returns the expirations of a block + Parameters - + block_index: `182` (int, required) - The index of the block to return + + block_index: `183` (int, required) - The index of the block to return + cursor (str, optional) - The last index of the expirations to return + Default: `None` + limit: `5` (int, optional) - The maximum number of expirations to return @@ -2165,24 +2164,24 @@ Returns the expirations of a block "result": [ { "type": "order", - "object_id": "afd6eab5bb50283dc170ad276157e78db2dc90cb330d559320b9adc3721a1fbc", - "block_index": 182, + "object_id": "3a7ea4dc466a608d47050ca02aa94f8d84ae9ea60b94dcf727b3e6eb8728e8d8", + "block_index": 183, "confirmed": true, - "block_time": 1726509796 + "block_time": 1727200899 }, { "type": "order", - "object_id": "e2263719273ed7cbb5496ae9daff21e24a2899e76feea1abbd4e91fa72766b5d", - "block_index": 182, + "object_id": "f90bb3520b4cd8e8f43ae4a416ea102f6a45a4cfd10b4620066271057abde926", + "block_index": 183, "confirmed": true, - "block_time": 1726509796 + "block_time": 1727200899 }, { "type": "order_match", - "object_id": "e2263719273ed7cbb5496ae9daff21e24a2899e76feea1abbd4e91fa72766b5d_afd6eab5bb50283dc170ad276157e78db2dc90cb330d559320b9adc3721a1fbc", - "block_index": 182, + "object_id": "f90bb3520b4cd8e8f43ae4a416ea102f6a45a4cfd10b4620066271057abde926_3a7ea4dc466a608d47050ca02aa94f8d84ae9ea60b94dcf727b3e6eb8728e8d8", + "block_index": 183, "confirmed": true, - "block_time": 1726509796 + "block_time": 1727200899 } ], "next_cursor": null, @@ -2195,7 +2194,7 @@ Returns the expirations of a block Returns the cancels of a block + Parameters - + block_index: `190` (int, required) - The index of the block to return + + block_index: `191` (int, required) - The index of the block to return + cursor (str, optional) - The last index of the cancels to return + Default: `None` + limit: `5` (int, optional) - The maximum number of cancels to return @@ -2213,14 +2212,14 @@ Returns the cancels of a block { "result": [ { - "tx_index": 56, - "tx_hash": "18a9b72fc9e67470cff556297fa5f3dd95ea7d472693f42d597db7ad598c05ec", - "block_index": 190, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "offer_hash": "5e324d551a694d3f6ffc9c67b3db8817d470ba32257047ddee237d3d07c1a1e2", + "tx_index": 57, + "tx_hash": "1d314894d90254c43598647c4ebca9b8f3f0d20a522eb8130d9955e95ea1c197", + "block_index": 191, + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "offer_hash": "83919cf82dd5eb1e2e1f6d3f3f752d34d41636ed00ab8ff78369eb81475b8e57", "status": "valid", "confirmed": true, - "block_time": 1726509899 + "block_time": 1727201003 } ], "next_cursor": null, @@ -2233,7 +2232,7 @@ Returns the cancels of a block Returns the destructions of a block + Parameters - + block_index: `193` (int, required) - The index of the block to return + + block_index: `194` (int, required) - The index of the block to return + cursor (str, optional) - The last index of the destructions to return + Default: `None` + limit: `5` (int, optional) - The maximum number of destructions to return @@ -2251,16 +2250,16 @@ Returns the destructions of a block { "result": [ { - "tx_index": 59, - "tx_hash": "f79c39d2a2896a86ef0bb2370101c664b69f2b9387afcd377d8226b839d419ce", - "block_index": 193, - "source": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "tx_index": 60, + "tx_hash": "da0a0e76bfc982e2bbed2679a71f4e2d3ebc01140b448f430bb01b50f7ceaabb", + "block_index": 194, + "source": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "asset": "XCP", "quantity": 1, "tag": "64657374726f79", "status": "valid", "confirmed": true, - "block_time": 1726509912, + "block_time": 1727201016, "asset_info": { "divisible": true, "asset_longname": null, @@ -2281,7 +2280,7 @@ Returns the destructions of a block Returns the issuances of a block + Parameters - + block_index: `159` (int, required) - The index of the block to return + + block_index: `160` (int, required) - The index of the block to return + cursor (str, optional) - The last index of the issuances to return + Default: `None` + limit: `5` (int, optional) - The maximum number of issuances to return @@ -2299,15 +2298,15 @@ Returns the issuances of a block { "result": [ { - "tx_index": 46, - "tx_hash": "3f80ba6dc66be4e5b604bbf8e1e2007161960069d871f7cb00b1d24f9f090491", + "tx_index": 47, + "tx_hash": "efd20bb15eb6a7ce22645a0fb33b1873d00dc0cdeb9533d37037e0fd6a63f512", "msg_index": 0, - "block_index": 159, + "block_index": 160, "asset": "A95428956980101314", "quantity": 100000000000, "divisible": true, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "transfer": false, "callable": false, "call_date": 0, @@ -2322,7 +2321,7 @@ Returns the issuances of a block "fair_minting": false, "asset_events": "creation", "confirmed": true, - "block_time": 1726509780, + "block_time": 1727200884, "quantity_normalized": "1000.00000000", "fee_paid_normalized": "0.00000000" } @@ -2337,7 +2336,7 @@ Returns the issuances of a block Returns the sends, include Enhanced and MPMA sends, of a block + Parameters - + block_index: `188` (int, required) - The index of the block to return + + block_index: `189` (int, required) - The index of the block to return + cursor (str, optional) - The last index of the debits to return + Default: `None` + limit: `5` (int, optional) - The maximum number of debits to return @@ -2355,11 +2354,11 @@ Returns the sends, include Enhanced and MPMA sends, of a block { "result": [ { - "tx_index": 54, - "tx_hash": "e8fda956958ed7de0a98e42d8d28349b9c7b5e20da375c185c5830526df6594f", - "block_index": 188, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "destination": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", + "tx_index": 55, + "tx_hash": "4cd813fae2558e89f2f9411f38daa7d4c10c94a267daa38155cf18fb4d9fd055", + "block_index": 189, + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "destination": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", "asset": "XCP", "quantity": 10, "status": "valid", @@ -2367,7 +2366,7 @@ Returns the sends, include Enhanced and MPMA sends, of a block "memo": null, "fee_paid": 0, "confirmed": true, - "block_time": 1726509890, + "block_time": 1727200995, "asset_info": { "divisible": true, "asset_longname": null, @@ -2379,11 +2378,11 @@ Returns the sends, include Enhanced and MPMA sends, of a block "fee_paid_normalized": "0.00000000" }, { - "tx_index": 54, - "tx_hash": "e8fda956958ed7de0a98e42d8d28349b9c7b5e20da375c185c5830526df6594f", - "block_index": 188, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "destination": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "tx_index": 55, + "tx_hash": "4cd813fae2558e89f2f9411f38daa7d4c10c94a267daa38155cf18fb4d9fd055", + "block_index": 189, + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "destination": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "asset": "MYASSETA", "quantity": 10, "status": "valid", @@ -2391,11 +2390,11 @@ Returns the sends, include Enhanced and MPMA sends, of a block "memo": null, "fee_paid": 0, "confirmed": true, - "block_time": 1726509890, + "block_time": 1727200995, "asset_info": { "asset_longname": null, "description": "My super asset A", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, @@ -2403,11 +2402,11 @@ Returns the sends, include Enhanced and MPMA sends, of a block "fee_paid_normalized": "0.00000000" }, { - "tx_index": 54, - "tx_hash": "e8fda956958ed7de0a98e42d8d28349b9c7b5e20da375c185c5830526df6594f", - "block_index": 188, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "destination": "bcrt1q3ds7n4l97tumdkgcr3vyhe04zaxce8ujr8fmr2", + "tx_index": 55, + "tx_hash": "4cd813fae2558e89f2f9411f38daa7d4c10c94a267daa38155cf18fb4d9fd055", + "block_index": 189, + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "destination": "bcrt1q9cf2ed4wk37qye08wlppw39l7prxws7afa3krk", "asset": "MYASSETA", "quantity": 10, "status": "valid", @@ -2415,11 +2414,11 @@ Returns the sends, include Enhanced and MPMA sends, of a block "memo": null, "fee_paid": 0, "confirmed": true, - "block_time": 1726509890, + "block_time": 1727200995, "asset_info": { "asset_longname": null, "description": "My super asset A", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, @@ -2437,7 +2436,7 @@ Returns the sends, include Enhanced and MPMA sends, of a block Returns the dispenses of a block + Parameters - + block_index: `146` (int, required) - The index of the block to return + + block_index: `147` (int, required) - The index of the block to return + cursor (str, optional) - The last index of the dispenses to return + Default: `None` + limit: `5` (int, optional) - The maximum number of dispenses to return @@ -2455,29 +2454,29 @@ Returns the dispenses of a block { "result": [ { - "tx_index": 33, + "tx_index": 34, "dispense_index": 0, - "tx_hash": "516159be9547a87a0ab0ce652ce9daebb10796eb67509fa50780dca28d813535", - "block_index": 146, - "source": "bcrt1qlm44vh2ynrtqwh8j2mptwrzzfd04czsya4wxcd", - "destination": "bcrt1qlqcrlvw5t7cnj8r9hjl0qq67c2fyk5kvfra90p", + "tx_hash": "6b21482e6e461d42ded8e74826ff88a8b23621baaa45e714c7c2a20457bd6c12", + "block_index": 147, + "source": "bcrt1qeshrsce6vyx833j2p85aesnx0aj9sxjtt79jak", + "destination": "bcrt1qfvucymcd7u04hpd7eafsmxwnashcmaqs54q79p", "asset": "XCP", "dispense_quantity": 666, - "dispenser_tx_hash": "5c8374a3882f222038bbf9a0cce7589e84b790915b9228d66af1a5b0eb61ea2d", + "dispenser_tx_hash": "1e7bea513de78cabf444b974fdb0efb4304b18bd990a889d7a0f8b0e3d21b6ea", "btc_amount": 10000, "confirmed": true, "dispenser": { - "tx_index": 32, - "block_index": 146, - "source": "bcrt1qlm44vh2ynrtqwh8j2mptwrzzfd04czsya4wxcd", + "tx_index": 33, + "block_index": 147, + "source": "bcrt1qeshrsce6vyx833j2p85aesnx0aj9sxjtt79jak", "give_quantity": 1, "escrow_quantity": 10000, "satoshirate": 1, "status": 0, "give_remaining": 9334, - "oracle_address": "bcrt1qlm44vh2ynrtqwh8j2mptwrzzfd04czsya4wxcd", + "oracle_address": "bcrt1qeshrsce6vyx833j2p85aesnx0aj9sxjtt79jak", "last_status_tx_hash": null, - "origin": "bcrt1qlm44vh2ynrtqwh8j2mptwrzzfd04czsya4wxcd", + "origin": "bcrt1qeshrsce6vyx833j2p85aesnx0aj9sxjtt79jak", "dispense_count": 1, "last_status_tx_source": null, "close_block_index": null, @@ -2492,7 +2491,7 @@ Returns the dispenses of a block "satoshirate_normalized": "0.00000001", "satoshi_price_normalized": "0.00000016" }, - "block_time": 1726509701, + "block_time": 1727200827, "asset_info": { "divisible": true, "asset_longname": null, @@ -2514,7 +2513,7 @@ Returns the dispenses of a block Returns the sweeps of a block + Parameters - + block_index: `192` (int, required) - The index of the block to return + + block_index: `193` (int, required) - The index of the block to return + cursor (str, optional) - The last index of the sweeps to return + Default: `None` + limit: `5` (int, optional) - The maximum number of sweeps to return @@ -2532,17 +2531,17 @@ Returns the sweeps of a block { "result": [ { - "tx_index": 58, - "tx_hash": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", - "block_index": 192, - "source": "bcrt1q3ds7n4l97tumdkgcr3vyhe04zaxce8ujr8fmr2", - "destination": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "tx_index": 59, + "tx_hash": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", + "block_index": 193, + "source": "bcrt1q9cf2ed4wk37qye08wlppw39l7prxws7afa3krk", + "destination": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "flags": 1, "status": "valid", "memo": "sweep my assets", "fee_paid": 600000, "confirmed": true, - "block_time": 1726509908, + "block_time": 1727201012, "fee_paid_normalized": "0.00600000" } ], @@ -2576,17 +2575,17 @@ Here is sample API output for each of these transactions: { "result": { "tx_index": 25, - "tx_hash": "0b3452fcb5ee0a881ba450a768e89de4e0c89e297785e478dd6fc844975bec3a", + "tx_hash": "28499c6a50363ce063ee5e7f5de4d43ea5bf86a19dc05ea650443b343c00e258", "block_index": 138, - "block_hash": "453294ea1f1df8257210f9e7a253332b3347be306ceef8957771aff657052d9f", - "block_time": 1726509656, - "source": "bcrt1qlm44vh2ynrtqwh8j2mptwrzzfd04czsya4wxcd", + "block_hash": "52b94d96284b74f21a236b814dc80c27bd7526673be9e9f5f03132ffe82ec736", + "block_time": 1727200790, + "source": "bcrt1qeshrsce6vyx833j2p85aesnx0aj9sxjtt79jak", "destination": null, "btc_amount": 0, "fee": 10000, "data": "1eeea6b9ef40f0428000000000000000000970726963652d555344", "supported": true, - "utxos_info": "0b3452fcb5ee0a881ba450a768e89de4e0c89e297785e478dd6fc844975bec3a:1", + "utxos_info": "28499c6a50363ce063ee5e7f5de4d43ea5bf86a19dc05ea650443b343c00e258:1", "confirmed": true, "unpacked_data": { "message_type": "broadcast", @@ -2610,26 +2609,26 @@ Here is sample API output for each of these transactions: ``` { "result": { - "tx_index": 51, - "tx_hash": "d749fed653092a4854ac8c9773d9610edfb2b12db4c962aa3795cc653e8a624d", - "block_index": 185, - "block_hash": "7bb18fb36cb1bd5cb99d781fabe17b43d4b67ee7530bd6ab46356fdb3e139fa6", - "block_time": 1726509867, - "source": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", - "destination": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "tx_index": 52, + "tx_hash": "c78a916b13975e32514ea6fac0324481adfcc972f1db2cbabb96677db4d026cb", + "block_index": 186, + "block_hash": "68d8ed672f554db585e5508b660624d769c3a49fe8bfc118cf4109c241833983", + "block_time": 1727200982, + "source": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", + "destination": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "btc_amount": 2000, "fee": 10000, - "data": "0b675f8dccad4bdcf4b54ce5aca7ddc442f642d63e518d64ad6068a264fb9894e1ebe20caac209f665277d0ac456ab451b4934a7d86529e24fd43b97535e62746a", + "data": "0b4844c5f31805a95e25af849d3e888b41d4cba82846300010c82895f4072e57f6e2f9612faf4a7e6249958ba9d24aaf9e3d7a70b0dafaa5fb94dc51a088e6cf63", "supported": true, - "utxos_info": "d749fed653092a4854ac8c9773d9610edfb2b12db4c962aa3795cc653e8a624d:0", + "utxos_info": "c78a916b13975e32514ea6fac0324481adfcc972f1db2cbabb96677db4d026cb:0", "confirmed": true, "unpacked_data": { "message_type": "btcpay", "message_type_id": 11, "message_data": { - "tx0_hash": "675f8dccad4bdcf4b54ce5aca7ddc442f642d63e518d64ad6068a264fb9894e1", - "tx1_hash": "ebe20caac209f665277d0ac456ab451b4934a7d86529e24fd43b97535e62746a", - "order_match_id": "675f8dccad4bdcf4b54ce5aca7ddc442f642d63e518d64ad6068a264fb9894e1_ebe20caac209f665277d0ac456ab451b4934a7d86529e24fd43b97535e62746a", + "tx0_hash": "4844c5f31805a95e25af849d3e888b41d4cba82846300010c82895f4072e57f6", + "tx1_hash": "e2f9612faf4a7e6249958ba9d24aaf9e3d7a70b0dafaa5fb94dc51a088e6cf63", + "order_match_id": "4844c5f31805a95e25af849d3e888b41d4cba82846300010c82895f4072e57f6_e2f9612faf4a7e6249958ba9d24aaf9e3d7a70b0dafaa5fb94dc51a088e6cf63", "status": "valid" } }, @@ -2643,24 +2642,24 @@ Here is sample API output for each of these transactions: ``` { "result": { - "tx_index": 56, - "tx_hash": "18a9b72fc9e67470cff556297fa5f3dd95ea7d472693f42d597db7ad598c05ec", - "block_index": 190, - "block_hash": "214a1e1ed38b3e555167f5f21d78c8c3e487ea62d748cd8200a3b3e18f2b6017", - "block_time": 1726509899, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "tx_index": 57, + "tx_hash": "1d314894d90254c43598647c4ebca9b8f3f0d20a522eb8130d9955e95ea1c197", + "block_index": 191, + "block_hash": "6df0e71250aea0de3e29c053f2ca49cc02c029f911a25356f455303c447d0a63", + "block_time": 1727201003, + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "destination": null, "btc_amount": 0, "fee": 10000, - "data": "465e324d551a694d3f6ffc9c67b3db8817d470ba32257047ddee237d3d07c1a1e2", + "data": "4683919cf82dd5eb1e2e1f6d3f3f752d34d41636ed00ab8ff78369eb81475b8e57", "supported": true, - "utxos_info": "18a9b72fc9e67470cff556297fa5f3dd95ea7d472693f42d597db7ad598c05ec:1", + "utxos_info": "1d314894d90254c43598647c4ebca9b8f3f0d20a522eb8130d9955e95ea1c197:1", "confirmed": true, "unpacked_data": { "message_type": "cancel", "message_type_id": 70, "message_data": { - "offer_hash": "5e324d551a694d3f6ffc9c67b3db8817d470ba32257047ddee237d3d07c1a1e2", + "offer_hash": "83919cf82dd5eb1e2e1f6d3f3f752d34d41636ed00ab8ff78369eb81475b8e57", "status": "valid" } }, @@ -2674,18 +2673,18 @@ Here is sample API output for each of these transactions: ``` { "result": { - "tx_index": 59, - "tx_hash": "f79c39d2a2896a86ef0bb2370101c664b69f2b9387afcd377d8226b839d419ce", - "block_index": 193, - "block_hash": "0c078dccb9971fd739e4646df2613ddf86bea7f006a0ec0aabf2253f9f835f58", - "block_time": 1726509912, - "source": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "tx_index": 60, + "tx_hash": "da0a0e76bfc982e2bbed2679a71f4e2d3ebc01140b448f430bb01b50f7ceaabb", + "block_index": 194, + "block_hash": "52ace614bdf700970fae116cbd930af95fe09c4faee117d3d3c0c24860eedf93", + "block_time": 1727201016, + "source": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "destination": null, "btc_amount": 0, "fee": 10000, "data": "6e0000000000000001000000000000000164657374726f79", "supported": true, - "utxos_info": "f79c39d2a2896a86ef0bb2370101c664b69f2b9387afcd377d8226b839d419ce:1", + "utxos_info": "da0a0e76bfc982e2bbed2679a71f4e2d3ebc01140b448f430bb01b50f7ceaabb:1", "confirmed": true, "unpacked_data": { "message_type": "destroy", @@ -2714,18 +2713,18 @@ Here is sample API output for each of these transactions: ``` { "result": { - "tx_index": 32, - "tx_hash": "5c8374a3882f222038bbf9a0cce7589e84b790915b9228d66af1a5b0eb61ea2d", - "block_index": 145, - "block_hash": "08bdc1edfb36f1d85bc67defec2acfd268f4883895a7c3d6fe6817a5438a4f25", - "block_time": 1726509697, - "source": "bcrt1qlm44vh2ynrtqwh8j2mptwrzzfd04czsya4wxcd", + "tx_index": 33, + "tx_hash": "1e7bea513de78cabf444b974fdb0efb4304b18bd990a889d7a0f8b0e3d21b6ea", + "block_index": 146, + "block_hash": "215f39f41a87d5f6354042ac92070b24c411fc9bbb411f2c1764a69a9b49f415", + "block_time": 1727200823, + "source": "bcrt1qeshrsce6vyx833j2p85aesnx0aj9sxjtt79jak", "destination": null, "btc_amount": 0, "fee": 10000, - "data": "0c00000000000000010000000000000001000000000000271000000000000000010080feeb565d4498d6075cf256c2b70c424b5f5c0a04", + "data": "0c00000000000000010000000000000001000000000000271000000000000000010080cc2e38633a610c78c64a09e9dcc2667f64581a4b", "supported": true, - "utxos_info": "5c8374a3882f222038bbf9a0cce7589e84b790915b9228d66af1a5b0eb61ea2d:1", + "utxos_info": "1e7bea513de78cabf444b974fdb0efb4304b18bd990a889d7a0f8b0e3d21b6ea:1", "confirmed": true, "unpacked_data": { "message_type": "dispenser", @@ -2737,7 +2736,7 @@ Here is sample API output for each of these transactions: "mainchainrate": 1, "dispenser_status": 0, "action_address": null, - "oracle_address": "bcrt1qlm44vh2ynrtqwh8j2mptwrzzfd04czsya4wxcd", + "oracle_address": "bcrt1qeshrsce6vyx833j2p85aesnx0aj9sxjtt79jak", "status": "valid", "asset_info": { "divisible": true, @@ -2760,18 +2759,18 @@ Here is sample API output for each of these transactions: ``` { "result": { - "tx_index": 33, - "tx_hash": "516159be9547a87a0ab0ce652ce9daebb10796eb67509fa50780dca28d813535", - "block_index": 146, - "block_hash": "4de0e42039680e9c42b597fd03acd28e9a5efe8146eeb01f3fdc17e0544a27e8", - "block_time": 1726509701, - "source": "bcrt1qlqcrlvw5t7cnj8r9hjl0qq67c2fyk5kvfra90p", - "destination": "bcrt1qlm44vh2ynrtqwh8j2mptwrzzfd04czsya4wxcd", + "tx_index": 34, + "tx_hash": "6b21482e6e461d42ded8e74826ff88a8b23621baaa45e714c7c2a20457bd6c12", + "block_index": 147, + "block_hash": "4b369e0db5f19121d207f0d2d84fd61e32d377921941ee8f24f922a7707f3929", + "block_time": 1727200827, + "source": "bcrt1qfvucymcd7u04hpd7eafsmxwnashcmaqs54q79p", + "destination": "bcrt1qeshrsce6vyx833j2p85aesnx0aj9sxjtt79jak", "btc_amount": 10000, "fee": 0, "data": "0d00", "supported": true, - "utxos_info": "516159be9547a87a0ab0ce652ce9daebb10796eb67509fa50780dca28d813535:0", + "utxos_info": "6b21482e6e461d42ded8e74826ff88a8b23621baaa45e714c7c2a20457bd6c12:0", "confirmed": true, "unpacked_data": { "message_type": "dispense", @@ -2790,18 +2789,18 @@ Here is sample API output for each of these transactions: ``` { "result": { - "tx_index": 40, - "tx_hash": "65e4ec441796883270c7bb0f18ca610e54b1ad0b3ae8a33e572bca985f65ee00", - "block_index": 153, - "block_hash": "7e887e2e71767fce9ed7d481be87683d41eaed909607ad9a84d0cdaf822fd36f", - "block_time": 1726509732, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "tx_index": 41, + "tx_hash": "1b9303b3959067c0857fe1abb4fdd4b3684c7534c12691382004cc31a9afcca4", + "block_index": 154, + "block_hash": "57e37c492b79206924ab8071e1d0686daf1d8a37ede6747cf3cd7ce3de8b0998", + "block_time": 1727200857, + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "destination": null, "btc_amount": 0, "fee": 10000, "data": "320000000005f5e100000000182b37176e0000000000000001", "supported": true, - "utxos_info": "65e4ec441796883270c7bb0f18ca610e54b1ad0b3ae8a33e572bca985f65ee00:1", + "utxos_info": "1b9303b3959067c0857fe1abb4fdd4b3684c7534c12691382004cc31a9afcca4:1", "confirmed": true, "unpacked_data": { "message_type": "dividend", @@ -2814,7 +2813,7 @@ Here is sample API output for each of these transactions: "asset_info": { "asset_longname": null, "description": "My super asset A", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, @@ -2838,18 +2837,18 @@ Here is sample API output for each of these transactions: ``` { "result": { - "tx_index": 46, - "tx_hash": "3f80ba6dc66be4e5b604bbf8e1e2007161960069d871f7cb00b1d24f9f090491", - "block_index": 159, - "block_hash": "6ba4729ba0f996337647b47d49e898b2ef75467f46f5f7e51e78ee5eb306574f", - "block_time": 1726509780, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "tx_index": 47, + "tx_hash": "efd20bb15eb6a7ce22645a0fb33b1873d00dc0cdeb9533d37037e0fd6a63f512", + "block_index": 160, + "block_hash": "1c1775c804631e7bfa62aadcb237feb569971eda60cf7194e1061f1e210fcced", + "block_time": 1727200884, + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "destination": null, "btc_amount": 0, "fee": 10000, "data": "17015308217a15c0c2000000174876e80001000016987952c23e7c7c94dd9fd148af3f5276f9092bbbc2e941207375626e756d65726963206173736574", "supported": true, - "utxos_info": "3f80ba6dc66be4e5b604bbf8e1e2007161960069d871f7cb00b1d24f9f090491:1", + "utxos_info": "efd20bb15eb6a7ce22645a0fb33b1873d00dc0cdeb9533d37037e0fd6a63f512:1", "confirmed": true, "unpacked_data": { "message_type": "issuance", @@ -2880,18 +2879,18 @@ Here is sample API output for each of these transactions: ``` { "result": { - "tx_index": 57, - "tx_hash": "7b7048040c893c69892bd088ce48db79b96b9c1d7221b50d903064ff5a1ed232", - "block_index": 191, - "block_hash": "44555f5ae4cd1f61f3df9e675ad106b01fca685a76eff37b685758a1f234afb2", - "block_time": 1726509903, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "tx_index": 58, + "tx_hash": "132d67269995e3bc9e40d83bc0badefad56d85f0229eedfb0e2ccdf829d03d28", + "block_index": 192, + "block_hash": "7aa8cd7d46e84e234d53f8c14736afd98d1d5b8441f4f425fe8c6a52c3f33c87", + "block_time": 1727201008, + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "destination": null, "btc_amount": 0, "fee": 10000, "data": "0a000000000000000100000000000003e8000000000000000000000000000003e800150000000000000000", "supported": true, - "utxos_info": "7b7048040c893c69892bd088ce48db79b96b9c1d7221b50d903064ff5a1ed232:1", + "utxos_info": "132d67269995e3bc9e40d83bc0badefad56d85f0229eedfb0e2ccdf829d03d28:1", "confirmed": true, "unpacked_data": { "message_type": "order", @@ -2933,18 +2932,18 @@ Here is sample API output for each of these transactions: ``` { "result": { - "tx_index": 53, - "tx_hash": "f96235259f9722ca1558a6601a39e235c6a60fa33d67cc9e5039890d0ab2fe03", - "block_index": 187, - "block_hash": "12f9ec3b5f8f740e948b461f074122b7c4d9311edf891749685e732e798b4124", - "block_time": 1726509886, - "source": "bcrt1q3ds7n4l97tumdkgcr3vyhe04zaxce8ujr8fmr2", + "tx_index": 54, + "tx_hash": "e7989369eefaec09cec5770c6128eb548023225e666d57bbed74b3d03240e9c3", + "block_index": 188, + "block_hash": "5a0746e19a06039da3fef72fef1b1421c66007f6d63a0685078d4bdba95c873e", + "block_time": 1727200991, + "source": "bcrt1q9cf2ed4wk37qye08wlppw39l7prxws7afa3krk", "destination": null, "btc_amount": 0, "fee": 10000, - "data": "020000000000000001000000000000271080ae2b0c1095bbdf23747f76b242be716817701b78", + "data": "0200000000000000010000000000002710806c45b04730370dc7e778ed200c19f22a08c064a9", "supported": true, - "utxos_info": "f96235259f9722ca1558a6601a39e235c6a60fa33d67cc9e5039890d0ab2fe03:1", + "utxos_info": "e7989369eefaec09cec5770c6128eb548023225e666d57bbed74b3d03240e9c3:1", "confirmed": true, "unpacked_data": { "message_type": "enhanced_send", @@ -2952,7 +2951,7 @@ Here is sample API output for each of these transactions: "message_data": { "asset": "XCP", "quantity": 10000, - "address": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "address": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "memo": null, "asset_info": { "divisible": true, @@ -2974,18 +2973,18 @@ Here is sample API output for each of these transactions: ``` { "result": { - "tx_index": 54, - "tx_hash": "e8fda956958ed7de0a98e42d8d28349b9c7b5e20da375c185c5830526df6594f", - "block_index": 188, - "block_hash": "6af6f23af835e0b3e7515a3d98e43a2ff75b7baf8d552fe27cbaf82dc8974780", - "block_time": 1726509890, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "tx_index": 55, + "tx_hash": "4cd813fae2558e89f2f9411f38daa7d4c10c94a267daa38155cf18fb4d9fd055", + "block_index": 189, + "block_hash": "73be93be2c91012204c8a1e8321475345c6c634627235302e1e7abe56fcb5755", + "block_time": 1727200995, + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "destination": null, "btc_amount": 0, "fee": 10000, - "data": "0300038057841d54055a90ed31a47e9821fd3118e6e78592808b61e9d7e5f2f9b6d9181c584be5f5174d8c9f9280ae2b0c1095bbdf23747f76b242be716817701b78400000060acdc5db9400000000000000290000000000000005200000000000000020000000000000001400", + "data": "0300038054c1ba334a1912f96353f110938927c645ff9064802e12acb6aeb47c0265e777c21744bff0466743dd806c45b04730370dc7e778ed200c19f22a08c064a9400000060acdc5db9400000000000000290000000000000005200000000000000020000000000000001400", "supported": true, - "utxos_info": "e8fda956958ed7de0a98e42d8d28349b9c7b5e20da375c185c5830526df6594f:0", + "utxos_info": "4cd813fae2558e89f2f9411f38daa7d4c10c94a267daa38155cf18fb4d9fd055:0", "confirmed": true, "unpacked_data": { "message_type": "mpma_send", @@ -2993,14 +2992,14 @@ Here is sample API output for each of these transactions: "message_data": [ { "asset": "MYASSETA", - "destination": "bcrt1q3ds7n4l97tumdkgcr3vyhe04zaxce8ujr8fmr2", + "destination": "bcrt1q9cf2ed4wk37qye08wlppw39l7prxws7afa3krk", "quantity": 10, "memo": null, "memo_is_hex": null, "asset_info": { "asset_longname": null, "description": "My super asset A", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, @@ -3008,7 +3007,7 @@ Here is sample API output for each of these transactions: }, { "asset": "XCP", - "destination": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", + "destination": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", "quantity": 10, "memo": null, "memo_is_hex": null, @@ -3033,24 +3032,24 @@ Here is sample API output for each of these transactions: ``` { "result": { - "tx_index": 58, - "tx_hash": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", - "block_index": 192, - "block_hash": "356d63b3ac8ed95b008257f61aee3850ec360d8ac8d808d0b0e0ceab8de6ee1e", - "block_time": 1726509908, - "source": "bcrt1q3ds7n4l97tumdkgcr3vyhe04zaxce8ujr8fmr2", + "tx_index": 59, + "tx_hash": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", + "block_index": 193, + "block_hash": "72aff9bcfbc6a9f61cd1c192dc2322be91c061a847e81cc3b45854c9af31a6d5", + "block_time": 1727201012, + "source": "bcrt1q9cf2ed4wk37qye08wlppw39l7prxws7afa3krk", "destination": null, "btc_amount": 0, "fee": 10000, - "data": "0480ae2b0c1095bbdf23747f76b242be716817701b78017377656570206d7920617373657473", + "data": "04806c45b04730370dc7e778ed200c19f22a08c064a9017377656570206d7920617373657473", "supported": true, - "utxos_info": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b:1", + "utxos_info": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774:1", "confirmed": true, "unpacked_data": { "message_type": "sweep", "message_type_id": 4, "message_data": { - "destination": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "destination": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "flags": 1, "memo": "sweep my assets" } @@ -3065,7 +3064,7 @@ Here is sample API output for each of these transactions: Returns the list of the last ten transactions + Parameters - + cursor: `59` (str, optional) - The index of the most recent transactions to return + + cursor: `60` (str, optional) - The index of the most recent transactions to return + Default: `None` + limit: `2` (int, optional) - The number of transactions to return + Default: `10` @@ -3082,18 +3081,18 @@ Returns the list of the last ten transactions { "result": [ { - "tx_index": 59, - "tx_hash": "f79c39d2a2896a86ef0bb2370101c664b69f2b9387afcd377d8226b839d419ce", - "block_index": 193, - "block_hash": "0c078dccb9971fd739e4646df2613ddf86bea7f006a0ec0aabf2253f9f835f58", - "block_time": 1726509912, - "source": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "tx_index": 60, + "tx_hash": "da0a0e76bfc982e2bbed2679a71f4e2d3ebc01140b448f430bb01b50f7ceaabb", + "block_index": 194, + "block_hash": "52ace614bdf700970fae116cbd930af95fe09c4faee117d3d3c0c24860eedf93", + "block_time": 1727201016, + "source": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "destination": null, "btc_amount": 0, "fee": 10000, "data": "6e0000000000000001000000000000000164657374726f79", "supported": true, - "utxos_info": "f79c39d2a2896a86ef0bb2370101c664b69f2b9387afcd377d8226b839d419ce:1", + "utxos_info": "da0a0e76bfc982e2bbed2679a71f4e2d3ebc01140b448f430bb01b50f7ceaabb:1", "confirmed": true, "unpacked_data": { "message_type": "destroy", @@ -3115,24 +3114,24 @@ Returns the list of the last ten transactions "btc_amount_normalized": "0.00000000" }, { - "tx_index": 58, - "tx_hash": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", - "block_index": 192, - "block_hash": "356d63b3ac8ed95b008257f61aee3850ec360d8ac8d808d0b0e0ceab8de6ee1e", - "block_time": 1726509908, - "source": "bcrt1q3ds7n4l97tumdkgcr3vyhe04zaxce8ujr8fmr2", + "tx_index": 59, + "tx_hash": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", + "block_index": 193, + "block_hash": "72aff9bcfbc6a9f61cd1c192dc2322be91c061a847e81cc3b45854c9af31a6d5", + "block_time": 1727201012, + "source": "bcrt1q9cf2ed4wk37qye08wlppw39l7prxws7afa3krk", "destination": null, "btc_amount": 0, "fee": 10000, - "data": "0480ae2b0c1095bbdf23747f76b242be716817701b78017377656570206d7920617373657473", + "data": "04806c45b04730370dc7e778ed200c19f22a08c064a9017377656570206d7920617373657473", "supported": true, - "utxos_info": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b:1", + "utxos_info": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774:1", "confirmed": true, "unpacked_data": { "message_type": "sweep", "message_type_id": 4, "message_data": { - "destination": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "destination": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "flags": 1, "memo": "sweep my assets" } @@ -3140,8 +3139,8 @@ Returns the list of the last ten transactions "btc_amount_normalized": "0.00000000" } ], - "next_cursor": 57, - "result_count": 60 + "next_cursor": 58, + "result_count": 61 } ``` @@ -3150,7 +3149,7 @@ Returns the list of the last ten transactions Returns Counterparty information from a raw transaction in hex format. + Parameters - + rawtransaction: `0200000000010113f4625e1516c944a8463d27d826a53f0fcbba50aced60bf5eb00888663ce56e0000000000ffffffff020000000000000000356a332354da0a2986e439d6bf246d84f86ee1f3d79bd9604d9ff8543c944eead26bc52dcc129be40851375a2c04808350b9e7608862f0ca052a010000001600147ed28f21558ee8ecd78a339105e7756213901b6e024730440220192675f05c9144776192e2c92db009e8ed5fcedd0c45fbcda89a84a2320f2af30220196bac09bfaedbea9e4458ec76ad50697d0cb659327702787f2ceb8f11832daf0121038cf659b1eef29fa8241c63dfa9eab3e1ef4f14fd7d99ee18746a9a938707616900000000` (str, required) - Raw transaction in hex format + + rawtransaction: `0200000000010614f083b09bb6febdb3c81016ad99dad6ce853dfb3c91f251c0c0c4672d63ad620000000000ffffffff0df09d9a242b435b364ab264836c57de89b876833215f596a8f6f8de93f683900000000000ffffffff3154fc48442d953119650689580360b7bf92316dd8931e26a4316e941c995ffe0000000000ffffffff809160fa9715547fcfe74787eec783669aff6a57da49f262a225ebed0f08f56d0000000000ffffffffe20fa5033fab96ae3b54e859d7d9ecd42ee0bdd68542b55422b4ec5ff97aca9d0000000000ffffffff29b30fbffa10b0a8c0e33030fb2dab887284d64b90a496fd205e5fbfe3217d000000000000ffffffff04e80300000000000069512103891f35fe17a00335c7118e56ee2b6368073ae54657b2361249e48365594522552102e6bfdd833bb23fcdda57f332d9c3ce8b9a7f148904fee72524f4ac7bca49824b2103e9ae92eabb90ca74fe993bac25a34afb53dbfd9ee15d1434f46704cbef38ec9753aee80300000000000069512103891f35fe17a00335c7d5692d835faecbc65af494ca7825e35971008f5adb4930210276db5dad291e894a6e2bf1573eb40c99fec0e4cf63bd3aa568b11c3cfa7e8fb32103e9ae92eabb90ca74fe993bac25a34afb53dbfd9ee15d1434f46704cbef38ec9753aee80300000000000069512103bf1f35fe17a00335c7129a556e7fa2d23470fc54aed165e359770a429f00dd25210376db5dad291e89636e2bf1573eb40c9cdec0e4cf63bd3aa548b11c3cfa7e8fdd2103e9ae92eabb90ca74fe993bac25a34afb53dbfd9ee15d1434f46704cbef38ec9753ae387923fc060000001600147d93ff5e96d2aa8302b09d3661285dec7e9d27ab02473044022063be76625e8f989777e509375b68761cde61e90c730377f4ae9a963fbbd1ea810220099087fd49f101fb577597503304cff40c3ed518d732cb114e31625dbd8411c8012103e9ae92eabb90ca74fe993bac25a34afb53dbfd9ee15d1434f46704cbef38ec9702473044022047195342c7f93646a9f52027eebee760e7a587b73aa1af4cf3409fa12ada28f302206904bd6c03783bba0c3c5db79a936015192d8d2ec9a75e268b855cd63c8e7412012103e9ae92eabb90ca74fe993bac25a34afb53dbfd9ee15d1434f46704cbef38ec970247304402204d0d8f141eeabaf284be3385c9a884e125d944f9349e796fc37afd8cbf97917102202b6fb1b039705f72ee8c5e885fc7054c0ae49bd645fa08f801cbbf307bdca2f6012103e9ae92eabb90ca74fe993bac25a34afb53dbfd9ee15d1434f46704cbef38ec970247304402200730ee1653a76aa7b97a3ae5b0de69f3a4c2cb3b7b60cdc7e98008d81f38714602203fb41b3edefbf12d90b73656572e6bf7acdcab6456cc63196ccf3d03d41d04ab012103e9ae92eabb90ca74fe993bac25a34afb53dbfd9ee15d1434f46704cbef38ec9702473044022051d0d555b9a1b3e39c44095140403e81ad6fe13c5bca36d75c0794c5e3f6786102202434ff051d31cd22b6b854930f66f52b28a3db6cffe017ff68798aa1cd843694012103e9ae92eabb90ca74fe993bac25a34afb53dbfd9ee15d1434f46704cbef38ec970247304402203122b69adf43edab2670f1a5c95004d71c4d1a6c970b854ba4d0a186245686d902207d1bc7dd75c3c081ed74b7164c0f3d858b518542ad3f2637c5296961e8e35a33012103e9ae92eabb90ca74fe993bac25a34afb53dbfd9ee15d1434f46704cbef38ec9700000000` (str, required) - Raw transaction in hex format + block_index (int, optional) - Block index mandatory for transactions before block 335000 + Default: `None` + verbose: `true` (bool, optional) - Include asset and dispenser info and normalized quantities in the response. @@ -3163,18 +3162,53 @@ Returns Counterparty information from a raw transaction in hex format. ``` { "result": { - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "destination": null, "btc_amount": 0, "fee": 10000, - "data": "0a000000000000000100000000000003e8000000000000000000000000000003e800150000000000000000", + "data": "0300038054c1ba334a1912f96353f110938927c645ff9064802e12acb6aeb47c0265e777c21744bff0466743dd806c45b04730370dc7e778ed200c19f22a08c064a9400000060acdc5db9400000000000000290000000000000005200000000000000020000000000000001400", "decoded_tx": { "version": 2, "segwit": true, "coinbase": false, "vin": [ { - "hash": "13f4625e1516c944a8463d27d826a53f0fcbba50aced60bf5eb00888663ce56e", + "hash": "14f083b09bb6febdb3c81016ad99dad6ce853dfb3c91f251c0c0c4672d63ad62", + "n": 0, + "script_sig": "", + "sequence": 4294967295, + "coinbase": false + }, + { + "hash": "0df09d9a242b435b364ab264836c57de89b876833215f596a8f6f8de93f68390", + "n": 0, + "script_sig": "", + "sequence": 4294967295, + "coinbase": false + }, + { + "hash": "3154fc48442d953119650689580360b7bf92316dd8931e26a4316e941c995ffe", + "n": 0, + "script_sig": "", + "sequence": 4294967295, + "coinbase": false + }, + { + "hash": "809160fa9715547fcfe74787eec783669aff6a57da49f262a225ebed0f08f56d", + "n": 0, + "script_sig": "", + "sequence": 4294967295, + "coinbase": false + }, + { + "hash": "e20fa5033fab96ae3b54e859d7d9ecd42ee0bdd68542b55422b4ec5ff97aca9d", + "n": 0, + "script_sig": "", + "sequence": 4294967295, + "coinbase": false + }, + { + "hash": "29b30fbffa10b0a8c0e33030fb2dab887284d64b90a496fd205e5fbfe3217d00", "n": 0, "script_sig": "", "sequence": 4294967295, @@ -3183,50 +3217,149 @@ Returns Counterparty information from a raw transaction in hex format. ], "vout": [ { - "value": 0, - "script_pub_key": "6a332354da0a2986e439d6bf246d84f86ee1f3d79bd9604d9ff8543c944eead26bc52dcc129be40851375a2c04808350b9e7608862" + "value": 1000, + "script_pub_key": "512103891f35fe17a00335c7118e56ee2b6368073ae54657b2361249e48365594522552102e6bfdd833bb23fcdda57f332d9c3ce8b9a7f148904fee72524f4ac7bca49824b2103e9ae92eabb90ca74fe993bac25a34afb53dbfd9ee15d1434f46704cbef38ec9753ae" }, { - "value": 4999990000, - "script_pub_key": "00147ed28f21558ee8ecd78a339105e7756213901b6e" + "value": 1000, + "script_pub_key": "512103891f35fe17a00335c7d5692d835faecbc65af494ca7825e35971008f5adb4930210276db5dad291e894a6e2bf1573eb40c99fec0e4cf63bd3aa568b11c3cfa7e8fb32103e9ae92eabb90ca74fe993bac25a34afb53dbfd9ee15d1434f46704cbef38ec9753ae" + }, + { + "value": 1000, + "script_pub_key": "512103bf1f35fe17a00335c7129a556e7fa2d23470fc54aed165e359770a429f00dd25210376db5dad291e89636e2bf1573eb40c9cdec0e4cf63bd3aa548b11c3cfa7e8fdd2103e9ae92eabb90ca74fe993bac25a34afb53dbfd9ee15d1434f46704cbef38ec9753ae" + }, + { + "value": 29999987000, + "script_pub_key": "00147d93ff5e96d2aa8302b09d3661285dec7e9d27ab" } ], "vtxinwit": [ - "30440220192675f05c9144776192e2c92db009e8ed5fcedd0c45fbcda89a84a2320f2af30220196bac09bfaedbea9e4458ec76ad50697d0cb659327702787f2ceb8f11832daf01", - "038cf659b1eef29fa8241c63dfa9eab3e1ef4f14fd7d99ee18746a9a9387076169" + "3044022063be76625e8f989777e509375b68761cde61e90c730377f4ae9a963fbbd1ea810220099087fd49f101fb577597503304cff40c3ed518d732cb114e31625dbd8411c801", + "03e9ae92eabb90ca74fe993bac25a34afb53dbfd9ee15d1434f46704cbef38ec97", + "3044022047195342c7f93646a9f52027eebee760e7a587b73aa1af4cf3409fa12ada28f302206904bd6c03783bba0c3c5db79a936015192d8d2ec9a75e268b855cd63c8e741201", + "03e9ae92eabb90ca74fe993bac25a34afb53dbfd9ee15d1434f46704cbef38ec97", + "304402204d0d8f141eeabaf284be3385c9a884e125d944f9349e796fc37afd8cbf97917102202b6fb1b039705f72ee8c5e885fc7054c0ae49bd645fa08f801cbbf307bdca2f601", + "03e9ae92eabb90ca74fe993bac25a34afb53dbfd9ee15d1434f46704cbef38ec97", + "304402200730ee1653a76aa7b97a3ae5b0de69f3a4c2cb3b7b60cdc7e98008d81f38714602203fb41b3edefbf12d90b73656572e6bf7acdcab6456cc63196ccf3d03d41d04ab01", + "03e9ae92eabb90ca74fe993bac25a34afb53dbfd9ee15d1434f46704cbef38ec97", + "3044022051d0d555b9a1b3e39c44095140403e81ad6fe13c5bca36d75c0794c5e3f6786102202434ff051d31cd22b6b854930f66f52b28a3db6cffe017ff68798aa1cd84369401", + "03e9ae92eabb90ca74fe993bac25a34afb53dbfd9ee15d1434f46704cbef38ec97", + "304402203122b69adf43edab2670f1a5c95004d71c4d1a6c970b854ba4d0a186245686d902207d1bc7dd75c3c081ed74b7164c0f3d858b518542ad3f2637c5296961e8e35a3301", + "03e9ae92eabb90ca74fe993bac25a34afb53dbfd9ee15d1434f46704cbef38ec97" ], "lock_time": 0, - "tx_hash": "7b7048040c893c69892bd088ce48db79b96b9c1d7221b50d903064ff5a1ed232", - "tx_id": "7b7048040c893c69892bd088ce48db79b96b9c1d7221b50d903064ff5a1ed232" + "tx_hash": "4cd813fae2558e89f2f9411f38daa7d4c10c94a267daa38155cf18fb4d9fd055", + "tx_id": "4cd813fae2558e89f2f9411f38daa7d4c10c94a267daa38155cf18fb4d9fd055" }, "unpacked_data": { - "message_type": "order", - "message_type_id": 10, - "message_data": { - "give_asset": "XCP", - "give_quantity": 1000, - "get_asset": "BTC", - "get_quantity": 1000, - "expiration": 21, - "fee_required": 0, - "status": "open", - "give_asset_info": { + "message_type": "mpma_send", + "message_type_id": 3, + "message_data": [ + { + "asset": "MYASSETA", + "destination": "bcrt1q9cf2ed4wk37qye08wlppw39l7prxws7afa3krk", + "quantity": 10, + "memo": null, + "memo_is_hex": null, + "asset_info": { + "asset_longname": null, + "description": "My super asset A", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "divisible": true, + "locked": false + }, + "quantity_normalized": "0.00000010" + }, + { + "asset": "XCP", + "destination": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", + "quantity": 10, + "memo": null, + "memo_is_hex": null, + "asset_info": { + "divisible": true, + "asset_longname": null, + "description": "The Counterparty protocol native currency", + "locked": true, + "issuer": null + }, + "quantity_normalized": "0.00000010" + } + ] + }, + "btc_amount_normalized": "0.00000000" + } + } + ``` + +### Info By Tx Hash [GET /v2/transactions/{tx_hash}/info{?verbose}{&show_unconfirmed}] + +Returns Counterparty information from a transaction hash. + ++ Parameters + + tx_hash: `044206e67491ff5d4c325bca6bbf5704dfbc3794e8948a39aae3ab0e11b23e2a` (str, required) - Transaction hash + + verbose: `true` (bool, optional) - Include asset and dispenser info and normalized quantities in the response. + + Default: `false` + + show_unconfirmed (bool, optional) - Include results from Mempool. + + Default: `false` + ++ Response 200 (application/json) + + ``` + { + "result": { + "source": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", + "destination": null, + "btc_amount": 0, + "fee": 10000, + "data": "0200000000000000010000000000002710802e12acb6aeb47c0265e777c21744bff0466743dd", + "decoded_tx": { + "version": 2, + "segwit": true, + "coinbase": false, + "vin": [ + { + "hash": "d8bd35840ef462d4d8ffb6ffcc1987a2d498d242b5e85de32a26d502b84dac99", + "n": 1, + "script_sig": "", + "sequence": 4294967295, + "coinbase": false + } + ], + "vout": [ + { + "value": 0, + "script_pub_key": "6a2eac5cd552e0d9ff14fb9826f766e91d711f9aa0abece8791ca82905ca10e0a891f3e35ab723de58639c1b773ad606" + }, + { + "value": 4999955000, + "script_pub_key": "00146c45b04730370dc7e778ed200c19f22a08c064a9" + } + ], + "vtxinwit": [ + "304402206dfd3dfa3a68eec239ebd85d1f37fb2b2f0d5d5f2d430a4fc1ed186aded3a46602203b2e4f6abe92d26849955a89d6f2c180cdb55802755da5f8447f0c03f578347501", + "03b5e165703c3ef7b3eb8feb32c82da0679166b81eae0830c1d0d0803fe78048b0" + ], + "lock_time": 0, + "tx_hash": "044206e67491ff5d4c325bca6bbf5704dfbc3794e8948a39aae3ab0e11b23e2a", + "tx_id": "044206e67491ff5d4c325bca6bbf5704dfbc3794e8948a39aae3ab0e11b23e2a" + }, + "unpacked_data": { + "message_type": "enhanced_send", + "message_type_id": 2, + "message_data": { + "asset": "XCP", + "quantity": 10000, + "address": "bcrt1q9cf2ed4wk37qye08wlppw39l7prxws7afa3krk", + "memo": null, + "asset_info": { "divisible": true, "asset_longname": null, "description": "The Counterparty protocol native currency", "locked": true, "issuer": null }, - "get_asset_info": { - "divisible": true, - "asset_longname": null, - "description": "The Bitcoin cryptocurrency", - "locked": false, - "issuer": null - }, - "give_quantity_normalized": "0.00001000", - "get_quantity_normalized": "0.00001000", - "fee_required_normalized": "0.00000000" + "quantity_normalized": "0.00010000" } }, "btc_amount_normalized": "0.00000000" @@ -3266,7 +3399,7 @@ Unpacks Counterparty data in hex format and returns the message type and data. Returns a transaction by its index. + Parameters - + tx_index: `59` (int, required) - The index of the transaction + + tx_index: `60` (int, required) - The index of the transaction + verbose: `true` (bool, optional) - Include asset and dispenser info and normalized quantities in the response. + Default: `false` + show_unconfirmed (bool, optional) - Include results from Mempool. @@ -3277,18 +3410,18 @@ Returns a transaction by its index. ``` { "result": { - "tx_index": 59, - "tx_hash": "f79c39d2a2896a86ef0bb2370101c664b69f2b9387afcd377d8226b839d419ce", - "block_index": 193, - "block_hash": "0c078dccb9971fd739e4646df2613ddf86bea7f006a0ec0aabf2253f9f835f58", - "block_time": 1726509912, - "source": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "tx_index": 60, + "tx_hash": "da0a0e76bfc982e2bbed2679a71f4e2d3ebc01140b448f430bb01b50f7ceaabb", + "block_index": 194, + "block_hash": "52ace614bdf700970fae116cbd930af95fe09c4faee117d3d3c0c24860eedf93", + "block_time": 1727201016, + "source": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "destination": null, "btc_amount": 0, "fee": 10000, "data": "6e0000000000000001000000000000000164657374726f79", "supported": true, - "utxos_info": "f79c39d2a2896a86ef0bb2370101c664b69f2b9387afcd377d8226b839d419ce:1", + "utxos_info": "da0a0e76bfc982e2bbed2679a71f4e2d3ebc01140b448f430bb01b50f7ceaabb:1", "confirmed": true, "unpacked_data": { "message_type": "destroy", @@ -3317,7 +3450,7 @@ Returns a transaction by its index. Returns a transaction by its hash. + Parameters - + tx_hash: `f79c39d2a2896a86ef0bb2370101c664b69f2b9387afcd377d8226b839d419ce` (str, required) - The hash of the transaction + + tx_hash: `da0a0e76bfc982e2bbed2679a71f4e2d3ebc01140b448f430bb01b50f7ceaabb` (str, required) - The hash of the transaction + verbose: `true` (bool, optional) - Include asset and dispenser info and normalized quantities in the response. + Default: `false` + show_unconfirmed (bool, optional) - Include results from Mempool. @@ -3328,18 +3461,18 @@ Returns a transaction by its hash. ``` { "result": { - "tx_index": 59, - "tx_hash": "f79c39d2a2896a86ef0bb2370101c664b69f2b9387afcd377d8226b839d419ce", - "block_index": 193, - "block_hash": "0c078dccb9971fd739e4646df2613ddf86bea7f006a0ec0aabf2253f9f835f58", - "block_time": 1726509912, - "source": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "tx_index": 60, + "tx_hash": "da0a0e76bfc982e2bbed2679a71f4e2d3ebc01140b448f430bb01b50f7ceaabb", + "block_index": 194, + "block_hash": "52ace614bdf700970fae116cbd930af95fe09c4faee117d3d3c0c24860eedf93", + "block_time": 1727201016, + "source": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "destination": null, "btc_amount": 0, "fee": 10000, "data": "6e0000000000000001000000000000000164657374726f79", "supported": true, - "utxos_info": "f79c39d2a2896a86ef0bb2370101c664b69f2b9387afcd377d8226b839d419ce:1", + "utxos_info": "da0a0e76bfc982e2bbed2679a71f4e2d3ebc01140b448f430bb01b50f7ceaabb:1", "confirmed": true, "unpacked_data": { "message_type": "destroy", @@ -3368,7 +3501,7 @@ Returns a transaction by its hash. Returns the events of a transaction + Parameters - + tx_index: `58` (int, required) - The index of the transaction to return + + tx_index: `59` (int, required) - The index of the transaction to return + event_name (str, optional) - Comma separated list of events to return + Default: `None` + cursor (str, optional) - The last event index to return @@ -3388,51 +3521,51 @@ Returns the events of a transaction { "result": [ { - "event_index": 528, + "event_index": 535, "event": "TRANSACTION_PARSED", "params": { "supported": true, - "tx_hash": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", - "tx_index": 58 + "tx_hash": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", + "tx_index": 59 }, - "tx_hash": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", - "block_index": 192, - "block_time": 1726509908 + "tx_hash": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", + "block_index": 193, + "block_time": 1727201012 }, { - "event_index": 527, + "event_index": 534, "event": "SWEEP", "params": { - "block_index": 192, - "destination": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "block_index": 193, + "destination": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "fee_paid": 600000, "flags": 1, "memo": "sweep my assets", - "source": "bcrt1q3ds7n4l97tumdkgcr3vyhe04zaxce8ujr8fmr2", + "source": "bcrt1q9cf2ed4wk37qye08wlppw39l7prxws7afa3krk", "status": "valid", - "tx_hash": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", - "tx_index": 58, - "block_time": 1726509908, + "tx_hash": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", + "tx_index": 59, + "block_time": 1727201012, "fee_paid_normalized": "0.00600000" }, - "tx_hash": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", - "block_index": 192, - "block_time": 1726509908 + "tx_hash": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", + "block_index": 193, + "block_time": 1727201012 }, { - "event_index": 526, + "event_index": 533, "event": "CREDIT", "params": { - "address": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "address": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "asset": "XCP", - "block_index": 192, + "block_index": 193, "calling_function": "sweep", - "event": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", + "event": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", "quantity": 74499387833, - "tx_index": 58, + "tx_index": 59, "utxo": null, "utxo_address": null, - "block_time": 1726509908, + "block_time": 1727201012, "asset_info": { "divisible": true, "asset_longname": null, @@ -3442,24 +3575,24 @@ Returns the events of a transaction }, "quantity_normalized": "744.99388000" }, - "tx_hash": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", - "block_index": 192, - "block_time": 1726509908 + "tx_hash": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", + "block_index": 193, + "block_time": 1727201012 }, { - "event_index": 525, + "event_index": 532, "event": "DEBIT", "params": { "action": "sweep", - "address": "bcrt1q3ds7n4l97tumdkgcr3vyhe04zaxce8ujr8fmr2", + "address": "bcrt1q9cf2ed4wk37qye08wlppw39l7prxws7afa3krk", "asset": "XCP", - "block_index": 192, - "event": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", + "block_index": 193, + "event": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", "quantity": 74499387833, - "tx_index": 58, + "tx_index": 59, "utxo": null, "utxo_address": null, - "block_time": 1726509908, + "block_time": 1727201012, "asset_info": { "divisible": true, "asset_longname": null, @@ -3469,39 +3602,39 @@ Returns the events of a transaction }, "quantity_normalized": "744.99388000" }, - "tx_hash": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", - "block_index": 192, - "block_time": 1726509908 + "tx_hash": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", + "block_index": 193, + "block_time": 1727201012 }, { - "event_index": 524, + "event_index": 531, "event": "CREDIT", "params": { - "address": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "address": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "asset": "MYASSETA", - "block_index": 192, + "block_index": 193, "calling_function": "sweep", - "event": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", + "event": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", "quantity": 10, - "tx_index": 58, + "tx_index": 59, "utxo": null, "utxo_address": null, - "block_time": 1726509908, + "block_time": 1727201012, "asset_info": { "asset_longname": null, "description": "My super asset A", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, "quantity_normalized": "0.00000010" }, - "tx_hash": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", - "block_index": 192, - "block_time": 1726509908 + "tx_hash": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", + "block_index": 193, + "block_time": 1727201012 } ], - "next_cursor": 523, + "next_cursor": 530, "result_count": 10 } ``` @@ -3511,10 +3644,10 @@ Returns the events of a transaction Returns the events of a transaction + Parameters - + tx_hash: `dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b` (str, required) - The hash of the transaction to return + + tx_hash: `ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774` (str, required) - The hash of the transaction to return + event_name (str, optional) - Comma separated list of events to return + Default: `None` - + cursor: `535` (str, optional) - The last event index to return + + cursor: `542` (str, optional) - The last event index to return + Default: `None` + limit: `5` (int, optional) - The maximum number of events to return + Default: `100` @@ -3531,51 +3664,51 @@ Returns the events of a transaction { "result": [ { - "event_index": 528, + "event_index": 535, "event": "TRANSACTION_PARSED", "params": { "supported": true, - "tx_hash": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", - "tx_index": 58 + "tx_hash": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", + "tx_index": 59 }, - "tx_hash": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", - "block_index": 192, - "block_time": 1726509908 + "tx_hash": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", + "block_index": 193, + "block_time": 1727201012 }, { - "event_index": 527, + "event_index": 534, "event": "SWEEP", "params": { - "block_index": 192, - "destination": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "block_index": 193, + "destination": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "fee_paid": 600000, "flags": 1, "memo": "sweep my assets", - "source": "bcrt1q3ds7n4l97tumdkgcr3vyhe04zaxce8ujr8fmr2", + "source": "bcrt1q9cf2ed4wk37qye08wlppw39l7prxws7afa3krk", "status": "valid", - "tx_hash": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", - "tx_index": 58, - "block_time": 1726509908, + "tx_hash": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", + "tx_index": 59, + "block_time": 1727201012, "fee_paid_normalized": "0.00600000" }, - "tx_hash": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", - "block_index": 192, - "block_time": 1726509908 + "tx_hash": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", + "block_index": 193, + "block_time": 1727201012 }, { - "event_index": 526, + "event_index": 533, "event": "CREDIT", "params": { - "address": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "address": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "asset": "XCP", - "block_index": 192, + "block_index": 193, "calling_function": "sweep", - "event": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", + "event": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", "quantity": 74499387833, - "tx_index": 58, + "tx_index": 59, "utxo": null, "utxo_address": null, - "block_time": 1726509908, + "block_time": 1727201012, "asset_info": { "divisible": true, "asset_longname": null, @@ -3585,24 +3718,24 @@ Returns the events of a transaction }, "quantity_normalized": "744.99388000" }, - "tx_hash": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", - "block_index": 192, - "block_time": 1726509908 + "tx_hash": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", + "block_index": 193, + "block_time": 1727201012 }, { - "event_index": 525, + "event_index": 532, "event": "DEBIT", "params": { "action": "sweep", - "address": "bcrt1q3ds7n4l97tumdkgcr3vyhe04zaxce8ujr8fmr2", + "address": "bcrt1q9cf2ed4wk37qye08wlppw39l7prxws7afa3krk", "asset": "XCP", - "block_index": 192, - "event": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", + "block_index": 193, + "event": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", "quantity": 74499387833, - "tx_index": 58, + "tx_index": 59, "utxo": null, "utxo_address": null, - "block_time": 1726509908, + "block_time": 1727201012, "asset_info": { "divisible": true, "asset_longname": null, @@ -3612,39 +3745,39 @@ Returns the events of a transaction }, "quantity_normalized": "744.99388000" }, - "tx_hash": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", - "block_index": 192, - "block_time": 1726509908 + "tx_hash": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", + "block_index": 193, + "block_time": 1727201012 }, { - "event_index": 524, + "event_index": 531, "event": "CREDIT", "params": { - "address": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "address": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "asset": "MYASSETA", - "block_index": 192, + "block_index": 193, "calling_function": "sweep", - "event": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", + "event": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", "quantity": 10, - "tx_index": 58, + "tx_index": 59, "utxo": null, "utxo_address": null, - "block_time": 1726509908, + "block_time": 1727201012, "asset_info": { "asset_longname": null, "description": "My super asset A", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, "quantity_normalized": "0.00000010" }, - "tx_hash": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", - "block_index": 192, - "block_time": 1726509908 + "tx_hash": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", + "block_index": 193, + "block_time": 1727201012 } ], - "next_cursor": 523, + "next_cursor": 530, "result_count": 10 } ``` @@ -3654,7 +3787,7 @@ Returns the events of a transaction Returns the sends, include Enhanced and MPMA sends, of a block + Parameters - + tx_hash: `e8fda956958ed7de0a98e42d8d28349b9c7b5e20da375c185c5830526df6594f` (str, required) - The hash of the transaction to return + + tx_hash: `4cd813fae2558e89f2f9411f38daa7d4c10c94a267daa38155cf18fb4d9fd055` (str, required) - The hash of the transaction to return + cursor (str, optional) - The last index of the debits to return + Default: `None` + limit: `5` (int, optional) - The maximum number of debits to return @@ -3672,11 +3805,11 @@ Returns the sends, include Enhanced and MPMA sends, of a block { "result": [ { - "tx_index": 54, - "tx_hash": "e8fda956958ed7de0a98e42d8d28349b9c7b5e20da375c185c5830526df6594f", - "block_index": 188, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "destination": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", + "tx_index": 55, + "tx_hash": "4cd813fae2558e89f2f9411f38daa7d4c10c94a267daa38155cf18fb4d9fd055", + "block_index": 189, + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "destination": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", "asset": "XCP", "quantity": 10, "status": "valid", @@ -3684,7 +3817,7 @@ Returns the sends, include Enhanced and MPMA sends, of a block "memo": null, "fee_paid": 0, "confirmed": true, - "block_time": 1726509890, + "block_time": 1727200995, "asset_info": { "divisible": true, "asset_longname": null, @@ -3696,11 +3829,11 @@ Returns the sends, include Enhanced and MPMA sends, of a block "fee_paid_normalized": "0.00000000" }, { - "tx_index": 54, - "tx_hash": "e8fda956958ed7de0a98e42d8d28349b9c7b5e20da375c185c5830526df6594f", - "block_index": 188, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "destination": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "tx_index": 55, + "tx_hash": "4cd813fae2558e89f2f9411f38daa7d4c10c94a267daa38155cf18fb4d9fd055", + "block_index": 189, + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "destination": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "asset": "MYASSETA", "quantity": 10, "status": "valid", @@ -3708,11 +3841,11 @@ Returns the sends, include Enhanced and MPMA sends, of a block "memo": null, "fee_paid": 0, "confirmed": true, - "block_time": 1726509890, + "block_time": 1727200995, "asset_info": { "asset_longname": null, "description": "My super asset A", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, @@ -3720,11 +3853,11 @@ Returns the sends, include Enhanced and MPMA sends, of a block "fee_paid_normalized": "0.00000000" }, { - "tx_index": 54, - "tx_hash": "e8fda956958ed7de0a98e42d8d28349b9c7b5e20da375c185c5830526df6594f", - "block_index": 188, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "destination": "bcrt1q3ds7n4l97tumdkgcr3vyhe04zaxce8ujr8fmr2", + "tx_index": 55, + "tx_hash": "4cd813fae2558e89f2f9411f38daa7d4c10c94a267daa38155cf18fb4d9fd055", + "block_index": 189, + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "destination": "bcrt1q9cf2ed4wk37qye08wlppw39l7prxws7afa3krk", "asset": "MYASSETA", "quantity": 10, "status": "valid", @@ -3732,11 +3865,11 @@ Returns the sends, include Enhanced and MPMA sends, of a block "memo": null, "fee_paid": 0, "confirmed": true, - "block_time": 1726509890, + "block_time": 1727200995, "asset_info": { "asset_longname": null, "description": "My super asset A", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, @@ -3754,7 +3887,7 @@ Returns the sends, include Enhanced and MPMA sends, of a block Returns the dispenses of a block + Parameters - + tx_hash: `516159be9547a87a0ab0ce652ce9daebb10796eb67509fa50780dca28d813535` (str, required) - The hash of the transaction to return + + tx_hash: `6b21482e6e461d42ded8e74826ff88a8b23621baaa45e714c7c2a20457bd6c12` (str, required) - The hash of the transaction to return + cursor (str, optional) - The last index of the dispenses to return + Default: `None` + limit: `5` (int, optional) - The maximum number of dispenses to return @@ -3772,29 +3905,29 @@ Returns the dispenses of a block { "result": [ { - "tx_index": 33, + "tx_index": 34, "dispense_index": 0, - "tx_hash": "516159be9547a87a0ab0ce652ce9daebb10796eb67509fa50780dca28d813535", - "block_index": 146, - "source": "bcrt1qlm44vh2ynrtqwh8j2mptwrzzfd04czsya4wxcd", - "destination": "bcrt1qlqcrlvw5t7cnj8r9hjl0qq67c2fyk5kvfra90p", + "tx_hash": "6b21482e6e461d42ded8e74826ff88a8b23621baaa45e714c7c2a20457bd6c12", + "block_index": 147, + "source": "bcrt1qeshrsce6vyx833j2p85aesnx0aj9sxjtt79jak", + "destination": "bcrt1qfvucymcd7u04hpd7eafsmxwnashcmaqs54q79p", "asset": "XCP", "dispense_quantity": 666, - "dispenser_tx_hash": "5c8374a3882f222038bbf9a0cce7589e84b790915b9228d66af1a5b0eb61ea2d", + "dispenser_tx_hash": "1e7bea513de78cabf444b974fdb0efb4304b18bd990a889d7a0f8b0e3d21b6ea", "btc_amount": 10000, "confirmed": true, "dispenser": { - "tx_index": 32, - "block_index": 146, - "source": "bcrt1qlm44vh2ynrtqwh8j2mptwrzzfd04czsya4wxcd", + "tx_index": 33, + "block_index": 147, + "source": "bcrt1qeshrsce6vyx833j2p85aesnx0aj9sxjtt79jak", "give_quantity": 1, "escrow_quantity": 10000, "satoshirate": 1, "status": 0, "give_remaining": 9334, - "oracle_address": "bcrt1qlm44vh2ynrtqwh8j2mptwrzzfd04czsya4wxcd", + "oracle_address": "bcrt1qeshrsce6vyx833j2p85aesnx0aj9sxjtt79jak", "last_status_tx_hash": null, - "origin": "bcrt1qlm44vh2ynrtqwh8j2mptwrzzfd04czsya4wxcd", + "origin": "bcrt1qeshrsce6vyx833j2p85aesnx0aj9sxjtt79jak", "dispense_count": 1, "last_status_tx_source": null, "close_block_index": null, @@ -3809,7 +3942,7 @@ Returns the dispenses of a block "satoshirate_normalized": "0.00000001", "satoshi_price_normalized": "0.00000016" }, - "block_time": 1726509701, + "block_time": 1727200827, "asset_info": { "divisible": true, "asset_longname": null, @@ -3831,9 +3964,9 @@ Returns the dispenses of a block Returns the events of a transaction + Parameters - + tx_index: `58` (int, required) - The index of the transaction to return + + tx_index: `59` (int, required) - The index of the transaction to return + event: `CREDIT` (str, required) - The event to filter by - + cursor: `535` (str, optional) - The last event index to return + + cursor: `542` (str, optional) - The last event index to return + Default: `None` + limit: `5` (int, optional) - The maximum number of events to return + Default: `100` @@ -3850,19 +3983,19 @@ Returns the events of a transaction { "result": [ { - "event_index": 526, + "event_index": 533, "event": "CREDIT", "params": { - "address": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "address": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "asset": "XCP", - "block_index": 192, + "block_index": 193, "calling_function": "sweep", - "event": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", + "event": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", "quantity": 74499387833, - "tx_index": 58, + "tx_index": 59, "utxo": null, "utxo_address": null, - "block_time": 1726509908, + "block_time": 1727201012, "asset_info": { "divisible": true, "asset_longname": null, @@ -3872,63 +4005,63 @@ Returns the events of a transaction }, "quantity_normalized": "744.99388000" }, - "tx_hash": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", - "block_index": 192, - "block_time": 1726509908 + "tx_hash": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", + "block_index": 193, + "block_time": 1727201012 }, { - "event_index": 524, + "event_index": 531, "event": "CREDIT", "params": { - "address": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "address": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "asset": "MYASSETA", - "block_index": 192, + "block_index": 193, "calling_function": "sweep", - "event": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", + "event": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", "quantity": 10, - "tx_index": 58, + "tx_index": 59, "utxo": null, "utxo_address": null, - "block_time": 1726509908, + "block_time": 1727201012, "asset_info": { "asset_longname": null, "description": "My super asset A", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, "quantity_normalized": "0.00000010" }, - "tx_hash": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", - "block_index": 192, - "block_time": 1726509908 + "tx_hash": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", + "block_index": 193, + "block_time": 1727201012 }, { - "event_index": 522, + "event_index": 529, "event": "CREDIT", "params": { - "address": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "address": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "asset": "FAIRMINTA", - "block_index": 192, + "block_index": 193, "calling_function": "sweep", - "event": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", + "event": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", "quantity": 500000000, - "tx_index": 58, + "tx_index": 59, "utxo": null, "utxo_address": null, - "block_time": 1726509908, + "block_time": 1727201012, "asset_info": { "asset_longname": "", "description": "", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, "quantity_normalized": "5.00000000" }, - "tx_hash": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", - "block_index": 192, - "block_time": 1726509908 + "tx_hash": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", + "block_index": 193, + "block_time": 1727201012 } ], "next_cursor": null, @@ -3941,9 +4074,9 @@ Returns the events of a transaction Returns the events of a transaction + Parameters - + tx_hash: `dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b` (str, required) - The hash of the transaction to return + + tx_hash: `ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774` (str, required) - The hash of the transaction to return + event: `CREDIT` (str, required) - The event to filter by - + cursor: `535` (str, optional) - The last event index to return + + cursor: `542` (str, optional) - The last event index to return + Default: `None` + limit: `5` (int, optional) - The maximum number of events to return + Default: `100` @@ -3960,19 +4093,19 @@ Returns the events of a transaction { "result": [ { - "event_index": 526, + "event_index": 533, "event": "CREDIT", "params": { - "address": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "address": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "asset": "XCP", - "block_index": 192, + "block_index": 193, "calling_function": "sweep", - "event": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", + "event": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", "quantity": 74499387833, - "tx_index": 58, + "tx_index": 59, "utxo": null, "utxo_address": null, - "block_time": 1726509908, + "block_time": 1727201012, "asset_info": { "divisible": true, "asset_longname": null, @@ -3982,63 +4115,63 @@ Returns the events of a transaction }, "quantity_normalized": "744.99388000" }, - "tx_hash": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", - "block_index": 192, - "block_time": 1726509908 + "tx_hash": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", + "block_index": 193, + "block_time": 1727201012 }, { - "event_index": 524, + "event_index": 531, "event": "CREDIT", "params": { - "address": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "address": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "asset": "MYASSETA", - "block_index": 192, + "block_index": 193, "calling_function": "sweep", - "event": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", + "event": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", "quantity": 10, - "tx_index": 58, + "tx_index": 59, "utxo": null, "utxo_address": null, - "block_time": 1726509908, + "block_time": 1727201012, "asset_info": { "asset_longname": null, "description": "My super asset A", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, "quantity_normalized": "0.00000010" }, - "tx_hash": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", - "block_index": 192, - "block_time": 1726509908 + "tx_hash": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", + "block_index": 193, + "block_time": 1727201012 }, { - "event_index": 522, + "event_index": 529, "event": "CREDIT", "params": { - "address": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "address": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "asset": "FAIRMINTA", - "block_index": 192, + "block_index": 193, "calling_function": "sweep", - "event": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", + "event": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", "quantity": 500000000, - "tx_index": 58, + "tx_index": 59, "utxo": null, "utxo_address": null, - "block_time": 1726509908, + "block_time": 1727201012, "asset_info": { "asset_longname": "", "description": "", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, "quantity_normalized": "5.00000000" }, - "tx_hash": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", - "block_index": 192, - "block_time": 1726509908 + "tx_hash": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", + "block_index": 193, + "block_time": 1727201012 } ], "next_cursor": null, @@ -4053,7 +4186,7 @@ Returns the events of a transaction Returns the balances of several addresses + Parameters - + addresses: `bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj,bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t` (str, required) - Comma separated list of addresses + + addresses: `bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs,bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9` (str, required) - Comma separated list of addresses + cursor (str, optional) - The last index of the balances to return + Default: `None` + limit: `5` (int, optional) - The maximum number of balances to return @@ -4077,7 +4210,7 @@ Returns the balances of several addresses "total": 100000000000, "addresses": [ { - "address": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "address": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "utxo": null, "utxo_address": null, "quantity": 100000000000, @@ -4087,7 +4220,7 @@ Returns the balances of several addresses "asset_info": { "asset_longname": "A95428959745315388.SUBNUMERIC", "description": "A subnumeric asset", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, @@ -4098,7 +4231,7 @@ Returns the balances of several addresses "total": 97999999980, "addresses": [ { - "address": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "address": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "utxo": null, "utxo_address": null, "quantity": 97999999980, @@ -4108,7 +4241,7 @@ Returns the balances of several addresses "asset_info": { "asset_longname": null, "description": "My super asset A", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, @@ -4119,7 +4252,7 @@ Returns the balances of several addresses "total": 500000000, "addresses": [ { - "address": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", + "address": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", "utxo": null, "utxo_address": null, "quantity": 500000000, @@ -4129,7 +4262,7 @@ Returns the balances of several addresses "asset_info": { "asset_longname": "", "description": "", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, @@ -4140,7 +4273,7 @@ Returns the balances of several addresses "total": 40, "addresses": [ { - "address": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", + "address": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", "utxo": null, "utxo_address": null, "quantity": 40, @@ -4150,7 +4283,7 @@ Returns the balances of several addresses "asset_info": { "asset_longname": "", "description": "", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, @@ -4161,7 +4294,7 @@ Returns the balances of several addresses "total": 19, "addresses": [ { - "address": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", + "address": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", "utxo": null, "utxo_address": null, "quantity": 19, @@ -4171,7 +4304,7 @@ Returns the balances of several addresses "asset_info": { "asset_longname": "", "description": "", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, @@ -4188,8 +4321,8 @@ Returns the balances of several addresses Returns the transactions of a list of addresses + Parameters - + addresses: `bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj,bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t` (str, required) - Comma separated list of addresses to return - + cursor: `59` (str, optional) - The last transaction index to return + + addresses: `bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs,bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9` (str, required) - Comma separated list of addresses to return + + cursor: `60` (str, optional) - The last transaction index to return + Default: `None` + limit: `5` (int, optional) - The maximum number of transactions to return + Default: `100` @@ -4206,18 +4339,18 @@ Returns the transactions of a list of addresses { "result": [ { - "tx_index": 57, - "tx_hash": "7b7048040c893c69892bd088ce48db79b96b9c1d7221b50d903064ff5a1ed232", - "block_index": 191, - "block_hash": "44555f5ae4cd1f61f3df9e675ad106b01fca685a76eff37b685758a1f234afb2", - "block_time": 1726509903, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "tx_index": 58, + "tx_hash": "132d67269995e3bc9e40d83bc0badefad56d85f0229eedfb0e2ccdf829d03d28", + "block_index": 192, + "block_hash": "7aa8cd7d46e84e234d53f8c14736afd98d1d5b8441f4f425fe8c6a52c3f33c87", + "block_time": 1727201008, + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "destination": null, "btc_amount": 0, "fee": 10000, "data": "0a000000000000000100000000000003e8000000000000000000000000000003e800150000000000000000", "supported": true, - "utxos_info": "7b7048040c893c69892bd088ce48db79b96b9c1d7221b50d903064ff5a1ed232:1", + "utxos_info": "132d67269995e3bc9e40d83bc0badefad56d85f0229eedfb0e2ccdf829d03d28:1", "confirmed": true, "unpacked_data": { "message_type": "order", @@ -4252,42 +4385,42 @@ Returns the transactions of a list of addresses "btc_amount_normalized": "0.00000000" }, { - "tx_index": 56, - "tx_hash": "18a9b72fc9e67470cff556297fa5f3dd95ea7d472693f42d597db7ad598c05ec", - "block_index": 190, - "block_hash": "214a1e1ed38b3e555167f5f21d78c8c3e487ea62d748cd8200a3b3e18f2b6017", - "block_time": 1726509899, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "tx_index": 57, + "tx_hash": "1d314894d90254c43598647c4ebca9b8f3f0d20a522eb8130d9955e95ea1c197", + "block_index": 191, + "block_hash": "6df0e71250aea0de3e29c053f2ca49cc02c029f911a25356f455303c447d0a63", + "block_time": 1727201003, + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "destination": null, "btc_amount": 0, "fee": 10000, - "data": "465e324d551a694d3f6ffc9c67b3db8817d470ba32257047ddee237d3d07c1a1e2", + "data": "4683919cf82dd5eb1e2e1f6d3f3f752d34d41636ed00ab8ff78369eb81475b8e57", "supported": true, - "utxos_info": "18a9b72fc9e67470cff556297fa5f3dd95ea7d472693f42d597db7ad598c05ec:1", + "utxos_info": "1d314894d90254c43598647c4ebca9b8f3f0d20a522eb8130d9955e95ea1c197:1", "confirmed": true, "unpacked_data": { "message_type": "cancel", "message_type_id": 70, "message_data": { - "offer_hash": "5e324d551a694d3f6ffc9c67b3db8817d470ba32257047ddee237d3d07c1a1e2", + "offer_hash": "83919cf82dd5eb1e2e1f6d3f3f752d34d41636ed00ab8ff78369eb81475b8e57", "status": "valid" } }, "btc_amount_normalized": "0.00000000" }, { - "tx_index": 55, - "tx_hash": "5e324d551a694d3f6ffc9c67b3db8817d470ba32257047ddee237d3d07c1a1e2", - "block_index": 189, - "block_hash": "4147554b4c1d081b097b1c6278509e7da43fbec27bdb1ad6cb8414e44ba4445b", - "block_time": 1726509894, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "tx_index": 56, + "tx_hash": "83919cf82dd5eb1e2e1f6d3f3f752d34d41636ed00ab8ff78369eb81475b8e57", + "block_index": 190, + "block_hash": "0878eceac6ded73fd8e873772ed9f93c488a46bdde659e59451e65eb9a3ee390", + "block_time": 1727200999, + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "destination": null, "btc_amount": 0, "fee": 10000, "data": "0a000000000000000100000000000003e8000000000000000000000000000003e800150000000000000000", "supported": true, - "utxos_info": "5e324d551a694d3f6ffc9c67b3db8817d470ba32257047ddee237d3d07c1a1e2:1", + "utxos_info": "83919cf82dd5eb1e2e1f6d3f3f752d34d41636ed00ab8ff78369eb81475b8e57:1", "confirmed": true, "unpacked_data": { "message_type": "order", @@ -4322,18 +4455,18 @@ Returns the transactions of a list of addresses "btc_amount_normalized": "0.00000000" }, { - "tx_index": 54, - "tx_hash": "e8fda956958ed7de0a98e42d8d28349b9c7b5e20da375c185c5830526df6594f", - "block_index": 188, - "block_hash": "6af6f23af835e0b3e7515a3d98e43a2ff75b7baf8d552fe27cbaf82dc8974780", - "block_time": 1726509890, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "tx_index": 55, + "tx_hash": "4cd813fae2558e89f2f9411f38daa7d4c10c94a267daa38155cf18fb4d9fd055", + "block_index": 189, + "block_hash": "73be93be2c91012204c8a1e8321475345c6c634627235302e1e7abe56fcb5755", + "block_time": 1727200995, + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "destination": null, "btc_amount": 0, "fee": 10000, - "data": "0300038057841d54055a90ed31a47e9821fd3118e6e78592808b61e9d7e5f2f9b6d9181c584be5f5174d8c9f9280ae2b0c1095bbdf23747f76b242be716817701b78400000060acdc5db9400000000000000290000000000000005200000000000000020000000000000001400", + "data": "0300038054c1ba334a1912f96353f110938927c645ff9064802e12acb6aeb47c0265e777c21744bff0466743dd806c45b04730370dc7e778ed200c19f22a08c064a9400000060acdc5db9400000000000000290000000000000005200000000000000020000000000000001400", "supported": true, - "utxos_info": "e8fda956958ed7de0a98e42d8d28349b9c7b5e20da375c185c5830526df6594f:0", + "utxos_info": "4cd813fae2558e89f2f9411f38daa7d4c10c94a267daa38155cf18fb4d9fd055:0", "confirmed": true, "unpacked_data": { "message_type": "mpma_send", @@ -4341,14 +4474,14 @@ Returns the transactions of a list of addresses "message_data": [ { "asset": "MYASSETA", - "destination": "bcrt1q3ds7n4l97tumdkgcr3vyhe04zaxce8ujr8fmr2", + "destination": "bcrt1q9cf2ed4wk37qye08wlppw39l7prxws7afa3krk", "quantity": 10, "memo": null, "memo_is_hex": null, "asset_info": { "asset_longname": null, "description": "My super asset A", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, @@ -4356,7 +4489,7 @@ Returns the transactions of a list of addresses }, { "asset": "XCP", - "destination": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", + "destination": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", "quantity": 10, "memo": null, "memo_is_hex": null, @@ -4374,34 +4507,34 @@ Returns the transactions of a list of addresses "btc_amount_normalized": "0.00000000" }, { - "tx_index": 51, - "tx_hash": "d749fed653092a4854ac8c9773d9610edfb2b12db4c962aa3795cc653e8a624d", - "block_index": 185, - "block_hash": "7bb18fb36cb1bd5cb99d781fabe17b43d4b67ee7530bd6ab46356fdb3e139fa6", - "block_time": 1726509867, - "source": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", - "destination": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "tx_index": 52, + "tx_hash": "c78a916b13975e32514ea6fac0324481adfcc972f1db2cbabb96677db4d026cb", + "block_index": 186, + "block_hash": "68d8ed672f554db585e5508b660624d769c3a49fe8bfc118cf4109c241833983", + "block_time": 1727200982, + "source": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", + "destination": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "btc_amount": 2000, "fee": 10000, - "data": "0b675f8dccad4bdcf4b54ce5aca7ddc442f642d63e518d64ad6068a264fb9894e1ebe20caac209f665277d0ac456ab451b4934a7d86529e24fd43b97535e62746a", + "data": "0b4844c5f31805a95e25af849d3e888b41d4cba82846300010c82895f4072e57f6e2f9612faf4a7e6249958ba9d24aaf9e3d7a70b0dafaa5fb94dc51a088e6cf63", "supported": true, - "utxos_info": "d749fed653092a4854ac8c9773d9610edfb2b12db4c962aa3795cc653e8a624d:0", + "utxos_info": "c78a916b13975e32514ea6fac0324481adfcc972f1db2cbabb96677db4d026cb:0", "confirmed": true, "unpacked_data": { "message_type": "btcpay", "message_type_id": 11, "message_data": { - "tx0_hash": "675f8dccad4bdcf4b54ce5aca7ddc442f642d63e518d64ad6068a264fb9894e1", - "tx1_hash": "ebe20caac209f665277d0ac456ab451b4934a7d86529e24fd43b97535e62746a", - "order_match_id": "675f8dccad4bdcf4b54ce5aca7ddc442f642d63e518d64ad6068a264fb9894e1_ebe20caac209f665277d0ac456ab451b4934a7d86529e24fd43b97535e62746a", + "tx0_hash": "4844c5f31805a95e25af849d3e888b41d4cba82846300010c82895f4072e57f6", + "tx1_hash": "e2f9612faf4a7e6249958ba9d24aaf9e3d7a70b0dafaa5fb94dc51a088e6cf63", + "order_match_id": "4844c5f31805a95e25af849d3e888b41d4cba82846300010c82895f4072e57f6_e2f9612faf4a7e6249958ba9d24aaf9e3d7a70b0dafaa5fb94dc51a088e6cf63", "status": "valid" } }, "btc_amount_normalized": "0.00002000" } ], - "next_cursor": 50, - "result_count": 35 + "next_cursor": 51, + "result_count": 36 } ``` @@ -4410,10 +4543,10 @@ Returns the transactions of a list of addresses Returns the events of a list of addresses + Parameters - + addresses: `bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj,bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t` (str, required) - Comma separated list of addresses to return + + addresses: `bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs,bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9` (str, required) - Comma separated list of addresses to return + event_name (str, optional) - Comma separated list of events to return + Default: `None` - + cursor: `535` (str, optional) - The last event index to return + + cursor: `542` (str, optional) - The last event index to return + Default: `None` + limit: `5` (int, optional) - The maximum number of events to return + Default: `100` @@ -4430,12 +4563,12 @@ Returns the events of a list of addresses { "result": [ { - "event_index": 515, + "event_index": 522, "event": "OPEN_ORDER", "params": { - "block_index": 191, + "block_index": 192, "expiration": 21, - "expire_index": 212, + "expire_index": 213, "fee_provided": 10000, "fee_provided_remaining": 10000, "fee_required": 0, @@ -4446,11 +4579,11 @@ Returns the events of a list of addresses "give_asset": "XCP", "give_quantity": 1000, "give_remaining": 1000, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "status": "open", - "tx_hash": "7b7048040c893c69892bd088ce48db79b96b9c1d7221b50d903064ff5a1ed232", - "tx_index": 57, - "block_time": 1726509903, + "tx_hash": "132d67269995e3bc9e40d83bc0badefad56d85f0229eedfb0e2ccdf829d03d28", + "tx_index": 58, + "block_time": 1727201008, "give_asset_info": { "divisible": true, "asset_longname": null, @@ -4474,24 +4607,24 @@ Returns the events of a list of addresses "fee_required_remaining_normalized": "0.00000000", "fee_provided_remaining_normalized": "0.00010000" }, - "tx_hash": "7b7048040c893c69892bd088ce48db79b96b9c1d7221b50d903064ff5a1ed232", - "block_index": 191, - "block_time": 1726509903 + "tx_hash": "132d67269995e3bc9e40d83bc0badefad56d85f0229eedfb0e2ccdf829d03d28", + "block_index": 192, + "block_time": 1727201008 }, { - "event_index": 514, + "event_index": 521, "event": "DEBIT", "params": { "action": "open order", - "address": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "address": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "asset": "XCP", - "block_index": 191, - "event": "7b7048040c893c69892bd088ce48db79b96b9c1d7221b50d903064ff5a1ed232", + "block_index": 192, + "event": "132d67269995e3bc9e40d83bc0badefad56d85f0229eedfb0e2ccdf829d03d28", "quantity": 1000, - "tx_index": 57, + "tx_index": 58, "utxo": null, "utxo_address": null, - "block_time": 1726509903, + "block_time": 1727201008, "asset_info": { "divisible": true, "asset_longname": null, @@ -4501,25 +4634,25 @@ Returns the events of a list of addresses }, "quantity_normalized": "0.00001000" }, - "tx_hash": "7b7048040c893c69892bd088ce48db79b96b9c1d7221b50d903064ff5a1ed232", - "block_index": 191, - "block_time": 1726509903 + "tx_hash": "132d67269995e3bc9e40d83bc0badefad56d85f0229eedfb0e2ccdf829d03d28", + "block_index": 192, + "block_time": 1727201008 }, { - "event_index": 513, + "event_index": 520, "event": "NEW_TRANSACTION", "params": { - "block_hash": "44555f5ae4cd1f61f3df9e675ad106b01fca685a76eff37b685758a1f234afb2", - "block_index": 191, - "block_time": 1726509903, + "block_hash": "7aa8cd7d46e84e234d53f8c14736afd98d1d5b8441f4f425fe8c6a52c3f33c87", + "block_index": 192, + "block_time": 1727201008, "btc_amount": 0, "data": "0a000000000000000100000000000003e8000000000000000000000000000003e800150000000000000000", "destination": "", "fee": 10000, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "tx_hash": "7b7048040c893c69892bd088ce48db79b96b9c1d7221b50d903064ff5a1ed232", - "tx_index": 57, - "utxos_info": "7b7048040c893c69892bd088ce48db79b96b9c1d7221b50d903064ff5a1ed232:1", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "tx_hash": "132d67269995e3bc9e40d83bc0badefad56d85f0229eedfb0e2ccdf829d03d28", + "tx_index": 58, + "utxos_info": "132d67269995e3bc9e40d83bc0badefad56d85f0229eedfb0e2ccdf829d03d28:1", "unpacked_data": { "message_type": "order", "message_type_id": 10, @@ -4551,40 +4684,40 @@ Returns the events of a list of addresses }, "btc_amount_normalized": "0.00000000" }, - "tx_hash": "7b7048040c893c69892bd088ce48db79b96b9c1d7221b50d903064ff5a1ed232", - "block_index": 191, - "block_time": 1726509903 + "tx_hash": "132d67269995e3bc9e40d83bc0badefad56d85f0229eedfb0e2ccdf829d03d28", + "block_index": 192, + "block_time": 1727201008 }, { - "event_index": 509, + "event_index": 516, "event": "CANCEL_ORDER", "params": { - "block_index": 190, - "offer_hash": "5e324d551a694d3f6ffc9c67b3db8817d470ba32257047ddee237d3d07c1a1e2", - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "block_index": 191, + "offer_hash": "83919cf82dd5eb1e2e1f6d3f3f752d34d41636ed00ab8ff78369eb81475b8e57", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "status": "valid", - "tx_hash": "18a9b72fc9e67470cff556297fa5f3dd95ea7d472693f42d597db7ad598c05ec", - "tx_index": 56, - "block_time": 1726509899 + "tx_hash": "1d314894d90254c43598647c4ebca9b8f3f0d20a522eb8130d9955e95ea1c197", + "tx_index": 57, + "block_time": 1727201003 }, - "tx_hash": "18a9b72fc9e67470cff556297fa5f3dd95ea7d472693f42d597db7ad598c05ec", - "block_index": 190, - "block_time": 1726509899 + "tx_hash": "1d314894d90254c43598647c4ebca9b8f3f0d20a522eb8130d9955e95ea1c197", + "block_index": 191, + "block_time": 1727201003 }, { - "event_index": 508, + "event_index": 515, "event": "CREDIT", "params": { - "address": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "address": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "asset": "XCP", - "block_index": 190, + "block_index": 191, "calling_function": "cancel order", - "event": "5e324d551a694d3f6ffc9c67b3db8817d470ba32257047ddee237d3d07c1a1e2", + "event": "83919cf82dd5eb1e2e1f6d3f3f752d34d41636ed00ab8ff78369eb81475b8e57", "quantity": 1000, - "tx_index": 56, + "tx_index": 57, "utxo": null, "utxo_address": null, - "block_time": 1726509899, + "block_time": 1727201003, "asset_info": { "divisible": true, "asset_longname": null, @@ -4594,13 +4727,13 @@ Returns the events of a list of addresses }, "quantity_normalized": "0.00001000" }, - "tx_hash": "18a9b72fc9e67470cff556297fa5f3dd95ea7d472693f42d597db7ad598c05ec", - "block_index": 190, - "block_time": 1726509899 + "tx_hash": "1d314894d90254c43598647c4ebca9b8f3f0d20a522eb8130d9955e95ea1c197", + "block_index": 191, + "block_time": 1727201003 } ], - "next_cursor": 506, - "result_count": 163 + "next_cursor": 513, + "result_count": 165 } ``` @@ -4609,7 +4742,7 @@ Returns the events of a list of addresses Returns the mempool events of a list of addresses + Parameters - + addresses: `bcrt1q3ds7n4l97tumdkgcr3vyhe04zaxce8ujr8fmr2,bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30` (str, required) - Comma separated list of addresses to return + + addresses: `bcrt1q9cf2ed4wk37qye08wlppw39l7prxws7afa3krk,bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct` (str, required) - Comma separated list of addresses to return + cursor (str, optional) - The last event index to return + Default: `None` + limit: `5` (int, optional) - The maximum number of events to return @@ -4625,18 +4758,18 @@ Returns the mempool events of a list of addresses { "result": [ { - "tx_hash": "adc699f3b9af2a586a913343701a26c494a8fd637e66e50840936b8ef7bf10b6", + "tx_hash": "044206e67491ff5d4c325bca6bbf5704dfbc3794e8948a39aae3ab0e11b23e2a", "event": "ENHANCED_SEND", "params": { "asset": "XCP", "block_index": 9999999, - "destination": "bcrt1q3ds7n4l97tumdkgcr3vyhe04zaxce8ujr8fmr2", + "destination": "bcrt1q9cf2ed4wk37qye08wlppw39l7prxws7afa3krk", "memo": null, "quantity": 10000, - "source": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "source": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "status": "valid", - "tx_hash": "adc699f3b9af2a586a913343701a26c494a8fd637e66e50840936b8ef7bf10b6", - "tx_index": 60, + "tx_hash": "044206e67491ff5d4c325bca6bbf5704dfbc3794e8948a39aae3ab0e11b23e2a", + "tx_index": 61, "asset_info": { "divisible": true, "asset_longname": null, @@ -4648,19 +4781,19 @@ Returns the mempool events of a list of addresses } }, { - "tx_hash": "adc699f3b9af2a586a913343701a26c494a8fd637e66e50840936b8ef7bf10b6", + "tx_hash": "044206e67491ff5d4c325bca6bbf5704dfbc3794e8948a39aae3ab0e11b23e2a", "event": "CREDIT", "params": { - "address": "bcrt1q3ds7n4l97tumdkgcr3vyhe04zaxce8ujr8fmr2", + "address": "bcrt1q9cf2ed4wk37qye08wlppw39l7prxws7afa3krk", "asset": "XCP", - "block_index": 193, + "block_index": 194, "calling_function": "send", - "event": "adc699f3b9af2a586a913343701a26c494a8fd637e66e50840936b8ef7bf10b6", + "event": "044206e67491ff5d4c325bca6bbf5704dfbc3794e8948a39aae3ab0e11b23e2a", "quantity": 10000, - "tx_index": 60, + "tx_index": 61, "utxo": null, "utxo_address": null, - "block_time": 1726509912, + "block_time": 1727201016, "asset_info": { "divisible": true, "asset_longname": null, @@ -4672,19 +4805,19 @@ Returns the mempool events of a list of addresses } }, { - "tx_hash": "adc699f3b9af2a586a913343701a26c494a8fd637e66e50840936b8ef7bf10b6", + "tx_hash": "044206e67491ff5d4c325bca6bbf5704dfbc3794e8948a39aae3ab0e11b23e2a", "event": "DEBIT", "params": { "action": "send", - "address": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "address": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "asset": "XCP", - "block_index": 193, - "event": "adc699f3b9af2a586a913343701a26c494a8fd637e66e50840936b8ef7bf10b6", + "block_index": 194, + "event": "044206e67491ff5d4c325bca6bbf5704dfbc3794e8948a39aae3ab0e11b23e2a", "quantity": 10000, - "tx_index": 60, + "tx_index": 61, "utxo": null, "utxo_address": null, - "block_time": 1726509912, + "block_time": 1727201016, "asset_info": { "divisible": true, "asset_longname": null, @@ -4696,27 +4829,27 @@ Returns the mempool events of a list of addresses } }, { - "tx_hash": "adc699f3b9af2a586a913343701a26c494a8fd637e66e50840936b8ef7bf10b6", + "tx_hash": "044206e67491ff5d4c325bca6bbf5704dfbc3794e8948a39aae3ab0e11b23e2a", "event": "NEW_TRANSACTION", "params": { "block_hash": "mempool", "block_index": 9999999, - "block_time": 1726509917.0831685, + "block_time": 1727201019.8965485, "btc_amount": 0, - "data": "0200000000000000010000000000002710808b61e9d7e5f2f9b6d9181c584be5f5174d8c9f92", + "data": "0200000000000000010000000000002710802e12acb6aeb47c0265e777c21744bff0466743dd", "destination": "", "fee": 10000, - "source": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", - "tx_hash": "adc699f3b9af2a586a913343701a26c494a8fd637e66e50840936b8ef7bf10b6", - "tx_index": 60, - "utxos_info": "adc699f3b9af2a586a913343701a26c494a8fd637e66e50840936b8ef7bf10b6:1", + "source": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", + "tx_hash": "044206e67491ff5d4c325bca6bbf5704dfbc3794e8948a39aae3ab0e11b23e2a", + "tx_index": 61, + "utxos_info": "044206e67491ff5d4c325bca6bbf5704dfbc3794e8948a39aae3ab0e11b23e2a:1", "unpacked_data": { "message_type": "enhanced_send", "message_type_id": 2, "message_data": { "asset": "XCP", "quantity": 10000, - "address": "bcrt1q3ds7n4l97tumdkgcr3vyhe04zaxce8ujr8fmr2", + "address": "bcrt1q9cf2ed4wk37qye08wlppw39l7prxws7afa3krk", "memo": null, "asset_info": { "divisible": true, @@ -4742,7 +4875,7 @@ Returns the mempool events of a list of addresses Returns the balances of an address + Parameters - + address: `bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj` (str, required) - The address to return + + address: `bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs` (str, required) - The address to return + cursor (str, optional) - The last index of the balances to return + Default: `None` + limit: `5` (int, optional) - The maximum number of balances to return @@ -4762,7 +4895,7 @@ Returns the balances of an address { "result": [ { - "address": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "address": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "asset": "A95428956980101314", "quantity": 100000000000, "utxo": null, @@ -4770,14 +4903,14 @@ Returns the balances of an address "asset_info": { "asset_longname": "A95428959745315388.SUBNUMERIC", "description": "A subnumeric asset", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, "quantity_normalized": "1000.00000000" }, { - "address": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "address": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "asset": "MYASSETA", "quantity": 97999999980, "utxo": null, @@ -4785,16 +4918,16 @@ Returns the balances of an address "asset_info": { "asset_longname": null, "description": "My super asset A", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, "quantity_normalized": "980.00000000" }, { - "address": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "address": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "asset": "XCP", - "quantity": 82699937176, + "quantity": 82699937196, "utxo": null, "utxo_address": null, "asset_info": { @@ -4807,7 +4940,7 @@ Returns the balances of an address "quantity_normalized": "826.99937000" }, { - "address": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "address": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "asset": "TESTLOCKDESC", "quantity": 10000000000, "utxo": null, @@ -4815,7 +4948,7 @@ Returns the balances of an address "asset_info": { "asset_longname": null, "description": "Test Locking Description", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, @@ -4832,7 +4965,7 @@ Returns the balances of an address Returns the balance of an address and asset + Parameters - + address: `bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj` (str, required) - The address to return + + address: `bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs` (str, required) - The address to return + asset: `XCP` (str, required) - The asset to return + verbose: `true` (bool, optional) - Include asset and dispenser info and normalized quantities in the response. + Default: `false` @@ -4844,9 +4977,9 @@ Returns the balance of an address and asset ``` { "result": { - "address": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "address": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "asset": "XCP", - "quantity": 82699937176, + "quantity": 82699937196, "utxo": null, "utxo_address": null, "asset_info": { @@ -4866,7 +4999,7 @@ Returns the balance of an address and asset Returns the credits of an address + Parameters - + address: `bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj` (str, required) - The address to return + + address: `bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs` (str, required) - The address to return + action (enum[str], optional) - The action to filter by + Default: `None` + Members @@ -4915,17 +5048,17 @@ Returns the credits of an address { "result": [ { - "block_index": 190, - "address": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "block_index": 191, + "address": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "asset": "XCP", "quantity": 1000, "calling_function": "cancel order", - "event": "5e324d551a694d3f6ffc9c67b3db8817d470ba32257047ddee237d3d07c1a1e2", - "tx_index": 56, + "event": "83919cf82dd5eb1e2e1f6d3f3f752d34d41636ed00ab8ff78369eb81475b8e57", + "tx_index": 57, "utxo": null, "utxo_address": null, "confirmed": true, - "block_time": 1726509899, + "block_time": 1727201003, "asset_info": { "divisible": true, "asset_longname": null, @@ -4936,17 +5069,17 @@ Returns the credits of an address "quantity_normalized": "0.00001000" }, { - "block_index": 182, - "address": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "block_index": 183, + "address": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "asset": "XCP", "quantity": 1000, "calling_function": "cancel order", - "event": "e2263719273ed7cbb5496ae9daff21e24a2899e76feea1abbd4e91fa72766b5d", + "event": "f90bb3520b4cd8e8f43ae4a416ea102f6a45a4cfd10b4620066271057abde926", "tx_index": 0, "utxo": null, "utxo_address": null, "confirmed": true, - "block_time": 1726509796, + "block_time": 1727200899, "asset_info": { "divisible": true, "asset_longname": null, @@ -4957,71 +5090,71 @@ Returns the credits of an address "quantity_normalized": "0.00001000" }, { - "block_index": 159, - "address": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "block_index": 160, + "address": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "asset": "A95428956980101314", "quantity": 100000000000, "calling_function": "issuance", - "event": "3f80ba6dc66be4e5b604bbf8e1e2007161960069d871f7cb00b1d24f9f090491", - "tx_index": 46, + "event": "efd20bb15eb6a7ce22645a0fb33b1873d00dc0cdeb9533d37037e0fd6a63f512", + "tx_index": 47, "utxo": null, "utxo_address": null, "confirmed": true, - "block_time": 1726509780, + "block_time": 1727200884, "asset_info": { "asset_longname": "A95428959745315388.SUBNUMERIC", "description": "A subnumeric asset", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, "quantity_normalized": "1000.00000000" }, { - "block_index": 156, - "address": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "block_index": 157, + "address": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "asset": "TESTLOCKDESC", "quantity": 10000000000, "calling_function": "issuance", - "event": "23d681cb0c9d9310fd8150fcabf440c84cae363db926d0fcde70cbe12373f96f", - "tx_index": 43, + "event": "e12a079169fa7227aca6b168eafdf85cc67738b746b00fb0efa698d2c977b8f1", + "tx_index": 44, "utxo": null, "utxo_address": null, "confirmed": true, - "block_time": 1726509746, + "block_time": 1727200871, "asset_info": { "asset_longname": null, "description": "Test Locking Description", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, "quantity_normalized": "100.00000000" }, { - "block_index": 151, + "block_index": 152, "address": null, "asset": "MYASSETA", "quantity": 1000000000, "calling_function": "attach to utxo", - "event": "a79ea4de3cb6cae0d2b3bbf427028357f9dca64f8d599c93511be263bfda8c8a", - "tx_index": 38, - "utxo": "a79ea4de3cb6cae0d2b3bbf427028357f9dca64f8d599c93511be263bfda8c8a:1", - "utxo_address": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "event": "10c98431b6929b14e27a040b17f2d22aafc7813478587e2bbaca26c1c6197538", + "tx_index": 39, + "utxo": "10c98431b6929b14e27a040b17f2d22aafc7813478587e2bbaca26c1c6197538:1", + "utxo_address": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "confirmed": true, - "block_time": 1726509724, + "block_time": 1727200849, "asset_info": { "asset_longname": null, "description": "My super asset A", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, "quantity_normalized": "10.00000000" } ], - "next_cursor": 42, - "result_count": 14 + "next_cursor": 44, + "result_count": 15 } ``` @@ -5030,7 +5163,7 @@ Returns the credits of an address Returns the debits of an address + Parameters - + address: `bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj` (str, required) - The address to return + + address: `bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs` (str, required) - The address to return + action (enum[str], optional) - The action to filter by + Default: `None` + Members @@ -5068,17 +5201,17 @@ Returns the debits of an address { "result": [ { - "block_index": 191, - "address": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "block_index": 192, + "address": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "asset": "XCP", "quantity": 1000, "action": "open order", - "event": "7b7048040c893c69892bd088ce48db79b96b9c1d7221b50d903064ff5a1ed232", - "tx_index": 57, + "event": "132d67269995e3bc9e40d83bc0badefad56d85f0229eedfb0e2ccdf829d03d28", + "tx_index": 58, "utxo": null, "utxo_address": null, "confirmed": true, - "block_time": 1726509903, + "block_time": 1727201008, "asset_info": { "divisible": true, "asset_longname": null, @@ -5089,17 +5222,17 @@ Returns the debits of an address "quantity_normalized": "0.00001000" }, { - "block_index": 189, - "address": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "block_index": 190, + "address": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "asset": "XCP", "quantity": 1000, "action": "open order", - "event": "5e324d551a694d3f6ffc9c67b3db8817d470ba32257047ddee237d3d07c1a1e2", - "tx_index": 55, + "event": "83919cf82dd5eb1e2e1f6d3f3f752d34d41636ed00ab8ff78369eb81475b8e57", + "tx_index": 56, "utxo": null, "utxo_address": null, "confirmed": true, - "block_time": 1726509894, + "block_time": 1727200999, "asset_info": { "divisible": true, "asset_longname": null, @@ -5110,17 +5243,17 @@ Returns the debits of an address "quantity_normalized": "0.00001000" }, { - "block_index": 188, - "address": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "block_index": 189, + "address": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "asset": "XCP", "quantity": 10, "action": "mpma send", - "event": "e8fda956958ed7de0a98e42d8d28349b9c7b5e20da375c185c5830526df6594f", - "tx_index": 54, + "event": "4cd813fae2558e89f2f9411f38daa7d4c10c94a267daa38155cf18fb4d9fd055", + "tx_index": 55, "utxo": null, "utxo_address": null, "confirmed": true, - "block_time": 1726509890, + "block_time": 1727200995, "asset_info": { "divisible": true, "asset_longname": null, @@ -5131,38 +5264,38 @@ Returns the debits of an address "quantity_normalized": "0.00000010" }, { - "block_index": 188, - "address": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "block_index": 189, + "address": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "asset": "MYASSETA", "quantity": 20, "action": "mpma send", - "event": "e8fda956958ed7de0a98e42d8d28349b9c7b5e20da375c185c5830526df6594f", - "tx_index": 54, + "event": "4cd813fae2558e89f2f9411f38daa7d4c10c94a267daa38155cf18fb4d9fd055", + "tx_index": 55, "utxo": null, "utxo_address": null, "confirmed": true, - "block_time": 1726509890, + "block_time": 1727200995, "asset_info": { "asset_longname": null, "description": "My super asset A", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, "quantity_normalized": "0.00000020" }, { - "block_index": 183, - "address": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "block_index": 184, + "address": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "asset": "XCP", "quantity": 10000, "action": "open order", - "event": "675f8dccad4bdcf4b54ce5aca7ddc442f642d63e518d64ad6068a264fb9894e1", - "tx_index": 49, + "event": "4844c5f31805a95e25af849d3e888b41d4cba82846300010c82895f4072e57f6", + "tx_index": 50, "utxo": null, "utxo_address": null, "confirmed": true, - "block_time": 1726509858, + "block_time": 1727200964, "asset_info": { "divisible": true, "asset_longname": null, @@ -5183,7 +5316,7 @@ Returns the debits of an address Returns the bets of a feed + Parameters - + address: `bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj` (str, required) - The address of the feed + + address: `bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs` (str, required) - The address of the feed + status: `filled` (enum[str], optional) - The status of the bet + Default: `open` + Members @@ -5218,7 +5351,7 @@ Returns the bets of a feed Returns the broadcasts of a source + Parameters - + address: `bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj` (str, required) - The address to return + + address: `bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs` (str, required) - The address to return + cursor (str, optional) - The last index of the broadcasts to return + Default: `None` + limit: `5` (int, optional) - The maximum number of broadcasts to return @@ -5237,9 +5370,9 @@ Returns the broadcasts of a source "result": [ { "tx_index": 24, - "tx_hash": "1629a61f230d38e661231eeaac724d9336e9413ce0a9f145c49d57030ae05b8d", + "tx_hash": "929b85b0f022a54c6904a36e51da0339ca9b0583ac7d003a91cd601964f53da5", "block_index": 137, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "timestamp": 4003903983, "value": 999.0, "fee_fraction_int": 0, @@ -5247,7 +5380,7 @@ Returns the broadcasts of a source "locked": false, "status": "valid", "confirmed": true, - "block_time": 1726509652, + "block_time": 1727200786, "fee_fraction_int_normalized": "0.00000000" } ], @@ -5261,7 +5394,7 @@ Returns the broadcasts of a source Returns the burns of an address + Parameters - + address: `bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj` (str, required) - The address to return + + address: `bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs` (str, required) - The address to return + cursor (str, optional) - The last index of the burns to return + Default: `None` + limit: `5` (int, optional) - The maximum number of burns to return @@ -5280,14 +5413,14 @@ Returns the burns of an address "result": [ { "tx_index": 0, - "tx_hash": "84cfd2ae481d0a4171e66009619eda93802914d5ccbb4bc52a5b76fd06d2dd79", + "tx_hash": "2a4c788f6c50b44e553e7df7ca7d8f3a63168c0f829df4ba991c41dcce254947", "block_index": 112, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "burned": 50000000, "earned": 74999998167, "status": "valid", "confirmed": true, - "block_time": 1726509535, + "block_time": 1727200681, "burned_normalized": "0.50000000", "earned_normalized": "749.99998000" } @@ -5302,7 +5435,7 @@ Returns the burns of an address Returns the sends, include Enhanced and MPMA sends, of an address + Parameters - + address: `bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj` (str, required) - The address to return + + address: `bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs` (str, required) - The address to return + cursor (str, optional) - The last index of the sends to return + Default: `None` + limit: `5` (int, optional) - The maximum number of sends to return @@ -5320,11 +5453,11 @@ Returns the sends, include Enhanced and MPMA sends, of an address { "result": [ { - "tx_index": 54, - "tx_hash": "e8fda956958ed7de0a98e42d8d28349b9c7b5e20da375c185c5830526df6594f", - "block_index": 188, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "destination": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", + "tx_index": 55, + "tx_hash": "4cd813fae2558e89f2f9411f38daa7d4c10c94a267daa38155cf18fb4d9fd055", + "block_index": 189, + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "destination": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", "asset": "XCP", "quantity": 10, "status": "valid", @@ -5332,7 +5465,7 @@ Returns the sends, include Enhanced and MPMA sends, of an address "memo": null, "fee_paid": 0, "confirmed": true, - "block_time": 1726509890, + "block_time": 1727200995, "asset_info": { "divisible": true, "asset_longname": null, @@ -5344,11 +5477,11 @@ Returns the sends, include Enhanced and MPMA sends, of an address "fee_paid_normalized": "0.00000000" }, { - "tx_index": 54, - "tx_hash": "e8fda956958ed7de0a98e42d8d28349b9c7b5e20da375c185c5830526df6594f", - "block_index": 188, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "destination": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "tx_index": 55, + "tx_hash": "4cd813fae2558e89f2f9411f38daa7d4c10c94a267daa38155cf18fb4d9fd055", + "block_index": 189, + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "destination": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "asset": "MYASSETA", "quantity": 10, "status": "valid", @@ -5356,11 +5489,11 @@ Returns the sends, include Enhanced and MPMA sends, of an address "memo": null, "fee_paid": 0, "confirmed": true, - "block_time": 1726509890, + "block_time": 1727200995, "asset_info": { "asset_longname": null, "description": "My super asset A", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, @@ -5368,11 +5501,11 @@ Returns the sends, include Enhanced and MPMA sends, of an address "fee_paid_normalized": "0.00000000" }, { - "tx_index": 54, - "tx_hash": "e8fda956958ed7de0a98e42d8d28349b9c7b5e20da375c185c5830526df6594f", - "block_index": 188, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "destination": "bcrt1q3ds7n4l97tumdkgcr3vyhe04zaxce8ujr8fmr2", + "tx_index": 55, + "tx_hash": "4cd813fae2558e89f2f9411f38daa7d4c10c94a267daa38155cf18fb4d9fd055", + "block_index": 189, + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "destination": "bcrt1q9cf2ed4wk37qye08wlppw39l7prxws7afa3krk", "asset": "MYASSETA", "quantity": 10, "status": "valid", @@ -5380,11 +5513,11 @@ Returns the sends, include Enhanced and MPMA sends, of an address "memo": null, "fee_paid": 0, "confirmed": true, - "block_time": 1726509890, + "block_time": 1727200995, "asset_info": { "asset_longname": null, "description": "My super asset A", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, @@ -5392,11 +5525,11 @@ Returns the sends, include Enhanced and MPMA sends, of an address "fee_paid_normalized": "0.00000000" }, { - "tx_index": 38, - "tx_hash": "a79ea4de3cb6cae0d2b3bbf427028357f9dca64f8d599c93511be263bfda8c8a", - "block_index": 151, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "destination": "a79ea4de3cb6cae0d2b3bbf427028357f9dca64f8d599c93511be263bfda8c8a:1", + "tx_index": 39, + "tx_hash": "10c98431b6929b14e27a040b17f2d22aafc7813478587e2bbaca26c1c6197538", + "block_index": 152, + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "destination": "10c98431b6929b14e27a040b17f2d22aafc7813478587e2bbaca26c1c6197538:1", "asset": "MYASSETA", "quantity": 1000000000, "status": "valid", @@ -5404,11 +5537,11 @@ Returns the sends, include Enhanced and MPMA sends, of an address "memo": null, "fee_paid": 0, "confirmed": true, - "block_time": 1726509724, + "block_time": 1727200849, "asset_info": { "asset_longname": null, "description": "My super asset A", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, @@ -5416,11 +5549,11 @@ Returns the sends, include Enhanced and MPMA sends, of an address "fee_paid_normalized": "0.00000000" }, { - "tx_index": 35, - "tx_hash": "523006a2ff042bd1708eb4642871fe8df38dbb0d40fc0b07f7c4d78ea57fff6d", - "block_index": 148, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "destination": "d2f3afeb63580aa006eee4e055138c2903f7e8172876f688b7241e2ebbe5f172:1", + "tx_index": 36, + "tx_hash": "c4e14890d5864ccbd1cd8f4359a891a6593b9025d1ae267a57c9af00626e321d", + "block_index": 149, + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "destination": "1e3535ba7d55784565a1ebd370a14fdde23ba46de1398689d8e4dd3886a34714:1", "asset": "MYASSETA", "quantity": 1000000000, "status": "valid", @@ -5428,11 +5561,11 @@ Returns the sends, include Enhanced and MPMA sends, of an address "memo": null, "fee_paid": 0, "confirmed": true, - "block_time": 1726509710, + "block_time": 1727200836, "asset_info": { "asset_longname": null, "description": "My super asset A", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, @@ -5450,7 +5583,7 @@ Returns the sends, include Enhanced and MPMA sends, of an address Returns the receives of an address + Parameters - + address: `bcrt1qghqkpk28xhsruvxjphq0ecx2ec35v90uksf2j0` (str, required) - The address to return + + address: `bcrt1qe4v63z8qa2kvy5yzt4ssr8zhwxgqw84j8nmhvg` (str, required) - The address to return + cursor (str, optional) - The last index of the sends to return + Default: `None` + limit: `5` (int, optional) - The maximum number of sends to return @@ -5468,11 +5601,11 @@ Returns the receives of an address { "result": [ { - "tx_index": 37, - "tx_hash": "05a57c8eb387d6f5e5f5a0ae90eb2873a7750c2f87e65b21b176c88da3be21ba", - "block_index": 150, - "source": "9d48ae21a1caed318e44591060a2d5873ed0ef5b403a5447046052a111c7dd88:0", - "destination": "bcrt1qghqkpk28xhsruvxjphq0ecx2ec35v90uksf2j0", + "tx_index": 38, + "tx_hash": "f409e618a14bf7943a7027f7f66f55aaf0604d8c0cafc7c0062f5c6bdf82d7b6", + "block_index": 151, + "source": "664b33a2858e0961f08c6a45f5ec6b98042d62a4f4e98faf6862f374be802724:0", + "destination": "bcrt1qe4v63z8qa2kvy5yzt4ssr8zhwxgqw84j8nmhvg", "asset": "MYASSETA", "quantity": 500000000, "status": "valid", @@ -5480,11 +5613,11 @@ Returns the receives of an address "memo": null, "fee_paid": 0, "confirmed": true, - "block_time": 1726509719, + "block_time": 1727200844, "asset_info": { "asset_longname": null, "description": "My super asset A", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, @@ -5502,7 +5635,7 @@ Returns the receives of an address Returns the sends, include Enhanced and MPMA sends, of an address and asset + Parameters - + address: `bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj` (str, required) - The address to return + + address: `bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs` (str, required) - The address to return + asset: `MYASSETA` (str, required) - The asset to return + cursor (str, optional) - The last index of the sends to return + Default: `None` @@ -5521,11 +5654,11 @@ Returns the sends, include Enhanced and MPMA sends, of an address and asset { "result": [ { - "tx_index": 54, - "tx_hash": "e8fda956958ed7de0a98e42d8d28349b9c7b5e20da375c185c5830526df6594f", - "block_index": 188, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "destination": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "tx_index": 55, + "tx_hash": "4cd813fae2558e89f2f9411f38daa7d4c10c94a267daa38155cf18fb4d9fd055", + "block_index": 189, + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "destination": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "asset": "MYASSETA", "quantity": 10, "status": "valid", @@ -5533,11 +5666,11 @@ Returns the sends, include Enhanced and MPMA sends, of an address and asset "memo": null, "fee_paid": 0, "confirmed": true, - "block_time": 1726509890, + "block_time": 1727200995, "asset_info": { "asset_longname": null, "description": "My super asset A", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, @@ -5545,11 +5678,11 @@ Returns the sends, include Enhanced and MPMA sends, of an address and asset "fee_paid_normalized": "0.00000000" }, { - "tx_index": 54, - "tx_hash": "e8fda956958ed7de0a98e42d8d28349b9c7b5e20da375c185c5830526df6594f", - "block_index": 188, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "destination": "bcrt1q3ds7n4l97tumdkgcr3vyhe04zaxce8ujr8fmr2", + "tx_index": 55, + "tx_hash": "4cd813fae2558e89f2f9411f38daa7d4c10c94a267daa38155cf18fb4d9fd055", + "block_index": 189, + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "destination": "bcrt1q9cf2ed4wk37qye08wlppw39l7prxws7afa3krk", "asset": "MYASSETA", "quantity": 10, "status": "valid", @@ -5557,11 +5690,11 @@ Returns the sends, include Enhanced and MPMA sends, of an address and asset "memo": null, "fee_paid": 0, "confirmed": true, - "block_time": 1726509890, + "block_time": 1727200995, "asset_info": { "asset_longname": null, "description": "My super asset A", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, @@ -5569,11 +5702,11 @@ Returns the sends, include Enhanced and MPMA sends, of an address and asset "fee_paid_normalized": "0.00000000" }, { - "tx_index": 38, - "tx_hash": "a79ea4de3cb6cae0d2b3bbf427028357f9dca64f8d599c93511be263bfda8c8a", - "block_index": 151, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "destination": "a79ea4de3cb6cae0d2b3bbf427028357f9dca64f8d599c93511be263bfda8c8a:1", + "tx_index": 39, + "tx_hash": "10c98431b6929b14e27a040b17f2d22aafc7813478587e2bbaca26c1c6197538", + "block_index": 152, + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "destination": "10c98431b6929b14e27a040b17f2d22aafc7813478587e2bbaca26c1c6197538:1", "asset": "MYASSETA", "quantity": 1000000000, "status": "valid", @@ -5581,11 +5714,11 @@ Returns the sends, include Enhanced and MPMA sends, of an address and asset "memo": null, "fee_paid": 0, "confirmed": true, - "block_time": 1726509724, + "block_time": 1727200849, "asset_info": { "asset_longname": null, "description": "My super asset A", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, @@ -5593,11 +5726,11 @@ Returns the sends, include Enhanced and MPMA sends, of an address and asset "fee_paid_normalized": "0.00000000" }, { - "tx_index": 35, - "tx_hash": "523006a2ff042bd1708eb4642871fe8df38dbb0d40fc0b07f7c4d78ea57fff6d", - "block_index": 148, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "destination": "d2f3afeb63580aa006eee4e055138c2903f7e8172876f688b7241e2ebbe5f172:1", + "tx_index": 36, + "tx_hash": "c4e14890d5864ccbd1cd8f4359a891a6593b9025d1ae267a57c9af00626e321d", + "block_index": 149, + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "destination": "1e3535ba7d55784565a1ebd370a14fdde23ba46de1398689d8e4dd3886a34714:1", "asset": "MYASSETA", "quantity": 1000000000, "status": "valid", @@ -5605,11 +5738,11 @@ Returns the sends, include Enhanced and MPMA sends, of an address and asset "memo": null, "fee_paid": 0, "confirmed": true, - "block_time": 1726509710, + "block_time": 1727200836, "asset_info": { "asset_longname": null, "description": "My super asset A", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, @@ -5627,7 +5760,7 @@ Returns the sends, include Enhanced and MPMA sends, of an address and asset Returns the receives of an address and asset + Parameters - + address: `bcrt1qghqkpk28xhsruvxjphq0ecx2ec35v90uksf2j0` (str, required) - The address to return + + address: `bcrt1qe4v63z8qa2kvy5yzt4ssr8zhwxgqw84j8nmhvg` (str, required) - The address to return + asset: `MYASSETA` (str, required) - The asset to return + cursor (str, optional) - The last index of the sends to return + Default: `None` @@ -5646,11 +5779,11 @@ Returns the receives of an address and asset { "result": [ { - "tx_index": 37, - "tx_hash": "05a57c8eb387d6f5e5f5a0ae90eb2873a7750c2f87e65b21b176c88da3be21ba", - "block_index": 150, - "source": "9d48ae21a1caed318e44591060a2d5873ed0ef5b403a5447046052a111c7dd88:0", - "destination": "bcrt1qghqkpk28xhsruvxjphq0ecx2ec35v90uksf2j0", + "tx_index": 38, + "tx_hash": "f409e618a14bf7943a7027f7f66f55aaf0604d8c0cafc7c0062f5c6bdf82d7b6", + "block_index": 151, + "source": "664b33a2858e0961f08c6a45f5ec6b98042d62a4f4e98faf6862f374be802724:0", + "destination": "bcrt1qe4v63z8qa2kvy5yzt4ssr8zhwxgqw84j8nmhvg", "asset": "MYASSETA", "quantity": 500000000, "status": "valid", @@ -5658,11 +5791,11 @@ Returns the receives of an address and asset "memo": null, "fee_paid": 0, "confirmed": true, - "block_time": 1726509719, + "block_time": 1727200844, "asset_info": { "asset_longname": null, "description": "My super asset A", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, @@ -5675,12 +5808,12 @@ Returns the receives of an address and asset } ``` -### Get Dispensers By Address [GET /v2/addresses/{address}/dispensers{?status}{&cursor}{&limit}{&offset}{&verbose}{&show_unconfirmed}] +### Get Dispensers By Address [GET /v2/addresses/{address}/dispensers{?status}{&cursor}{&limit}{&offset}{&sort}{&verbose}{&show_unconfirmed}] Returns the dispensers of an address + Parameters - + address: `bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj` (str, required) - The address to return + + address: `bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs` (str, required) - The address to return + status (enum[str], optional) - The status of the dispensers to return + Default: `all` + Members @@ -5695,6 +5828,8 @@ Returns the dispensers of an address + Default: `100` + offset (int, optional) - The number of lines to skip before returning results (overrides the `cursor` parameter) + Default: `None` + + sort: `give_quantity:desc` (str, optional) - The sort order of the dispensers to return (overrides the `cursor` parameter) + + Default: `None` + verbose: `true` (bool, optional) - Include asset and dispenser info and normalized quantities in the response. + Default: `false` + show_unconfirmed (bool, optional) - Include results from Mempool. @@ -5705,48 +5840,11 @@ Returns the dispensers of an address ``` { "result": [ - { - "tx_index": 30, - "tx_hash": "d3713f7f4355cf95ddb00030d4c53655897b901d6827b640ee27cc83efaba2e6", - "block_index": 144, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "asset": "XCP", - "give_quantity": 1, - "escrow_quantity": 10, - "satoshirate": 1, - "status": 0, - "give_remaining": 20, - "oracle_address": null, - "last_status_tx_hash": null, - "origin": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "dispense_count": 0, - "last_status_tx_source": null, - "close_block_index": null, - "confirmed": true, - "fiat_price": null, - "oracle_price": null, - "fiat_unit": null, - "oracle_price_last_updated": null, - "satoshi_price": 1, - "block_time": 1726509693, - "asset_info": { - "divisible": true, - "asset_longname": null, - "description": "The Counterparty protocol native currency", - "locked": true, - "issuer": null - }, - "give_quantity_normalized": "0.00000001", - "give_remaining_normalized": "0.00000020", - "escrow_quantity_normalized": "0.00000010", - "satoshirate_normalized": "0.00000001", - "satoshi_price_normalized": "0.00000001" - }, { "tx_index": 26, - "tx_hash": "e4fcdf91df3b0bbacb56d49f65bba5e59c88e92c829d7c8b3f251d5e20457f4e", + "tx_hash": "3df6d90991175a0c2aabbe0dc87cacd5d92c90cb996ce5b1514492f2585c61fc", "block_index": 141, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "asset": "XCP", "give_quantity": 1, "escrow_quantity": 10000, @@ -5755,7 +5853,7 @@ Returns the dispensers of an address "give_remaining": 0, "oracle_address": null, "last_status_tx_hash": null, - "origin": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "origin": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "dispense_count": 2, "last_status_tx_source": null, "close_block_index": null, @@ -5765,7 +5863,7 @@ Returns the dispensers of an address "fiat_unit": null, "oracle_price_last_updated": null, "satoshi_price": 1, - "block_time": 1726509680, + "block_time": 1727200803, "asset_info": { "divisible": true, "asset_longname": null, @@ -5781,7 +5879,7 @@ Returns the dispensers of an address } ], "next_cursor": null, - "result_count": 2 + "result_count": 1 } ``` @@ -5790,7 +5888,7 @@ Returns the dispensers of an address Returns the dispenser of an address and an asset + Parameters - + address: `bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj` (str, required) - The address to return + + address: `bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs` (str, required) - The address to return + asset: `XCP` (str, required) - The asset to return + verbose: `true` (bool, optional) - Include asset and dispenser info and normalized quantities in the response. + Default: `false` @@ -5802,20 +5900,20 @@ Returns the dispenser of an address and an asset ``` { "result": { - "tx_index": 30, - "tx_hash": "d3713f7f4355cf95ddb00030d4c53655897b901d6827b640ee27cc83efaba2e6", - "block_index": 144, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "tx_index": 26, + "tx_hash": "3df6d90991175a0c2aabbe0dc87cacd5d92c90cb996ce5b1514492f2585c61fc", + "block_index": 141, + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "asset": "XCP", "give_quantity": 1, - "escrow_quantity": 10, + "escrow_quantity": 10000, "satoshirate": 1, - "status": 0, - "give_remaining": 20, + "status": 10, + "give_remaining": 0, "oracle_address": null, "last_status_tx_hash": null, - "origin": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "dispense_count": 0, + "origin": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "dispense_count": 2, "last_status_tx_source": null, "close_block_index": null, "confirmed": true, @@ -5824,7 +5922,7 @@ Returns the dispenser of an address and an asset "fiat_unit": null, "oracle_price_last_updated": null, "satoshi_price": 1, - "block_time": 1726509693, + "block_time": 1727200803, "asset_info": { "divisible": true, "asset_longname": null, @@ -5833,8 +5931,8 @@ Returns the dispenser of an address and an asset "issuer": null }, "give_quantity_normalized": "0.00000001", - "give_remaining_normalized": "0.00000020", - "escrow_quantity_normalized": "0.00000010", + "give_remaining_normalized": "0.00000000", + "escrow_quantity_normalized": "0.00010000", "satoshirate_normalized": "0.00000001", "satoshi_price_normalized": "0.00000001" } @@ -5846,7 +5944,7 @@ Returns the dispenser of an address and an asset Returns the dispenses of a source + Parameters - + address: `bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj` (str, required) - The address to return + + address: `bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs` (str, required) - The address to return + cursor (str, optional) - The last index of the dispenses to return + Default: `None` + limit: `5` (int, optional) - The maximum number of dispenses to return @@ -5866,19 +5964,19 @@ Returns the dispenses of a source { "tx_index": 28, "dispense_index": 0, - "tx_hash": "ab0fd3f5a4ce7ef637dfa113da8a1d7ca7f9b7b8ef7bea07721c55ef2aee9d2f", + "tx_hash": "6ae257db1a77e44eb808057e9944b6f6e15eebf699db2c77f3009100a550b7fa", "block_index": 141, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "destination": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "destination": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", "asset": "XCP", "dispense_quantity": 4000, - "dispenser_tx_hash": "e4fcdf91df3b0bbacb56d49f65bba5e59c88e92c829d7c8b3f251d5e20457f4e", + "dispenser_tx_hash": "3df6d90991175a0c2aabbe0dc87cacd5d92c90cb996ce5b1514492f2585c61fc", "btc_amount": 4000, "confirmed": true, "dispenser": { "tx_index": 26, "block_index": 141, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "give_quantity": 1, "escrow_quantity": 10000, "satoshirate": 1, @@ -5886,7 +5984,7 @@ Returns the dispenses of a source "give_remaining": 0, "oracle_address": null, "last_status_tx_hash": null, - "origin": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "origin": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "dispense_count": 2, "last_status_tx_source": null, "close_block_index": null, @@ -5901,7 +5999,7 @@ Returns the dispenses of a source "satoshirate_normalized": "0.00000001", "satoshi_price_normalized": "0.00000001" }, - "block_time": 1726509680, + "block_time": 1727200803, "asset_info": { "divisible": true, "asset_longname": null, @@ -5915,19 +6013,19 @@ Returns the dispenses of a source { "tx_index": 27, "dispense_index": 0, - "tx_hash": "54eee03a80a18a6e816f27408ce071f7c7fefac72abc8ade14e835ad5f1563ce", + "tx_hash": "2a07cfa93bced14f59b80e10872f5fe4a406622078c0b85295c5c4149820d102", "block_index": 140, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "destination": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "destination": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", "asset": "XCP", "dispense_quantity": 6000, - "dispenser_tx_hash": "e4fcdf91df3b0bbacb56d49f65bba5e59c88e92c829d7c8b3f251d5e20457f4e", + "dispenser_tx_hash": "3df6d90991175a0c2aabbe0dc87cacd5d92c90cb996ce5b1514492f2585c61fc", "btc_amount": 6000, "confirmed": true, "dispenser": { "tx_index": 26, "block_index": 141, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "give_quantity": 1, "escrow_quantity": 10000, "satoshirate": 1, @@ -5935,7 +6033,7 @@ Returns the dispenses of a source "give_remaining": 0, "oracle_address": null, "last_status_tx_hash": null, - "origin": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "origin": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "dispense_count": 2, "last_status_tx_source": null, "close_block_index": null, @@ -5950,7 +6048,7 @@ Returns the dispenses of a source "satoshirate_normalized": "0.00000001", "satoshi_price_normalized": "0.00000001" }, - "block_time": 1726509665, + "block_time": 1727200798, "asset_info": { "divisible": true, "asset_longname": null, @@ -5972,7 +6070,7 @@ Returns the dispenses of a source Returns the dispenses of a destination + Parameters - + address: `bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t` (str, required) - The address to return + + address: `bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9` (str, required) - The address to return + cursor (str, optional) - The last index of the dispenses to return + Default: `None` + limit: `5` (int, optional) - The maximum number of dispenses to return @@ -5992,19 +6090,19 @@ Returns the dispenses of a destination { "tx_index": 28, "dispense_index": 0, - "tx_hash": "ab0fd3f5a4ce7ef637dfa113da8a1d7ca7f9b7b8ef7bea07721c55ef2aee9d2f", + "tx_hash": "6ae257db1a77e44eb808057e9944b6f6e15eebf699db2c77f3009100a550b7fa", "block_index": 141, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "destination": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "destination": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", "asset": "XCP", "dispense_quantity": 4000, - "dispenser_tx_hash": "e4fcdf91df3b0bbacb56d49f65bba5e59c88e92c829d7c8b3f251d5e20457f4e", + "dispenser_tx_hash": "3df6d90991175a0c2aabbe0dc87cacd5d92c90cb996ce5b1514492f2585c61fc", "btc_amount": 4000, "confirmed": true, "dispenser": { "tx_index": 26, "block_index": 141, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "give_quantity": 1, "escrow_quantity": 10000, "satoshirate": 1, @@ -6012,7 +6110,7 @@ Returns the dispenses of a destination "give_remaining": 0, "oracle_address": null, "last_status_tx_hash": null, - "origin": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "origin": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "dispense_count": 2, "last_status_tx_source": null, "close_block_index": null, @@ -6027,7 +6125,7 @@ Returns the dispenses of a destination "satoshirate_normalized": "0.00000001", "satoshi_price_normalized": "0.00000001" }, - "block_time": 1726509680, + "block_time": 1727200803, "asset_info": { "divisible": true, "asset_longname": null, @@ -6041,19 +6139,19 @@ Returns the dispenses of a destination { "tx_index": 27, "dispense_index": 0, - "tx_hash": "54eee03a80a18a6e816f27408ce071f7c7fefac72abc8ade14e835ad5f1563ce", + "tx_hash": "2a07cfa93bced14f59b80e10872f5fe4a406622078c0b85295c5c4149820d102", "block_index": 140, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "destination": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "destination": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", "asset": "XCP", "dispense_quantity": 6000, - "dispenser_tx_hash": "e4fcdf91df3b0bbacb56d49f65bba5e59c88e92c829d7c8b3f251d5e20457f4e", + "dispenser_tx_hash": "3df6d90991175a0c2aabbe0dc87cacd5d92c90cb996ce5b1514492f2585c61fc", "btc_amount": 6000, "confirmed": true, "dispenser": { "tx_index": 26, "block_index": 141, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "give_quantity": 1, "escrow_quantity": 10000, "satoshirate": 1, @@ -6061,7 +6159,7 @@ Returns the dispenses of a destination "give_remaining": 0, "oracle_address": null, "last_status_tx_hash": null, - "origin": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "origin": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "dispense_count": 2, "last_status_tx_source": null, "close_block_index": null, @@ -6076,7 +6174,7 @@ Returns the dispenses of a destination "satoshirate_normalized": "0.00000001", "satoshi_price_normalized": "0.00000001" }, - "block_time": 1726509665, + "block_time": 1727200798, "asset_info": { "divisible": true, "asset_longname": null, @@ -6098,7 +6196,7 @@ Returns the dispenses of a destination Returns the dispenses of an address and an asset + Parameters - + address: `bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj` (str, required) - The address to return + + address: `bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs` (str, required) - The address to return + asset: `XCP` (str, required) - The asset to return + cursor (str, optional) - The last index of the dispenses to return + Default: `None` @@ -6119,19 +6217,19 @@ Returns the dispenses of an address and an asset { "tx_index": 28, "dispense_index": 0, - "tx_hash": "ab0fd3f5a4ce7ef637dfa113da8a1d7ca7f9b7b8ef7bea07721c55ef2aee9d2f", + "tx_hash": "6ae257db1a77e44eb808057e9944b6f6e15eebf699db2c77f3009100a550b7fa", "block_index": 141, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "destination": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "destination": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", "asset": "XCP", "dispense_quantity": 4000, - "dispenser_tx_hash": "e4fcdf91df3b0bbacb56d49f65bba5e59c88e92c829d7c8b3f251d5e20457f4e", + "dispenser_tx_hash": "3df6d90991175a0c2aabbe0dc87cacd5d92c90cb996ce5b1514492f2585c61fc", "btc_amount": 4000, "confirmed": true, "dispenser": { "tx_index": 26, "block_index": 141, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "give_quantity": 1, "escrow_quantity": 10000, "satoshirate": 1, @@ -6139,7 +6237,7 @@ Returns the dispenses of an address and an asset "give_remaining": 0, "oracle_address": null, "last_status_tx_hash": null, - "origin": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "origin": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "dispense_count": 2, "last_status_tx_source": null, "close_block_index": null, @@ -6154,7 +6252,7 @@ Returns the dispenses of an address and an asset "satoshirate_normalized": "0.00000001", "satoshi_price_normalized": "0.00000001" }, - "block_time": 1726509680, + "block_time": 1727200803, "asset_info": { "divisible": true, "asset_longname": null, @@ -6168,19 +6266,19 @@ Returns the dispenses of an address and an asset { "tx_index": 27, "dispense_index": 0, - "tx_hash": "54eee03a80a18a6e816f27408ce071f7c7fefac72abc8ade14e835ad5f1563ce", + "tx_hash": "2a07cfa93bced14f59b80e10872f5fe4a406622078c0b85295c5c4149820d102", "block_index": 140, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "destination": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "destination": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", "asset": "XCP", "dispense_quantity": 6000, - "dispenser_tx_hash": "e4fcdf91df3b0bbacb56d49f65bba5e59c88e92c829d7c8b3f251d5e20457f4e", + "dispenser_tx_hash": "3df6d90991175a0c2aabbe0dc87cacd5d92c90cb996ce5b1514492f2585c61fc", "btc_amount": 6000, "confirmed": true, "dispenser": { "tx_index": 26, "block_index": 141, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "give_quantity": 1, "escrow_quantity": 10000, "satoshirate": 1, @@ -6188,7 +6286,7 @@ Returns the dispenses of an address and an asset "give_remaining": 0, "oracle_address": null, "last_status_tx_hash": null, - "origin": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "origin": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "dispense_count": 2, "last_status_tx_source": null, "close_block_index": null, @@ -6203,7 +6301,7 @@ Returns the dispenses of an address and an asset "satoshirate_normalized": "0.00000001", "satoshi_price_normalized": "0.00000001" }, - "block_time": 1726509665, + "block_time": 1727200798, "asset_info": { "divisible": true, "asset_longname": null, @@ -6225,7 +6323,7 @@ Returns the dispenses of an address and an asset Returns the dispenses of an address and an asset + Parameters - + address: `bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t` (str, required) - The address to return + + address: `bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9` (str, required) - The address to return + asset: `XCP` (str, required) - The asset to return + cursor (str, optional) - The last index of the dispenses to return + Default: `None` @@ -6246,19 +6344,19 @@ Returns the dispenses of an address and an asset { "tx_index": 28, "dispense_index": 0, - "tx_hash": "ab0fd3f5a4ce7ef637dfa113da8a1d7ca7f9b7b8ef7bea07721c55ef2aee9d2f", + "tx_hash": "6ae257db1a77e44eb808057e9944b6f6e15eebf699db2c77f3009100a550b7fa", "block_index": 141, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "destination": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "destination": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", "asset": "XCP", "dispense_quantity": 4000, - "dispenser_tx_hash": "e4fcdf91df3b0bbacb56d49f65bba5e59c88e92c829d7c8b3f251d5e20457f4e", + "dispenser_tx_hash": "3df6d90991175a0c2aabbe0dc87cacd5d92c90cb996ce5b1514492f2585c61fc", "btc_amount": 4000, "confirmed": true, "dispenser": { "tx_index": 26, "block_index": 141, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "give_quantity": 1, "escrow_quantity": 10000, "satoshirate": 1, @@ -6266,7 +6364,7 @@ Returns the dispenses of an address and an asset "give_remaining": 0, "oracle_address": null, "last_status_tx_hash": null, - "origin": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "origin": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "dispense_count": 2, "last_status_tx_source": null, "close_block_index": null, @@ -6281,7 +6379,7 @@ Returns the dispenses of an address and an asset "satoshirate_normalized": "0.00000001", "satoshi_price_normalized": "0.00000001" }, - "block_time": 1726509680, + "block_time": 1727200803, "asset_info": { "divisible": true, "asset_longname": null, @@ -6295,19 +6393,19 @@ Returns the dispenses of an address and an asset { "tx_index": 27, "dispense_index": 0, - "tx_hash": "54eee03a80a18a6e816f27408ce071f7c7fefac72abc8ade14e835ad5f1563ce", + "tx_hash": "2a07cfa93bced14f59b80e10872f5fe4a406622078c0b85295c5c4149820d102", "block_index": 140, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "destination": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "destination": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", "asset": "XCP", "dispense_quantity": 6000, - "dispenser_tx_hash": "e4fcdf91df3b0bbacb56d49f65bba5e59c88e92c829d7c8b3f251d5e20457f4e", + "dispenser_tx_hash": "3df6d90991175a0c2aabbe0dc87cacd5d92c90cb996ce5b1514492f2585c61fc", "btc_amount": 6000, "confirmed": true, "dispenser": { "tx_index": 26, "block_index": 141, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "give_quantity": 1, "escrow_quantity": 10000, "satoshirate": 1, @@ -6315,7 +6413,7 @@ Returns the dispenses of an address and an asset "give_remaining": 0, "oracle_address": null, "last_status_tx_hash": null, - "origin": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "origin": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "dispense_count": 2, "last_status_tx_source": null, "close_block_index": null, @@ -6330,7 +6428,7 @@ Returns the dispenses of an address and an asset "satoshirate_normalized": "0.00000001", "satoshi_price_normalized": "0.00000001" }, - "block_time": 1726509665, + "block_time": 1727200798, "asset_info": { "divisible": true, "asset_longname": null, @@ -6352,7 +6450,7 @@ Returns the dispenses of an address and an asset Returns the sweeps of an address + Parameters - + address: `bcrt1q3ds7n4l97tumdkgcr3vyhe04zaxce8ujr8fmr2` (str, required) - The address to return + + address: `bcrt1q9cf2ed4wk37qye08wlppw39l7prxws7afa3krk` (str, required) - The address to return + cursor (str, optional) - The last index of the sweeps to return + Default: `None` + limit: `5` (int, optional) - The maximum number of sweeps to return @@ -6370,17 +6468,17 @@ Returns the sweeps of an address { "result": [ { - "tx_index": 58, - "tx_hash": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", - "block_index": 192, - "source": "bcrt1q3ds7n4l97tumdkgcr3vyhe04zaxce8ujr8fmr2", - "destination": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "tx_index": 59, + "tx_hash": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", + "block_index": 193, + "source": "bcrt1q9cf2ed4wk37qye08wlppw39l7prxws7afa3krk", + "destination": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "flags": 1, "status": "valid", "memo": "sweep my assets", "fee_paid": 600000, "confirmed": true, - "block_time": 1726509908, + "block_time": 1727201012, "fee_paid_normalized": "0.00600000" } ], @@ -6394,7 +6492,7 @@ Returns the sweeps of an address Returns the issuances of an address + Parameters - + address: `bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj` (str, required) - The address to return + + address: `bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs` (str, required) - The address to return + cursor (str, optional) - The last index of the issuances to return + Default: `None` + limit: `5` (int, optional) - The maximum number of issuances to return @@ -6412,15 +6510,15 @@ Returns the issuances of an address { "result": [ { - "tx_index": 46, - "tx_hash": "3f80ba6dc66be4e5b604bbf8e1e2007161960069d871f7cb00b1d24f9f090491", + "tx_index": 47, + "tx_hash": "efd20bb15eb6a7ce22645a0fb33b1873d00dc0cdeb9533d37037e0fd6a63f512", "msg_index": 0, - "block_index": 159, + "block_index": 160, "asset": "A95428956980101314", "quantity": 100000000000, "divisible": true, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "transfer": false, "callable": false, "call_date": 0, @@ -6435,20 +6533,20 @@ Returns the issuances of an address "fair_minting": false, "asset_events": "creation", "confirmed": true, - "block_time": 1726509780, + "block_time": 1727200884, "quantity_normalized": "1000.00000000", "fee_paid_normalized": "0.00000000" }, { - "tx_index": 45, - "tx_hash": "99d6840da9077ad147d3cb8e3a527ebcb05445b5e72d0fa4f9429f91a2ed5f9f", + "tx_index": 46, + "tx_hash": "af9f8fab45dd2130f26f25edacaa4de3e37feaa202ad6a578e5a60d0aa935b46", "msg_index": 0, - "block_index": 158, + "block_index": 159, "asset": "TESTLOCKDESC", "quantity": 0, "divisible": true, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "transfer": false, "callable": false, "call_date": 0, @@ -6463,20 +6561,20 @@ Returns the issuances of an address "fair_minting": false, "asset_events": "lock_description reissuance", "confirmed": true, - "block_time": 1726509775, + "block_time": 1727200880, "quantity_normalized": "0.00000000", "fee_paid_normalized": "0.00000000" }, { - "tx_index": 44, - "tx_hash": "edf7eb0a60e46ad53360d769c00fbd350628dff893bb6f1869570c9fdcfc71af", + "tx_index": 45, + "tx_hash": "54776b690fc35e38368ab8ddb01f39437d6ad2177f025473e278802b9748e23c", "msg_index": 0, - "block_index": 157, + "block_index": 158, "asset": "A95428959745315388", "quantity": 0, "divisible": true, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "transfer": false, "callable": false, "call_date": 0, @@ -6491,20 +6589,20 @@ Returns the issuances of an address "fair_minting": false, "asset_events": "creation", "confirmed": true, - "block_time": 1726509760, + "block_time": 1727200875, "quantity_normalized": "0.00000000", "fee_paid_normalized": "0.00000000" }, { - "tx_index": 43, - "tx_hash": "23d681cb0c9d9310fd8150fcabf440c84cae363db926d0fcde70cbe12373f96f", + "tx_index": 44, + "tx_hash": "e12a079169fa7227aca6b168eafdf85cc67738b746b00fb0efa698d2c977b8f1", "msg_index": 0, - "block_index": 156, + "block_index": 157, "asset": "TESTLOCKDESC", "quantity": 10000000000, "divisible": true, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "transfer": false, "callable": false, "call_date": 0, @@ -6519,20 +6617,20 @@ Returns the issuances of an address "fair_minting": false, "asset_events": "creation", "confirmed": true, - "block_time": 1726509746, + "block_time": 1727200871, "quantity_normalized": "100.00000000", "fee_paid_normalized": "0.50000000" }, { - "tx_index": 34, - "tx_hash": "73ed3c167032f8d2648710f1bceb54e23fc9faf80658565c8e897ea0fa7bcf35", + "tx_index": 35, + "tx_hash": "ff6dbba06ee6d18f1d758e73eb167c0e1145b485690a071cb72aafa68a978aae", "msg_index": 0, - "block_index": 147, + "block_index": 148, "asset": "MYASSETA", "quantity": 100000000000, "divisible": true, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "transfer": false, "callable": false, "call_date": 0, @@ -6547,7 +6645,7 @@ Returns the issuances of an address "fair_minting": false, "asset_events": "creation", "confirmed": true, - "block_time": 1726509706, + "block_time": 1727200832, "quantity_normalized": "1000.00000000", "fee_paid_normalized": "0.50000000" } @@ -6562,7 +6660,7 @@ Returns the issuances of an address Returns the valid assets of an issuer + Parameters - + address: `bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj` (str, required) - The issuer to return + + address: `bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs` (str, required) - The issuer to return + named: `true` (bool, optional) - Whether to return only named assets + Default: `None` + cursor (str, optional) - The last index of the assets to return @@ -6585,42 +6683,42 @@ Returns the valid assets of an issuer "asset": "TESTLOCKDESC", "asset_id": "70403005118950974", "asset_longname": null, - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "owner": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "owner": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false, "supply": 10000000000, "description": "Test Locking Description", - "first_issuance_block_index": 156, - "last_issuance_block_index": 158, + "first_issuance_block_index": 157, + "last_issuance_block_index": 159, "confirmed": true, - "first_issuance_block_time": 1726509746, - "last_issuance_block_time": 1726509775, + "first_issuance_block_time": 1727200871, + "last_issuance_block_time": 1727200880, "supply_normalized": "100.00000000" }, { "asset": "MYASSETA", "asset_id": "103804245870", "asset_longname": null, - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "owner": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "owner": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false, "supply": 100000000000, "description": "My super asset A", - "first_issuance_block_index": 147, - "last_issuance_block_index": 147, + "first_issuance_block_index": 148, + "last_issuance_block_index": 148, "confirmed": true, - "first_issuance_block_time": 1726509706, - "last_issuance_block_time": 1726509706, + "first_issuance_block_time": 1727200832, + "last_issuance_block_time": 1727200832, "supply_normalized": "1000.00000000" }, { "asset": "FAIRMINTD", "asset_id": "1046814266085", "asset_longname": "", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "owner": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "owner": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false, "supply": 40, @@ -6628,16 +6726,16 @@ Returns the valid assets of an issuer "first_issuance_block_index": 135, "last_issuance_block_index": 136, "confirmed": true, - "first_issuance_block_time": 1726509644, - "last_issuance_block_time": 1726509648, + "first_issuance_block_time": 1727200777, + "last_issuance_block_time": 1727200781, "supply_normalized": "0.00000040" }, { "asset": "FAIRMINTC", "asset_id": "1046814266084", "asset_longname": "", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "owner": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "owner": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false, "supply": 19, @@ -6645,16 +6743,16 @@ Returns the valid assets of an issuer "first_issuance_block_index": 131, "last_issuance_block_index": 134, "confirmed": true, - "first_issuance_block_time": 1726509617, - "last_issuance_block_time": 1726509639, + "first_issuance_block_time": 1727200760, + "last_issuance_block_time": 1727200773, "supply_normalized": "0.00000019" }, { "asset": "FAIRMINTB", "asset_id": "1046814266083", "asset_longname": "", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "owner": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "owner": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false, "supply": 0, @@ -6662,8 +6760,8 @@ Returns the valid assets of an issuer "first_issuance_block_index": 126, "last_issuance_block_index": 130, "confirmed": true, - "first_issuance_block_time": 1726509596, - "last_issuance_block_time": 1726509613, + "first_issuance_block_time": 1727200740, + "last_issuance_block_time": 1727200756, "supply_normalized": "0.00000000" } ], @@ -6677,8 +6775,8 @@ Returns the valid assets of an issuer Returns the transactions of an address + Parameters - + address: `bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj` (str, required) - The address to return - + cursor: `59` (str, optional) - The last transaction index to return + + address: `bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs` (str, required) - The address to return + + cursor: `60` (str, optional) - The last transaction index to return + Default: `None` + limit: `5` (int, optional) - The maximum number of transactions to return + Default: `10` @@ -6695,18 +6793,18 @@ Returns the transactions of an address { "result": [ { - "tx_index": 57, - "tx_hash": "7b7048040c893c69892bd088ce48db79b96b9c1d7221b50d903064ff5a1ed232", - "block_index": 191, - "block_hash": "44555f5ae4cd1f61f3df9e675ad106b01fca685a76eff37b685758a1f234afb2", - "block_time": 1726509903, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "tx_index": 58, + "tx_hash": "132d67269995e3bc9e40d83bc0badefad56d85f0229eedfb0e2ccdf829d03d28", + "block_index": 192, + "block_hash": "7aa8cd7d46e84e234d53f8c14736afd98d1d5b8441f4f425fe8c6a52c3f33c87", + "block_time": 1727201008, + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "destination": null, "btc_amount": 0, "fee": 10000, "data": "0a000000000000000100000000000003e8000000000000000000000000000003e800150000000000000000", "supported": true, - "utxos_info": "7b7048040c893c69892bd088ce48db79b96b9c1d7221b50d903064ff5a1ed232:1", + "utxos_info": "132d67269995e3bc9e40d83bc0badefad56d85f0229eedfb0e2ccdf829d03d28:1", "confirmed": true, "unpacked_data": { "message_type": "order", @@ -6741,42 +6839,42 @@ Returns the transactions of an address "btc_amount_normalized": "0.00000000" }, { - "tx_index": 56, - "tx_hash": "18a9b72fc9e67470cff556297fa5f3dd95ea7d472693f42d597db7ad598c05ec", - "block_index": 190, - "block_hash": "214a1e1ed38b3e555167f5f21d78c8c3e487ea62d748cd8200a3b3e18f2b6017", - "block_time": 1726509899, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "tx_index": 57, + "tx_hash": "1d314894d90254c43598647c4ebca9b8f3f0d20a522eb8130d9955e95ea1c197", + "block_index": 191, + "block_hash": "6df0e71250aea0de3e29c053f2ca49cc02c029f911a25356f455303c447d0a63", + "block_time": 1727201003, + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "destination": null, "btc_amount": 0, "fee": 10000, - "data": "465e324d551a694d3f6ffc9c67b3db8817d470ba32257047ddee237d3d07c1a1e2", + "data": "4683919cf82dd5eb1e2e1f6d3f3f752d34d41636ed00ab8ff78369eb81475b8e57", "supported": true, - "utxos_info": "18a9b72fc9e67470cff556297fa5f3dd95ea7d472693f42d597db7ad598c05ec:1", + "utxos_info": "1d314894d90254c43598647c4ebca9b8f3f0d20a522eb8130d9955e95ea1c197:1", "confirmed": true, "unpacked_data": { "message_type": "cancel", "message_type_id": 70, "message_data": { - "offer_hash": "5e324d551a694d3f6ffc9c67b3db8817d470ba32257047ddee237d3d07c1a1e2", + "offer_hash": "83919cf82dd5eb1e2e1f6d3f3f752d34d41636ed00ab8ff78369eb81475b8e57", "status": "valid" } }, "btc_amount_normalized": "0.00000000" }, { - "tx_index": 55, - "tx_hash": "5e324d551a694d3f6ffc9c67b3db8817d470ba32257047ddee237d3d07c1a1e2", - "block_index": 189, - "block_hash": "4147554b4c1d081b097b1c6278509e7da43fbec27bdb1ad6cb8414e44ba4445b", - "block_time": 1726509894, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "tx_index": 56, + "tx_hash": "83919cf82dd5eb1e2e1f6d3f3f752d34d41636ed00ab8ff78369eb81475b8e57", + "block_index": 190, + "block_hash": "0878eceac6ded73fd8e873772ed9f93c488a46bdde659e59451e65eb9a3ee390", + "block_time": 1727200999, + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "destination": null, "btc_amount": 0, "fee": 10000, "data": "0a000000000000000100000000000003e8000000000000000000000000000003e800150000000000000000", "supported": true, - "utxos_info": "5e324d551a694d3f6ffc9c67b3db8817d470ba32257047ddee237d3d07c1a1e2:1", + "utxos_info": "83919cf82dd5eb1e2e1f6d3f3f752d34d41636ed00ab8ff78369eb81475b8e57:1", "confirmed": true, "unpacked_data": { "message_type": "order", @@ -6811,18 +6909,18 @@ Returns the transactions of an address "btc_amount_normalized": "0.00000000" }, { - "tx_index": 54, - "tx_hash": "e8fda956958ed7de0a98e42d8d28349b9c7b5e20da375c185c5830526df6594f", - "block_index": 188, - "block_hash": "6af6f23af835e0b3e7515a3d98e43a2ff75b7baf8d552fe27cbaf82dc8974780", - "block_time": 1726509890, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "tx_index": 55, + "tx_hash": "4cd813fae2558e89f2f9411f38daa7d4c10c94a267daa38155cf18fb4d9fd055", + "block_index": 189, + "block_hash": "73be93be2c91012204c8a1e8321475345c6c634627235302e1e7abe56fcb5755", + "block_time": 1727200995, + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "destination": null, "btc_amount": 0, "fee": 10000, - "data": "0300038057841d54055a90ed31a47e9821fd3118e6e78592808b61e9d7e5f2f9b6d9181c584be5f5174d8c9f9280ae2b0c1095bbdf23747f76b242be716817701b78400000060acdc5db9400000000000000290000000000000005200000000000000020000000000000001400", + "data": "0300038054c1ba334a1912f96353f110938927c645ff9064802e12acb6aeb47c0265e777c21744bff0466743dd806c45b04730370dc7e778ed200c19f22a08c064a9400000060acdc5db9400000000000000290000000000000005200000000000000020000000000000001400", "supported": true, - "utxos_info": "e8fda956958ed7de0a98e42d8d28349b9c7b5e20da375c185c5830526df6594f:0", + "utxos_info": "4cd813fae2558e89f2f9411f38daa7d4c10c94a267daa38155cf18fb4d9fd055:0", "confirmed": true, "unpacked_data": { "message_type": "mpma_send", @@ -6830,14 +6928,14 @@ Returns the transactions of an address "message_data": [ { "asset": "MYASSETA", - "destination": "bcrt1q3ds7n4l97tumdkgcr3vyhe04zaxce8ujr8fmr2", + "destination": "bcrt1q9cf2ed4wk37qye08wlppw39l7prxws7afa3krk", "quantity": 10, "memo": null, "memo_is_hex": null, "asset_info": { "asset_longname": null, "description": "My super asset A", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, @@ -6845,7 +6943,7 @@ Returns the transactions of an address }, { "asset": "XCP", - "destination": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", + "destination": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", "quantity": 10, "memo": null, "memo_is_hex": null, @@ -6863,18 +6961,18 @@ Returns the transactions of an address "btc_amount_normalized": "0.00000000" }, { - "tx_index": 49, - "tx_hash": "675f8dccad4bdcf4b54ce5aca7ddc442f642d63e518d64ad6068a264fb9894e1", - "block_index": 183, - "block_hash": "266c58f4906e9a1c4f81f972d7728ac8f370b75de6c542c61c838013ad48749d", - "block_time": 1726509858, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "tx_index": 50, + "tx_hash": "4844c5f31805a95e25af849d3e888b41d4cba82846300010c82895f4072e57f6", + "block_index": 184, + "block_hash": "61efaec54e3d3bbdff76ab9d2b2a4cf1517d3d890c37b20548b93484369b1201", + "block_time": 1727200964, + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "destination": null, "btc_amount": 0, "fee": 10000, "data": "0a000000000000000100000000000027100000000000000000000000000000271000150000000000000000", "supported": true, - "utxos_info": "675f8dccad4bdcf4b54ce5aca7ddc442f642d63e518d64ad6068a264fb9894e1:1", + "utxos_info": "4844c5f31805a95e25af849d3e888b41d4cba82846300010c82895f4072e57f6:1", "confirmed": true, "unpacked_data": { "message_type": "order", @@ -6909,8 +7007,8 @@ Returns the transactions of an address "btc_amount_normalized": "0.00000000" } ], - "next_cursor": 47, - "result_count": 23 + "next_cursor": 48, + "result_count": 24 } ``` @@ -6919,7 +7017,7 @@ Returns the transactions of an address Returns the dividends distributed by an address + Parameters - + address: `bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj` (str, required) - The address to return + + address: `bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs` (str, required) - The address to return + cursor (str, optional) - The last index of the assets to return + Default: `None` + limit: `5` (int, optional) - The maximum number of assets to return @@ -6937,21 +7035,21 @@ Returns the dividends distributed by an address { "result": [ { - "tx_index": 40, - "tx_hash": "65e4ec441796883270c7bb0f18ca610e54b1ad0b3ae8a33e572bca985f65ee00", - "block_index": 153, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "tx_index": 41, + "tx_hash": "1b9303b3959067c0857fe1abb4fdd4b3684c7534c12691382004cc31a9afcca4", + "block_index": 154, + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "asset": "MYASSETA", "dividend_asset": "XCP", "quantity_per_unit": 100000000, "fee_paid": 40000, "status": "valid", "confirmed": true, - "block_time": 1726509732, + "block_time": 1727200857, "asset_info": { "asset_longname": null, "description": "My super asset A", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, @@ -6971,12 +7069,12 @@ Returns the dividends distributed by an address } ``` -### Get Orders By Address [GET /v2/addresses/{address}/orders{?status}{&cursor}{&limit}{&offset}{&verbose}{&show_unconfirmed}] +### Get Orders By Address [GET /v2/addresses/{address}/orders{?status}{&cursor}{&limit}{&offset}{&sort}{&verbose}{&show_unconfirmed}] Returns the orders of an address + Parameters - + address: `bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj` (str, required) - The address to return + + address: `bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs` (str, required) - The address to return + status (enum[str], optional) - The status of the orders to return + Default: `all` + Members @@ -6991,6 +7089,8 @@ Returns the orders of an address + Default: `100` + offset (int, optional) - The number of lines to skip before returning results (overrides the `cursor` parameter) + Default: `None` + + sort: `expiration:desc` (str, optional) - The sort order of the orders to return (overrides the `cursor` parameter) + + Default: `None` + verbose: `true` (bool, optional) - Include asset and dispenser info and normalized quantities in the response. + Default: `false` + show_unconfirmed (bool, optional) - Include results from Mempool. @@ -7002,10 +7102,10 @@ Returns the orders of an address { "result": [ { - "tx_index": 57, - "tx_hash": "7b7048040c893c69892bd088ce48db79b96b9c1d7221b50d903064ff5a1ed232", - "block_index": 191, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "tx_index": 48, + "tx_hash": "f90bb3520b4cd8e8f43ae4a416ea102f6a45a4cfd10b4620066271057abde926", + "block_index": 183, + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "give_asset": "XCP", "give_quantity": 1000, "give_remaining": 1000, @@ -7013,14 +7113,14 @@ Returns the orders of an address "get_quantity": 1000, "get_remaining": 1000, "expiration": 21, - "expire_index": 212, + "expire_index": 182, "fee_required": 0, "fee_required_remaining": 0, "fee_provided": 10000, "fee_provided_remaining": 10000, - "status": "open", + "status": "expired", "confirmed": true, - "block_time": 1726509903, + "block_time": 1727200899, "give_asset_info": { "divisible": true, "asset_longname": null, @@ -7045,25 +7145,25 @@ Returns the orders of an address "fee_provided_remaining_normalized": "0.00010000" }, { - "tx_index": 55, - "tx_hash": "5e324d551a694d3f6ffc9c67b3db8817d470ba32257047ddee237d3d07c1a1e2", - "block_index": 190, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "tx_index": 50, + "tx_hash": "4844c5f31805a95e25af849d3e888b41d4cba82846300010c82895f4072e57f6", + "block_index": 187, + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "give_asset": "XCP", - "give_quantity": 1000, - "give_remaining": 1000, + "give_quantity": 10000, + "give_remaining": 5000, "get_asset": "BTC", - "get_quantity": 1000, - "get_remaining": 1000, + "get_quantity": 10000, + "get_remaining": 5000, "expiration": 21, - "expire_index": 210, + "expire_index": 205, "fee_required": 0, "fee_required_remaining": 0, "fee_provided": 10000, "fee_provided_remaining": 10000, - "status": "cancelled", + "status": "open", "confirmed": true, - "block_time": 1726509899, + "block_time": 1727200986, "give_asset_info": { "divisible": true, "asset_longname": null, @@ -7078,35 +7178,35 @@ Returns the orders of an address "locked": false, "issuer": null }, - "give_quantity_normalized": "0.00001000", - "get_quantity_normalized": "0.00001000", - "get_remaining_normalized": "0.00001000", - "give_remaining_normalized": "0.00001000", + "give_quantity_normalized": "0.00010000", + "get_quantity_normalized": "0.00010000", + "get_remaining_normalized": "0.00005000", + "give_remaining_normalized": "0.00005000", "fee_provided_normalized": "0.00010000", "fee_required_normalized": "0.00000000", "fee_required_remaining_normalized": "0.00000000", "fee_provided_remaining_normalized": "0.00010000" }, { - "tx_index": 49, - "tx_hash": "675f8dccad4bdcf4b54ce5aca7ddc442f642d63e518d64ad6068a264fb9894e1", - "block_index": 186, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "tx_index": 56, + "tx_hash": "83919cf82dd5eb1e2e1f6d3f3f752d34d41636ed00ab8ff78369eb81475b8e57", + "block_index": 191, + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "give_asset": "XCP", - "give_quantity": 10000, - "give_remaining": 5000, + "give_quantity": 1000, + "give_remaining": 1000, "get_asset": "BTC", - "get_quantity": 10000, - "get_remaining": 5000, + "get_quantity": 1000, + "get_remaining": 1000, "expiration": 21, - "expire_index": 204, + "expire_index": 211, "fee_required": 0, "fee_required_remaining": 0, "fee_provided": 10000, "fee_provided_remaining": 10000, - "status": "open", + "status": "cancelled", "confirmed": true, - "block_time": 1726509871, + "block_time": 1727201003, "give_asset_info": { "divisible": true, "asset_longname": null, @@ -7121,20 +7221,20 @@ Returns the orders of an address "locked": false, "issuer": null }, - "give_quantity_normalized": "0.00010000", - "get_quantity_normalized": "0.00010000", - "get_remaining_normalized": "0.00005000", - "give_remaining_normalized": "0.00005000", + "give_quantity_normalized": "0.00001000", + "get_quantity_normalized": "0.00001000", + "get_remaining_normalized": "0.00001000", + "give_remaining_normalized": "0.00001000", "fee_provided_normalized": "0.00010000", "fee_required_normalized": "0.00000000", "fee_required_remaining_normalized": "0.00000000", "fee_provided_remaining_normalized": "0.00010000" }, { - "tx_index": 47, - "tx_hash": "e2263719273ed7cbb5496ae9daff21e24a2899e76feea1abbd4e91fa72766b5d", - "block_index": 182, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "tx_index": 58, + "tx_hash": "132d67269995e3bc9e40d83bc0badefad56d85f0229eedfb0e2ccdf829d03d28", + "block_index": 192, + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "give_asset": "XCP", "give_quantity": 1000, "give_remaining": 1000, @@ -7142,14 +7242,14 @@ Returns the orders of an address "get_quantity": 1000, "get_remaining": 1000, "expiration": 21, - "expire_index": 181, + "expire_index": 213, "fee_required": 0, "fee_required_remaining": 0, "fee_provided": 10000, "fee_provided_remaining": 10000, - "status": "expired", + "status": "open", "confirmed": true, - "block_time": 1726509796, + "block_time": 1727201008, "give_asset_info": { "divisible": true, "asset_longname": null, @@ -7184,7 +7284,7 @@ Returns the orders of an address Returns the fairminter by its source + Parameters - + address: `bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj` (str, required) - The source of the fairminter to return + + address: `bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs` (str, required) - The source of the fairminter to return + cursor (str, optional) - + Default: `None` + limit (int, optional) - @@ -7202,10 +7302,10 @@ Returns the fairminter by its source { "result": [ { - "tx_hash": "d91c1e127adf6010f11ee5d04a4cd804ece0ff8087b450f307ae85b6f5f83137", + "tx_hash": "5f1bb112a42ace59fa09d6a6fc1916eec2a940d44682b160c97bbae14494b127", "tx_index": 22, "block_index": 135, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "asset": "FAIRMINTD", "asset_parent": "", "asset_longname": "", @@ -7230,13 +7330,13 @@ Returns the fairminter by its source "commission": null, "paid_quantity": null, "confirmed": true, - "block_time": 1726509644 + "block_time": 1727200777 }, { - "tx_hash": "b8787fa4e26710112ef68030beafe12d09ec601552f130e5f37da63ba73eec12", + "tx_hash": "bf4d673a1117a0391adcac895de8ac4f234e093b9257df4ce473fe1e01bebf8b", "tx_index": 18, "block_index": 131, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "asset": "FAIRMINTC", "asset_parent": "", "asset_longname": "", @@ -7261,13 +7361,13 @@ Returns the fairminter by its source "commission": null, "paid_quantity": null, "confirmed": true, - "block_time": 1726509617 + "block_time": 1727200760 }, { - "tx_hash": "536537382f35f3fc4bf3bcb4f6957228528eaa802dc49361f6339cd575de0a16", + "tx_hash": "ef8994a7c4750636583ff8d92fe09ac8c38d280813f2e2e923e07c9b9a3d9cda", "tx_index": 14, "block_index": 130, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "asset": "FAIRMINTB", "asset_parent": "", "asset_longname": "", @@ -7292,13 +7392,13 @@ Returns the fairminter by its source "commission": null, "paid_quantity": null, "confirmed": true, - "block_time": 1726509613 + "block_time": 1727200756 }, { - "tx_hash": "7ae7bb5d540de02fd2b97d7234b6c87c925d0b6b3eac5a55e5ced650ce49eed1", + "tx_hash": "15f8f2368ab00936a53063e0f92508f82a1d6018e7495426e7dc81fc02f6d6f1", "tx_index": 10, "block_index": 125, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "asset": "FAIRMINTA", "asset_parent": "", "asset_longname": "", @@ -7323,7 +7423,7 @@ Returns the fairminter by its source "commission": null, "paid_quantity": null, "confirmed": true, - "block_time": 1726509592 + "block_time": 1727200736 } ], "next_cursor": null, @@ -7336,7 +7436,7 @@ Returns the fairminter by its source Returns the mints by address + Parameters - + address: `bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t` (str, required) - The address of the mints to return + + address: `bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9` (str, required) - The address of the mints to return + cursor (str, optional) - + Default: `None` + limit (int, optional) - @@ -7354,127 +7454,127 @@ Returns the mints by address { "result": [ { - "tx_hash": "a899b1a361e0514262442a4a300d7571606a3462d50819092e649c490fbcb1e6", + "tx_hash": "bccbb42deef048209e07d9fb0f7340bb2b1e8f10c5e54f1cfa55accb8ac66283", "tx_index": 23, "block_index": 136, - "source": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", - "fairminter_tx_hash": "d91c1e127adf6010f11ee5d04a4cd804ece0ff8087b450f307ae85b6f5f83137", + "source": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", + "fairminter_tx_hash": "5f1bb112a42ace59fa09d6a6fc1916eec2a940d44682b160c97bbae14494b127", "asset": "FAIRMINTD", "earn_quantity": 40, "paid_quantity": 34, "commission": 0, "status": "valid", "confirmed": true, - "block_time": 1726509648, + "block_time": 1727200781, "asset_info": { "asset_longname": "", "description": "", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false } }, { - "tx_hash": "43b87a7de82b3deb9845abcc6d33d3d9b61c21d58377115c5edefeabc763c9ae", + "tx_hash": "49b1e07978faa8eaf8d5ade692f3a64f4e80eb92bf2703f18114959d4f1e8e1c", "tx_index": 21, "block_index": 134, - "source": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", - "fairminter_tx_hash": "b8787fa4e26710112ef68030beafe12d09ec601552f130e5f37da63ba73eec12", + "source": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", + "fairminter_tx_hash": "bf4d673a1117a0391adcac895de8ac4f234e093b9257df4ce473fe1e01bebf8b", "asset": "FAIRMINTC", "earn_quantity": 11, "paid_quantity": 3, "commission": 0, "status": "valid", "confirmed": true, - "block_time": 1726509639, + "block_time": 1727200773, "asset_info": { "asset_longname": "", "description": "", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false } }, { - "tx_hash": "1148cccc0b0535df22ffd1571672abb937ff57bcefafc7af5d797405c8ce0b7f", + "tx_hash": "0111704cc5929b8559a29cf124f00b77724015a4d2c7565f2f4aa8422983be79", "tx_index": 20, "block_index": 133, - "source": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", - "fairminter_tx_hash": "b8787fa4e26710112ef68030beafe12d09ec601552f130e5f37da63ba73eec12", + "source": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", + "fairminter_tx_hash": "bf4d673a1117a0391adcac895de8ac4f234e093b9257df4ce473fe1e01bebf8b", "asset": "FAIRMINTC", "earn_quantity": 3, "paid_quantity": 1, "commission": 0, "status": "valid", "confirmed": true, - "block_time": 1726509625, + "block_time": 1727200769, "asset_info": { "asset_longname": "", "description": "", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false } }, { - "tx_hash": "a82d30ebc85da3571118450b2e29b8230ff34da2ee40ff7df9452727b80de1be", + "tx_hash": "32e316d766bcea23d558846c6d3bbccad179be94d731a8c4097b6f01aba8bacf", "tx_index": 19, "block_index": 132, - "source": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", - "fairminter_tx_hash": "b8787fa4e26710112ef68030beafe12d09ec601552f130e5f37da63ba73eec12", + "source": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", + "fairminter_tx_hash": "bf4d673a1117a0391adcac895de8ac4f234e093b9257df4ce473fe1e01bebf8b", "asset": "FAIRMINTC", "earn_quantity": 5, "paid_quantity": 1, "commission": 0, "status": "valid", "confirmed": true, - "block_time": 1726509620, + "block_time": 1727200764, "asset_info": { "asset_longname": "", "description": "", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false } }, { - "tx_hash": "2fe7ff0c16953b4aff424432759c2e48819f92f9c4440a7047e3c86f9ca21161", + "tx_hash": "19c02328fa03dcccdd42190a3098cb6335c5a3376c729e79054deeb22a5fdec9", "tx_index": 15, "block_index": 127, - "source": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", - "fairminter_tx_hash": "536537382f35f3fc4bf3bcb4f6957228528eaa802dc49361f6339cd575de0a16", + "source": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", + "fairminter_tx_hash": "ef8994a7c4750636583ff8d92fe09ac8c38d280813f2e2e923e07c9b9a3d9cda", "asset": "FAIRMINTB", "earn_quantity": 100000000, "paid_quantity": 100000000, "commission": 0, "status": "valid", "confirmed": true, - "block_time": 1726509599, + "block_time": 1727200744, "asset_info": { "asset_longname": "", "description": "", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false } }, { - "tx_hash": "320ca07cfa5b9233bd809064f5facf416651c9b1f8a8d06a1ebc57a17a01436c", + "tx_hash": "5a391ff7c4ab9f62237b4734451c3765753c6424c9d0cded3325f895e75ff06f", "tx_index": 11, "block_index": 123, - "source": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", - "fairminter_tx_hash": "7ae7bb5d540de02fd2b97d7234b6c87c925d0b6b3eac5a55e5ced650ce49eed1", + "source": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", + "fairminter_tx_hash": "15f8f2368ab00936a53063e0f92508f82a1d6018e7495426e7dc81fc02f6d6f1", "asset": "FAIRMINTA", "earn_quantity": 500000000, "paid_quantity": 500000000, "commission": 0, "status": "valid", "confirmed": true, - "block_time": 1726509583, + "block_time": 1727200727, "asset_info": { "asset_longname": "", "description": "", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false } @@ -7490,7 +7590,7 @@ Returns the mints by address Returns the mints by address and asset + Parameters - + address: `bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t` (str, required) - The address of the mints to return + + address: `bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9` (str, required) - The address of the mints to return + asset: `FAIRMINTA` (str, required) - The asset of the mints to return + cursor (str, optional) - + Default: `None` @@ -7509,22 +7609,22 @@ Returns the mints by address and asset { "result": [ { - "tx_hash": "320ca07cfa5b9233bd809064f5facf416651c9b1f8a8d06a1ebc57a17a01436c", + "tx_hash": "5a391ff7c4ab9f62237b4734451c3765753c6424c9d0cded3325f895e75ff06f", "tx_index": 11, "block_index": 123, - "source": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", - "fairminter_tx_hash": "7ae7bb5d540de02fd2b97d7234b6c87c925d0b6b3eac5a55e5ced650ce49eed1", + "source": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", + "fairminter_tx_hash": "15f8f2368ab00936a53063e0f92508f82a1d6018e7495426e7dc81fc02f6d6f1", "asset": "FAIRMINTA", "earn_quantity": 500000000, "paid_quantity": 500000000, "commission": 0, "status": "valid", "confirmed": true, - "block_time": 1726509583, + "block_time": 1727200727, "asset_info": { "asset_longname": "", "description": "", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false } @@ -7558,13 +7658,13 @@ By default the default value of the `encoding` parameter detailed above is `auto - Sign the transaction following the `Bitcoinjs-lib on javascript, signing a P2SH redeeming transaction` section - **NOTE**: Don't leave pretxs hanging without transmitting the second transaction as this pollutes the UTXO set and risks making bitcoin harder to run on low spec nodes. -### Compose Bet [GET /v2/addresses/{address}/compose/bet{?feed_address}{&bet_type}{&deadline}{&wager_quantity}{&counterwager_quantity}{&expiration}{&leverage}{&target_value}{&encoding}{&fee_per_kb}{®ular_dust_size}{&multisig_dust_size}{&pubkey}{&allow_unconfirmed_inputs}{&fee}{&fee_provided}{&unspent_tx_hash}{&dust_return_pubkey}{&disable_utxo_locks}{&extended_tx_info}{&p2sh_pretx_txid}{&segwit}{&confirmation_target}{&return_psbt}{&exclude_utxos}{&return_only_data}{&verbose}{&show_unconfirmed}] +### Compose Bet [GET /v2/addresses/{address}/compose/bet{?feed_address}{&bet_type}{&deadline}{&wager_quantity}{&counterwager_quantity}{&expiration}{&leverage}{&target_value}{&encoding}{&fee_per_kb}{®ular_dust_size}{&multisig_dust_size}{&pubkeys}{&allow_unconfirmed_inputs}{&exact_fee}{&fee_provided}{&unspent_tx_hash}{&dust_return_pubkey}{&disable_utxo_locks}{&p2sh_pretx_txid}{&segwit}{&confirmation_target}{&exclude_utxos}{&inputs_set}{&return_psbt}{&return_only_data}{&extended_tx_info}{&old_style_api}{&verbose}{&show_unconfirmed}] Composes a transaction to issue a bet against a feed. + Parameters - + address: `bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj` (str, required) - The address that will make the bet - + feed_address: `bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t` (str, required) - The address that hosts the feed to be bet on + + address: `bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs` (str, required) - The address that will make the bet + + feed_address: `bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9` (str, required) - The address that hosts the feed to be bet on + bet_type: `2` (int, required) - Bet 0 for Bullish CFD (deprecated), 1 for Bearish CFD (deprecated), 2 for Equal, 3 for NotEqual + deadline: `3000000000` (int, required) - The time at which the bet should be decided/settled, in Unix time (seconds since epoch) + wager_quantity: `1000` (int, required) - The quantities of XCP to wager (in satoshis, hence integer) @@ -7582,33 +7682,37 @@ Composes a transaction to issue a bet against a feed. + Default: `546` + multisig_dust_size (int, optional) - Specify (in satoshis) to override the (dust) amount of BTC used for each (bare) multisig output + Default: `1000` - + pubkey (str, optional) - The hexadecimal public key of the source address (or a list of the keys, if multi-sig). Required when using encoding parameter values of multisig or pubkeyhash. + + pubkeys (str, optional) - The hexadecimal public key of the source address (or a comma separated list of keys, if multi-sig). Required when using encoding parameter values of multisig or pubkeyhash. + Default: `None` + allow_unconfirmed_inputs (bool, optional) - Set to true to allow this transaction to utilize unconfirmed UTXOs as inputs + Default: `False` - + fee (int, optional) - If you'd like to specify a custom miners' fee, specify it here (in satoshis). Leave as default for the server to automatically choose + + exact_fee (int, optional) - If you'd like to specify a custom miners' fee, specify it here (in satoshis). Leave as default for the server to automatically choose + Default: `None` + fee_provided (int, optional) - If you would like to specify a maximum fee (up to and including which may be used as the transaction fee), specify it here (in satoshis). This differs from fee in that this is an upper bound value, which fee is an exact value + Default: `0` - + unspent_tx_hash (str, optional) - When compiling the UTXOs to use as inputs for the transaction being created, only consider unspent outputs from this specific transaction hash. Defaults to null to consider all UTXOs for the address. Do not use this parameter if you are specifying custom_inputs + + unspent_tx_hash (str, optional) - When compiling the UTXOs to use as inputs for the transaction being created, only consider unspent outputs from this specific transaction hash. Defaults to null to consider all UTXOs for the address. Do not use this parameter if you are specifying inputs_set + Default: `None` + dust_return_pubkey (str, optional) - The dust return pubkey is used in multi-sig data outputs (as the only real pubkey) to make those the outputs spendable. By default, this pubkey is taken from the pubkey used in the first transaction input. However, it can be overridden here (and is required to be specified if a P2SH input is used and multisig is used as the data output encoding.) If specified, specify the public key (in hex format) where dust will be returned to so that it can be reclaimed. Only valid/useful when used with transactions that utilize multisig data encoding. Note that if this value is set to false, this instructs counterparty-server to use the default dust return pubkey configured at the node level. If this default is not set at the node level, the call will generate an exception + Default: `None` + disable_utxo_locks (bool, optional) - By default, UTXOs utilized when creating a transaction are 'locked' for a few seconds, to prevent a case where rapidly generating create_ calls reuse UTXOs due to their spent status not being updated in bitcoind yet. Specify true for this parameter to disable this behavior, and not temporarily lock UTXOs + Default: `False` - + extended_tx_info (bool, optional) - When this is not specified or false, the create_ calls return only a hex-encoded string. If this is true, the create_ calls return a data object with the following keys: tx_hex, btc_in, btc_out, btc_change, and btc_fee - + Default: `False` + p2sh_pretx_txid (str, optional) - The previous transaction txid for a two part P2SH message. This txid must be taken from the signed transaction + Default: `None` + segwit (bool, optional) - Use segwit + Default: `False` + confirmation_target (int, optional) - The number of blocks to target for confirmation + Default: `3` - + return_psbt (bool, optional) - Construct a PSBT instead of a raw transaction hex - + Default: `False` + exclude_utxos (str, optional) - A comma-separated list of UTXO txids to exclude when selecting UTXOs to use as inputs for the transaction being created - + Default: `` - + return_only_data (bool, optional) - Return only the data part of the transaction + + Default: `None` + + inputs_set (str, optional) - A comma-separated list of UTXOs (`:`) to use as inputs for the transaction being created + + Default: `None` + + return_psbt (bool, optional) - (API v2 only) Construct a PSBT instead of a raw transaction hex + + Default: `False` + + return_only_data (bool, optional) - (API v2 only) Return only the data part of the transaction + + Default: `False` + + extended_tx_info (bool, optional) - (API v1 only) When this is not specified or false, the create_ calls return only a hex-encoded string. If this is true, the create_ calls return a data object with the following keys: tx_hex, btc_in, btc_out, btc_change, and btc_fee + + Default: `False` + + old_style_api (bool, optional) - (API v1 only) Returns a single hex-encoded string instead of an array + Default: `False` + verbose: `true` (bool, optional) - Include asset and dispenser info and normalized quantities in the response. + Default: `false` @@ -7623,12 +7727,12 @@ Composes a transaction to issue a bet against a feed. } ``` -### Compose Broadcast [GET /v2/addresses/{address}/compose/broadcast{?timestamp}{&value}{&fee_fraction}{&text}{&encoding}{&fee_per_kb}{®ular_dust_size}{&multisig_dust_size}{&pubkey}{&allow_unconfirmed_inputs}{&fee}{&fee_provided}{&unspent_tx_hash}{&dust_return_pubkey}{&disable_utxo_locks}{&extended_tx_info}{&p2sh_pretx_txid}{&segwit}{&confirmation_target}{&return_psbt}{&exclude_utxos}{&return_only_data}{&verbose}{&show_unconfirmed}] +### Compose Broadcast [GET /v2/addresses/{address}/compose/broadcast{?timestamp}{&value}{&fee_fraction}{&text}{&encoding}{&fee_per_kb}{®ular_dust_size}{&multisig_dust_size}{&pubkeys}{&allow_unconfirmed_inputs}{&exact_fee}{&fee_provided}{&unspent_tx_hash}{&dust_return_pubkey}{&disable_utxo_locks}{&p2sh_pretx_txid}{&segwit}{&confirmation_target}{&exclude_utxos}{&inputs_set}{&return_psbt}{&return_only_data}{&extended_tx_info}{&old_style_api}{&verbose}{&show_unconfirmed}] Composes a transaction to broadcast textual and numerical information to the network. + Parameters - + address: `bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj` (str, required) - The address that will be sending (must have the necessary quantity of the specified asset) + + address: `bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs` (str, required) - The address that will be sending (must have the necessary quantity of the specified asset) + timestamp: `4003903985` (int, required) - The timestamp of the broadcast, in Unix time + value: `100` (float, required) - Numerical value of the broadcast + fee_fraction: `0.05` (float, required) - How much of every bet on this feed should go to its operator; a fraction of 1, (i.e. 0.05 is five percent) @@ -7641,33 +7745,37 @@ Composes a transaction to broadcast textual and numerical information to the net + Default: `546` + multisig_dust_size (int, optional) - Specify (in satoshis) to override the (dust) amount of BTC used for each (bare) multisig output + Default: `1000` - + pubkey (str, optional) - The hexadecimal public key of the source address (or a list of the keys, if multi-sig). Required when using encoding parameter values of multisig or pubkeyhash. + + pubkeys (str, optional) - The hexadecimal public key of the source address (or a comma separated list of keys, if multi-sig). Required when using encoding parameter values of multisig or pubkeyhash. + Default: `None` + allow_unconfirmed_inputs (bool, optional) - Set to true to allow this transaction to utilize unconfirmed UTXOs as inputs + Default: `False` - + fee (int, optional) - If you'd like to specify a custom miners' fee, specify it here (in satoshis). Leave as default for the server to automatically choose + + exact_fee (int, optional) - If you'd like to specify a custom miners' fee, specify it here (in satoshis). Leave as default for the server to automatically choose + Default: `None` + fee_provided (int, optional) - If you would like to specify a maximum fee (up to and including which may be used as the transaction fee), specify it here (in satoshis). This differs from fee in that this is an upper bound value, which fee is an exact value + Default: `0` - + unspent_tx_hash (str, optional) - When compiling the UTXOs to use as inputs for the transaction being created, only consider unspent outputs from this specific transaction hash. Defaults to null to consider all UTXOs for the address. Do not use this parameter if you are specifying custom_inputs + + unspent_tx_hash (str, optional) - When compiling the UTXOs to use as inputs for the transaction being created, only consider unspent outputs from this specific transaction hash. Defaults to null to consider all UTXOs for the address. Do not use this parameter if you are specifying inputs_set + Default: `None` + dust_return_pubkey (str, optional) - The dust return pubkey is used in multi-sig data outputs (as the only real pubkey) to make those the outputs spendable. By default, this pubkey is taken from the pubkey used in the first transaction input. However, it can be overridden here (and is required to be specified if a P2SH input is used and multisig is used as the data output encoding.) If specified, specify the public key (in hex format) where dust will be returned to so that it can be reclaimed. Only valid/useful when used with transactions that utilize multisig data encoding. Note that if this value is set to false, this instructs counterparty-server to use the default dust return pubkey configured at the node level. If this default is not set at the node level, the call will generate an exception + Default: `None` + disable_utxo_locks (bool, optional) - By default, UTXOs utilized when creating a transaction are 'locked' for a few seconds, to prevent a case where rapidly generating create_ calls reuse UTXOs due to their spent status not being updated in bitcoind yet. Specify true for this parameter to disable this behavior, and not temporarily lock UTXOs + Default: `False` - + extended_tx_info (bool, optional) - When this is not specified or false, the create_ calls return only a hex-encoded string. If this is true, the create_ calls return a data object with the following keys: tx_hex, btc_in, btc_out, btc_change, and btc_fee - + Default: `False` + p2sh_pretx_txid (str, optional) - The previous transaction txid for a two part P2SH message. This txid must be taken from the signed transaction + Default: `None` + segwit (bool, optional) - Use segwit + Default: `False` + confirmation_target (int, optional) - The number of blocks to target for confirmation + Default: `3` - + return_psbt (bool, optional) - Construct a PSBT instead of a raw transaction hex - + Default: `False` + exclude_utxos (str, optional) - A comma-separated list of UTXO txids to exclude when selecting UTXOs to use as inputs for the transaction being created - + Default: `` - + return_only_data (bool, optional) - Return only the data part of the transaction + + Default: `None` + + inputs_set (str, optional) - A comma-separated list of UTXOs (`:`) to use as inputs for the transaction being created + + Default: `None` + + return_psbt (bool, optional) - (API v2 only) Construct a PSBT instead of a raw transaction hex + + Default: `False` + + return_only_data (bool, optional) - (API v2 only) Return only the data part of the transaction + + Default: `False` + + extended_tx_info (bool, optional) - (API v1 only) When this is not specified or false, the create_ calls return only a hex-encoded string. If this is true, the create_ calls return a data object with the following keys: tx_hex, btc_in, btc_out, btc_change, and btc_fee + + Default: `False` + + old_style_api (bool, optional) - (API v1 only) Returns a single hex-encoded string instead of an array + Default: `False` + verbose: `true` (bool, optional) - Include asset and dispenser info and normalized quantities in the response. + Default: `false` @@ -7679,26 +7787,38 @@ Composes a transaction to broadcast textual and numerical information to the net ``` { "result": { - "rawtransaction": "02000000000101b649c4e7fa40f164c03cd4447f8be4c3bbeb5ab6b102b0040141900933aac6ab000000001600147ed28f21558ee8ecd78a339105e7756213901b6effffffff0200000000000000002b6a298a111578002e35f209d5778a06bfbacec513f992cc18166b895017e5651e3d9a9c8abe27c32de9bd6334b1052a010000001600147ed28f21558ee8ecd78a339105e7756213901b6e02000000000000", "params": { - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "timestamp": 4003903985, "value": 100.0, "fee_fraction": 0.05, "text": "\"Hello, world!\"" }, - "name": "broadcast" + "name": "broadcast", + "data": "434e5452505254591eeea6b9f14059000000000000004c4b400f2248656c6c6f2c20776f726c642122", + "btc_in": 5000000000, + "btc_out": 0, + "btc_change": 4999985819, + "btc_fee": 14181, + "rawtransaction": "02000000000101edd7a766460a4fb4601942d4c23deee15a574b25517f1f78becf8e042686490a000000001600147d93ff5e96d2aa8302b09d3661285dec7e9d27abffffffff0200000000000000002b6a29c2a92573851ed8784849a69650b37d6b7bd7e2630910d62786268c5dd5e1443bf6f7587d8caa10b0319bba052a010000001600147d93ff5e96d2aa8302b09d3661285dec7e9d27ab02000000000000", + "unpacked_data": { + "message_type": "unknown", + "message_type_id": 67, + "message_data": { + "error": "Unknown message type" + } + } } } ``` -### Compose BTCPay [GET /v2/addresses/{address}/compose/btcpay{?order_match_id}{&encoding}{&fee_per_kb}{®ular_dust_size}{&multisig_dust_size}{&pubkey}{&allow_unconfirmed_inputs}{&fee}{&fee_provided}{&unspent_tx_hash}{&dust_return_pubkey}{&disable_utxo_locks}{&extended_tx_info}{&p2sh_pretx_txid}{&segwit}{&confirmation_target}{&return_psbt}{&exclude_utxos}{&return_only_data}{&verbose}{&show_unconfirmed}] +### Compose BTCPay [GET /v2/addresses/{address}/compose/btcpay{?order_match_id}{&encoding}{&fee_per_kb}{®ular_dust_size}{&multisig_dust_size}{&pubkeys}{&allow_unconfirmed_inputs}{&exact_fee}{&fee_provided}{&unspent_tx_hash}{&dust_return_pubkey}{&disable_utxo_locks}{&p2sh_pretx_txid}{&segwit}{&confirmation_target}{&exclude_utxos}{&inputs_set}{&return_psbt}{&return_only_data}{&extended_tx_info}{&old_style_api}{&verbose}{&show_unconfirmed}] Composes a transaction to pay for a BTC order match. + Parameters - + address: `bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj` (str, required) - The address that will be sending the payment - + order_match_id: `675f8dccad4bdcf4b54ce5aca7ddc442f642d63e518d64ad6068a264fb9894e1_d87f4afa605375256bce3dab7d014314a751d0d998cdc0842ac2dfc8c2fa2b21` (str, required) - The ID of the order match to pay for + + address: `bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs` (str, required) - The address that will be sending the payment + + order_match_id: `4844c5f31805a95e25af849d3e888b41d4cba82846300010c82895f4072e57f6_467f7e82754021f4a8a7e07800c1785d2619004c75fd9200884f7aa4def7caa7` (str, required) - The ID of the order match to pay for + encoding (str, optional) - The encoding method to use + Default: `auto` + fee_per_kb (int, optional) - The fee per kilobyte of transaction data constant that the server uses when deciding on the dynamic fee to use (in satoshis) @@ -7707,33 +7827,37 @@ Composes a transaction to pay for a BTC order match. + Default: `546` + multisig_dust_size (int, optional) - Specify (in satoshis) to override the (dust) amount of BTC used for each (bare) multisig output + Default: `1000` - + pubkey (str, optional) - The hexadecimal public key of the source address (or a list of the keys, if multi-sig). Required when using encoding parameter values of multisig or pubkeyhash. + + pubkeys (str, optional) - The hexadecimal public key of the source address (or a comma separated list of keys, if multi-sig). Required when using encoding parameter values of multisig or pubkeyhash. + Default: `None` + allow_unconfirmed_inputs (bool, optional) - Set to true to allow this transaction to utilize unconfirmed UTXOs as inputs + Default: `False` - + fee (int, optional) - If you'd like to specify a custom miners' fee, specify it here (in satoshis). Leave as default for the server to automatically choose + + exact_fee (int, optional) - If you'd like to specify a custom miners' fee, specify it here (in satoshis). Leave as default for the server to automatically choose + Default: `None` + fee_provided (int, optional) - If you would like to specify a maximum fee (up to and including which may be used as the transaction fee), specify it here (in satoshis). This differs from fee in that this is an upper bound value, which fee is an exact value + Default: `0` - + unspent_tx_hash (str, optional) - When compiling the UTXOs to use as inputs for the transaction being created, only consider unspent outputs from this specific transaction hash. Defaults to null to consider all UTXOs for the address. Do not use this parameter if you are specifying custom_inputs + + unspent_tx_hash (str, optional) - When compiling the UTXOs to use as inputs for the transaction being created, only consider unspent outputs from this specific transaction hash. Defaults to null to consider all UTXOs for the address. Do not use this parameter if you are specifying inputs_set + Default: `None` + dust_return_pubkey (str, optional) - The dust return pubkey is used in multi-sig data outputs (as the only real pubkey) to make those the outputs spendable. By default, this pubkey is taken from the pubkey used in the first transaction input. However, it can be overridden here (and is required to be specified if a P2SH input is used and multisig is used as the data output encoding.) If specified, specify the public key (in hex format) where dust will be returned to so that it can be reclaimed. Only valid/useful when used with transactions that utilize multisig data encoding. Note that if this value is set to false, this instructs counterparty-server to use the default dust return pubkey configured at the node level. If this default is not set at the node level, the call will generate an exception + Default: `None` + disable_utxo_locks (bool, optional) - By default, UTXOs utilized when creating a transaction are 'locked' for a few seconds, to prevent a case where rapidly generating create_ calls reuse UTXOs due to their spent status not being updated in bitcoind yet. Specify true for this parameter to disable this behavior, and not temporarily lock UTXOs + Default: `False` - + extended_tx_info (bool, optional) - When this is not specified or false, the create_ calls return only a hex-encoded string. If this is true, the create_ calls return a data object with the following keys: tx_hex, btc_in, btc_out, btc_change, and btc_fee - + Default: `False` + p2sh_pretx_txid (str, optional) - The previous transaction txid for a two part P2SH message. This txid must be taken from the signed transaction + Default: `None` + segwit (bool, optional) - Use segwit + Default: `False` + confirmation_target (int, optional) - The number of blocks to target for confirmation + Default: `3` - + return_psbt (bool, optional) - Construct a PSBT instead of a raw transaction hex - + Default: `False` + exclude_utxos (str, optional) - A comma-separated list of UTXO txids to exclude when selecting UTXOs to use as inputs for the transaction being created - + Default: `` - + return_only_data (bool, optional) - Return only the data part of the transaction + + Default: `None` + + inputs_set (str, optional) - A comma-separated list of UTXOs (`:`) to use as inputs for the transaction being created + + Default: `None` + + return_psbt (bool, optional) - (API v2 only) Construct a PSBT instead of a raw transaction hex + + Default: `False` + + return_only_data (bool, optional) - (API v2 only) Return only the data part of the transaction + + Default: `False` + + extended_tx_info (bool, optional) - (API v1 only) When this is not specified or false, the create_ calls return only a hex-encoded string. If this is true, the create_ calls return a data object with the following keys: tx_hex, btc_in, btc_out, btc_change, and btc_fee + + Default: `False` + + old_style_api (bool, optional) - (API v1 only) Returns a single hex-encoded string instead of an array + Default: `False` + verbose: `true` (bool, optional) - Include asset and dispenser info and normalized quantities in the response. + Default: `false` @@ -7745,22 +7869,34 @@ Composes a transaction to pay for a BTC order match. ``` { "result": { - "rawtransaction": "020000000001014fca2cccbcf61bd93889e6594b5f5676eb7ccec2f792a180f5f069af357b7616000000001600147ed28f21558ee8ecd78a339105e7756213901b6effffffff03b80b0000000000001600147ed28f21558ee8ecd78a339105e7756213901b6e00000000000000004b6a491bea0194c274239cce2dec48099450c2d32bb382ddfb3b81015ad5ec232bd55868ef141b018286e0bca6432cf028cefc16bae7d9d0f81d7cc89e7f1247e0f068e2c07fc713509850fad093052a010000001600147ed28f21558ee8ecd78a339105e7756213901b6e02000000000000", "params": { - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "order_match_id": "675f8dccad4bdcf4b54ce5aca7ddc442f642d63e518d64ad6068a264fb9894e1_d87f4afa605375256bce3dab7d014314a751d0d998cdc0842ac2dfc8c2fa2b21" - }, - "name": "btcpay" + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "order_match_id": "4844c5f31805a95e25af849d3e888b41d4cba82846300010c82895f4072e57f6_467f7e82754021f4a8a7e07800c1785d2619004c75fd9200884f7aa4def7caa7" + }, + "name": "btcpay", + "data": "434e5452505254590b4844c5f31805a95e25af849d3e888b41d4cba82846300010c82895f4072e57f6467f7e82754021f4a8a7e07800c1785d2619004c75fd9200884f7aa4def7caa7", + "btc_in": 5000000000, + "btc_out": 3000, + "btc_change": 4999978951, + "btc_fee": 18049, + "rawtransaction": "02000000000101daa1d5148d900a0ac23bfc9c2ad886b063173f479672ac0069f3eb44354e2de0000000001600147d93ff5e96d2aa8302b09d3661285dec7e9d27abffffffff03b80b0000000000001600147d93ff5e96d2aa8302b09d3661285dec7e9d27ab00000000000000004b6a49ca5c0c11f96bac48348bdc5206db0d57d0e076ed9b9bb648308f40d377a6c5702c979e70ce629af2991ed91ecfa81395dff83bc16dcbea8478623fe0b52bb16946f1a53fcb8e83d372c79f052a010000001600147d93ff5e96d2aa8302b09d3661285dec7e9d27ab02000000000000", + "unpacked_data": { + "message_type": "unknown", + "message_type_id": 67, + "message_data": { + "error": "Unknown message type" + } + } } } ``` -### Compose Burn [GET /v2/addresses/{address}/compose/burn{?quantity}{&overburn}{&encoding}{&fee_per_kb}{®ular_dust_size}{&multisig_dust_size}{&pubkey}{&allow_unconfirmed_inputs}{&fee}{&fee_provided}{&unspent_tx_hash}{&dust_return_pubkey}{&disable_utxo_locks}{&extended_tx_info}{&p2sh_pretx_txid}{&segwit}{&confirmation_target}{&return_psbt}{&exclude_utxos}{&return_only_data}{&verbose}{&show_unconfirmed}] +### Compose Burn [GET /v2/addresses/{address}/compose/burn{?quantity}{&overburn}{&encoding}{&fee_per_kb}{®ular_dust_size}{&multisig_dust_size}{&pubkeys}{&allow_unconfirmed_inputs}{&exact_fee}{&fee_provided}{&unspent_tx_hash}{&dust_return_pubkey}{&disable_utxo_locks}{&p2sh_pretx_txid}{&segwit}{&confirmation_target}{&exclude_utxos}{&inputs_set}{&return_psbt}{&return_only_data}{&extended_tx_info}{&old_style_api}{&verbose}{&show_unconfirmed}] Composes a transaction to burn a given quantity of BTC for XCP (on mainnet, possible between blocks 278310 and 283810; on testnet it is still available). + Parameters - + address: `bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj` (str, required) - The address with the BTC to burn + + address: `bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs` (str, required) - The address with the BTC to burn + quantity: `1000` (int, required) - The quantities of BTC to burn (in satoshis, hence integer) (1 BTC maximum burn per address) + overburn (bool, optional) - Whether to allow the burn to exceed 1 BTC for the address + Default: `False` @@ -7772,33 +7908,37 @@ Composes a transaction to burn a given quantity of BTC for XCP (on mainnet, poss + Default: `546` + multisig_dust_size (int, optional) - Specify (in satoshis) to override the (dust) amount of BTC used for each (bare) multisig output + Default: `1000` - + pubkey (str, optional) - The hexadecimal public key of the source address (or a list of the keys, if multi-sig). Required when using encoding parameter values of multisig or pubkeyhash. + + pubkeys (str, optional) - The hexadecimal public key of the source address (or a comma separated list of keys, if multi-sig). Required when using encoding parameter values of multisig or pubkeyhash. + Default: `None` + allow_unconfirmed_inputs (bool, optional) - Set to true to allow this transaction to utilize unconfirmed UTXOs as inputs + Default: `False` - + fee (int, optional) - If you'd like to specify a custom miners' fee, specify it here (in satoshis). Leave as default for the server to automatically choose + + exact_fee (int, optional) - If you'd like to specify a custom miners' fee, specify it here (in satoshis). Leave as default for the server to automatically choose + Default: `None` + fee_provided (int, optional) - If you would like to specify a maximum fee (up to and including which may be used as the transaction fee), specify it here (in satoshis). This differs from fee in that this is an upper bound value, which fee is an exact value + Default: `0` - + unspent_tx_hash (str, optional) - When compiling the UTXOs to use as inputs for the transaction being created, only consider unspent outputs from this specific transaction hash. Defaults to null to consider all UTXOs for the address. Do not use this parameter if you are specifying custom_inputs + + unspent_tx_hash (str, optional) - When compiling the UTXOs to use as inputs for the transaction being created, only consider unspent outputs from this specific transaction hash. Defaults to null to consider all UTXOs for the address. Do not use this parameter if you are specifying inputs_set + Default: `None` + dust_return_pubkey (str, optional) - The dust return pubkey is used in multi-sig data outputs (as the only real pubkey) to make those the outputs spendable. By default, this pubkey is taken from the pubkey used in the first transaction input. However, it can be overridden here (and is required to be specified if a P2SH input is used and multisig is used as the data output encoding.) If specified, specify the public key (in hex format) where dust will be returned to so that it can be reclaimed. Only valid/useful when used with transactions that utilize multisig data encoding. Note that if this value is set to false, this instructs counterparty-server to use the default dust return pubkey configured at the node level. If this default is not set at the node level, the call will generate an exception + Default: `None` + disable_utxo_locks (bool, optional) - By default, UTXOs utilized when creating a transaction are 'locked' for a few seconds, to prevent a case where rapidly generating create_ calls reuse UTXOs due to their spent status not being updated in bitcoind yet. Specify true for this parameter to disable this behavior, and not temporarily lock UTXOs + Default: `False` - + extended_tx_info (bool, optional) - When this is not specified or false, the create_ calls return only a hex-encoded string. If this is true, the create_ calls return a data object with the following keys: tx_hex, btc_in, btc_out, btc_change, and btc_fee - + Default: `False` + p2sh_pretx_txid (str, optional) - The previous transaction txid for a two part P2SH message. This txid must be taken from the signed transaction + Default: `None` + segwit (bool, optional) - Use segwit + Default: `False` + confirmation_target (int, optional) - The number of blocks to target for confirmation + Default: `3` - + return_psbt (bool, optional) - Construct a PSBT instead of a raw transaction hex - + Default: `False` + exclude_utxos (str, optional) - A comma-separated list of UTXO txids to exclude when selecting UTXOs to use as inputs for the transaction being created - + Default: `` - + return_only_data (bool, optional) - Return only the data part of the transaction + + Default: `None` + + inputs_set (str, optional) - A comma-separated list of UTXOs (`:`) to use as inputs for the transaction being created + + Default: `None` + + return_psbt (bool, optional) - (API v2 only) Construct a PSBT instead of a raw transaction hex + + Default: `False` + + return_only_data (bool, optional) - (API v2 only) Return only the data part of the transaction + + Default: `False` + + extended_tx_info (bool, optional) - (API v1 only) When this is not specified or false, the create_ calls return only a hex-encoded string. If this is true, the create_ calls return a data object with the following keys: tx_hex, btc_in, btc_out, btc_change, and btc_fee + + Default: `False` + + old_style_api (bool, optional) - (API v1 only) Returns a single hex-encoded string instead of an array + Default: `False` + verbose: `true` (bool, optional) - Include asset and dispenser info and normalized quantities in the response. + Default: `false` @@ -7810,24 +7950,29 @@ Composes a transaction to burn a given quantity of BTC for XCP (on mainnet, poss ``` { "result": { - "rawtransaction": "020000000001016fe1241c086889236a07a814417e56dab847abd58d96050d2ef16d394acb7071000000001600147ed28f21558ee8ecd78a339105e7756213901b6effffffff02e8030000000000001976a914a11b66a67b3ff69671c8f82254099faf374b800e88acdab1052a010000001600147ed28f21558ee8ecd78a339105e7756213901b6e02000000000000", "params": { - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "quantity": 1000, "overburn": false }, - "name": "burn" + "name": "burn", + "data": null, + "btc_in": 5000000000, + "btc_out": 1000, + "btc_change": 4999985815, + "btc_fee": 13185, + "rawtransaction": "02000000000101565291541ec388be91a44832cfbab02ea751d08a08cf97d781936f4bfff0f237000000001600147d93ff5e96d2aa8302b09d3661285dec7e9d27abffffffff02e8030000000000001976a914a11b66a67b3ff69671c8f82254099faf374b800e88ac97ba052a010000001600147d93ff5e96d2aa8302b09d3661285dec7e9d27ab02000000000000" } } ``` -### Compose Cancel [GET /v2/addresses/{address}/compose/cancel{?offer_hash}{&encoding}{&fee_per_kb}{®ular_dust_size}{&multisig_dust_size}{&pubkey}{&allow_unconfirmed_inputs}{&fee}{&fee_provided}{&unspent_tx_hash}{&dust_return_pubkey}{&disable_utxo_locks}{&extended_tx_info}{&p2sh_pretx_txid}{&segwit}{&confirmation_target}{&return_psbt}{&exclude_utxos}{&return_only_data}{&verbose}{&show_unconfirmed}] +### Compose Cancel [GET /v2/addresses/{address}/compose/cancel{?offer_hash}{&encoding}{&fee_per_kb}{®ular_dust_size}{&multisig_dust_size}{&pubkeys}{&allow_unconfirmed_inputs}{&exact_fee}{&fee_provided}{&unspent_tx_hash}{&dust_return_pubkey}{&disable_utxo_locks}{&p2sh_pretx_txid}{&segwit}{&confirmation_target}{&exclude_utxos}{&inputs_set}{&return_psbt}{&return_only_data}{&extended_tx_info}{&old_style_api}{&verbose}{&show_unconfirmed}] Composes a transaction to cancel an open order or bet. + Parameters - + address: `bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj` (str, required) - The address that placed the order/bet to be cancelled - + offer_hash: `7b7048040c893c69892bd088ce48db79b96b9c1d7221b50d903064ff5a1ed232` (str, required) - The hash of the order/bet to be cancelled + + address: `bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs` (str, required) - The address that placed the order/bet to be cancelled + + offer_hash: `132d67269995e3bc9e40d83bc0badefad56d85f0229eedfb0e2ccdf829d03d28` (str, required) - The hash of the order/bet to be cancelled + encoding (str, optional) - The encoding method to use + Default: `auto` + fee_per_kb (int, optional) - The fee per kilobyte of transaction data constant that the server uses when deciding on the dynamic fee to use (in satoshis) @@ -7836,33 +7981,37 @@ Composes a transaction to cancel an open order or bet. + Default: `546` + multisig_dust_size (int, optional) - Specify (in satoshis) to override the (dust) amount of BTC used for each (bare) multisig output + Default: `1000` - + pubkey (str, optional) - The hexadecimal public key of the source address (or a list of the keys, if multi-sig). Required when using encoding parameter values of multisig or pubkeyhash. + + pubkeys (str, optional) - The hexadecimal public key of the source address (or a comma separated list of keys, if multi-sig). Required when using encoding parameter values of multisig or pubkeyhash. + Default: `None` + allow_unconfirmed_inputs (bool, optional) - Set to true to allow this transaction to utilize unconfirmed UTXOs as inputs + Default: `False` - + fee (int, optional) - If you'd like to specify a custom miners' fee, specify it here (in satoshis). Leave as default for the server to automatically choose + + exact_fee (int, optional) - If you'd like to specify a custom miners' fee, specify it here (in satoshis). Leave as default for the server to automatically choose + Default: `None` + fee_provided (int, optional) - If you would like to specify a maximum fee (up to and including which may be used as the transaction fee), specify it here (in satoshis). This differs from fee in that this is an upper bound value, which fee is an exact value + Default: `0` - + unspent_tx_hash (str, optional) - When compiling the UTXOs to use as inputs for the transaction being created, only consider unspent outputs from this specific transaction hash. Defaults to null to consider all UTXOs for the address. Do not use this parameter if you are specifying custom_inputs + + unspent_tx_hash (str, optional) - When compiling the UTXOs to use as inputs for the transaction being created, only consider unspent outputs from this specific transaction hash. Defaults to null to consider all UTXOs for the address. Do not use this parameter if you are specifying inputs_set + Default: `None` + dust_return_pubkey (str, optional) - The dust return pubkey is used in multi-sig data outputs (as the only real pubkey) to make those the outputs spendable. By default, this pubkey is taken from the pubkey used in the first transaction input. However, it can be overridden here (and is required to be specified if a P2SH input is used and multisig is used as the data output encoding.) If specified, specify the public key (in hex format) where dust will be returned to so that it can be reclaimed. Only valid/useful when used with transactions that utilize multisig data encoding. Note that if this value is set to false, this instructs counterparty-server to use the default dust return pubkey configured at the node level. If this default is not set at the node level, the call will generate an exception + Default: `None` + disable_utxo_locks (bool, optional) - By default, UTXOs utilized when creating a transaction are 'locked' for a few seconds, to prevent a case where rapidly generating create_ calls reuse UTXOs due to their spent status not being updated in bitcoind yet. Specify true for this parameter to disable this behavior, and not temporarily lock UTXOs + Default: `False` - + extended_tx_info (bool, optional) - When this is not specified or false, the create_ calls return only a hex-encoded string. If this is true, the create_ calls return a data object with the following keys: tx_hex, btc_in, btc_out, btc_change, and btc_fee - + Default: `False` + p2sh_pretx_txid (str, optional) - The previous transaction txid for a two part P2SH message. This txid must be taken from the signed transaction + Default: `None` + segwit (bool, optional) - Use segwit + Default: `False` + confirmation_target (int, optional) - The number of blocks to target for confirmation + Default: `3` - + return_psbt (bool, optional) - Construct a PSBT instead of a raw transaction hex - + Default: `False` + exclude_utxos (str, optional) - A comma-separated list of UTXO txids to exclude when selecting UTXOs to use as inputs for the transaction being created - + Default: `` - + return_only_data (bool, optional) - Return only the data part of the transaction + + Default: `None` + + inputs_set (str, optional) - A comma-separated list of UTXOs (`:`) to use as inputs for the transaction being created + + Default: `None` + + return_psbt (bool, optional) - (API v2 only) Construct a PSBT instead of a raw transaction hex + + Default: `False` + + return_only_data (bool, optional) - (API v2 only) Return only the data part of the transaction + + Default: `False` + + extended_tx_info (bool, optional) - (API v1 only) When this is not specified or false, the create_ calls return only a hex-encoded string. If this is true, the create_ calls return a data object with the following keys: tx_hex, btc_in, btc_out, btc_change, and btc_fee + + Default: `False` + + old_style_api (bool, optional) - (API v1 only) Returns a single hex-encoded string instead of an array + Default: `False` + verbose: `true` (bool, optional) - Include asset and dispenser info and normalized quantities in the response. + Default: `false` @@ -7874,22 +8023,34 @@ Composes a transaction to cancel an open order or bet. ``` { "result": { - "rawtransaction": "0200000000010175b4c418d03015dec817aad5fcb40a67eb01ab8c7f9b2434e0aeae3f2c7327e5000000001600147ed28f21558ee8ecd78a339105e7756213901b6effffffff0200000000000000002b6a296a415035fc0e352ad913bcc9368104122e748b6b983f39533d639f2642afa98318345f31fc54c82b4434b1052a010000001600147ed28f21558ee8ecd78a339105e7756213901b6e02000000000000", "params": { - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "offer_hash": "7b7048040c893c69892bd088ce48db79b96b9c1d7221b50d903064ff5a1ed232" - }, - "name": "cancel" + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "offer_hash": "132d67269995e3bc9e40d83bc0badefad56d85f0229eedfb0e2ccdf829d03d28" + }, + "name": "cancel", + "data": "434e54525052545946132d67269995e3bc9e40d83bc0badefad56d85f0229eedfb0e2ccdf829d03d28", + "btc_in": 5000000000, + "btc_out": 0, + "btc_change": 4999985819, + "btc_fee": 14181, + "rawtransaction": "020000000001011ed1a9f4a1f0aabef3ed6428baf2baf2eb44a220b9f5af834f289b067297ef47000000001600147d93ff5e96d2aa8302b09d3661285dec7e9d27abffffffff0200000000000000002b6a2911c364192ef0061bf68bc2e75fa7636b1958fab0f1abb83b5780f6e709e708a4bdeb4950c8e4a804c49bba052a010000001600147d93ff5e96d2aa8302b09d3661285dec7e9d27ab02000000000000", + "unpacked_data": { + "message_type": "unknown", + "message_type_id": 67, + "message_data": { + "error": "Unknown message type" + } + } } } ``` -### Compose Destroy [GET /v2/addresses/{address}/compose/destroy{?asset}{&quantity}{&tag}{&encoding}{&fee_per_kb}{®ular_dust_size}{&multisig_dust_size}{&pubkey}{&allow_unconfirmed_inputs}{&fee}{&fee_provided}{&unspent_tx_hash}{&dust_return_pubkey}{&disable_utxo_locks}{&extended_tx_info}{&p2sh_pretx_txid}{&segwit}{&confirmation_target}{&return_psbt}{&exclude_utxos}{&return_only_data}{&verbose}{&show_unconfirmed}] +### Compose Destroy [GET /v2/addresses/{address}/compose/destroy{?asset}{&quantity}{&tag}{&encoding}{&fee_per_kb}{®ular_dust_size}{&multisig_dust_size}{&pubkeys}{&allow_unconfirmed_inputs}{&exact_fee}{&fee_provided}{&unspent_tx_hash}{&dust_return_pubkey}{&disable_utxo_locks}{&p2sh_pretx_txid}{&segwit}{&confirmation_target}{&exclude_utxos}{&inputs_set}{&return_psbt}{&return_only_data}{&extended_tx_info}{&old_style_api}{&verbose}{&show_unconfirmed}] Composes a transaction to destroy a quantity of an asset. + Parameters - + address: `bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj` (str, required) - The address that will be sending the asset to be destroyed + + address: `bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs` (str, required) - The address that will be sending the asset to be destroyed + asset: `XCP` (str, required) - The asset to be destroyed + quantity: `1000` (int, required) - The quantity of the asset to be destroyed (in satoshis, hence integer) + tag: `"bugs!"` (str, required) - A tag for the destruction @@ -7901,33 +8062,37 @@ Composes a transaction to destroy a quantity of an asset. + Default: `546` + multisig_dust_size (int, optional) - Specify (in satoshis) to override the (dust) amount of BTC used for each (bare) multisig output + Default: `1000` - + pubkey (str, optional) - The hexadecimal public key of the source address (or a list of the keys, if multi-sig). Required when using encoding parameter values of multisig or pubkeyhash. + + pubkeys (str, optional) - The hexadecimal public key of the source address (or a comma separated list of keys, if multi-sig). Required when using encoding parameter values of multisig or pubkeyhash. + Default: `None` + allow_unconfirmed_inputs (bool, optional) - Set to true to allow this transaction to utilize unconfirmed UTXOs as inputs + Default: `False` - + fee (int, optional) - If you'd like to specify a custom miners' fee, specify it here (in satoshis). Leave as default for the server to automatically choose + + exact_fee (int, optional) - If you'd like to specify a custom miners' fee, specify it here (in satoshis). Leave as default for the server to automatically choose + Default: `None` + fee_provided (int, optional) - If you would like to specify a maximum fee (up to and including which may be used as the transaction fee), specify it here (in satoshis). This differs from fee in that this is an upper bound value, which fee is an exact value + Default: `0` - + unspent_tx_hash (str, optional) - When compiling the UTXOs to use as inputs for the transaction being created, only consider unspent outputs from this specific transaction hash. Defaults to null to consider all UTXOs for the address. Do not use this parameter if you are specifying custom_inputs + + unspent_tx_hash (str, optional) - When compiling the UTXOs to use as inputs for the transaction being created, only consider unspent outputs from this specific transaction hash. Defaults to null to consider all UTXOs for the address. Do not use this parameter if you are specifying inputs_set + Default: `None` + dust_return_pubkey (str, optional) - The dust return pubkey is used in multi-sig data outputs (as the only real pubkey) to make those the outputs spendable. By default, this pubkey is taken from the pubkey used in the first transaction input. However, it can be overridden here (and is required to be specified if a P2SH input is used and multisig is used as the data output encoding.) If specified, specify the public key (in hex format) where dust will be returned to so that it can be reclaimed. Only valid/useful when used with transactions that utilize multisig data encoding. Note that if this value is set to false, this instructs counterparty-server to use the default dust return pubkey configured at the node level. If this default is not set at the node level, the call will generate an exception + Default: `None` + disable_utxo_locks (bool, optional) - By default, UTXOs utilized when creating a transaction are 'locked' for a few seconds, to prevent a case where rapidly generating create_ calls reuse UTXOs due to their spent status not being updated in bitcoind yet. Specify true for this parameter to disable this behavior, and not temporarily lock UTXOs + Default: `False` - + extended_tx_info (bool, optional) - When this is not specified or false, the create_ calls return only a hex-encoded string. If this is true, the create_ calls return a data object with the following keys: tx_hex, btc_in, btc_out, btc_change, and btc_fee - + Default: `False` + p2sh_pretx_txid (str, optional) - The previous transaction txid for a two part P2SH message. This txid must be taken from the signed transaction + Default: `None` + segwit (bool, optional) - Use segwit + Default: `False` + confirmation_target (int, optional) - The number of blocks to target for confirmation + Default: `3` - + return_psbt (bool, optional) - Construct a PSBT instead of a raw transaction hex - + Default: `False` + exclude_utxos (str, optional) - A comma-separated list of UTXO txids to exclude when selecting UTXOs to use as inputs for the transaction being created - + Default: `` - + return_only_data (bool, optional) - Return only the data part of the transaction + + Default: `None` + + inputs_set (str, optional) - A comma-separated list of UTXOs (`:`) to use as inputs for the transaction being created + + Default: `None` + + return_psbt (bool, optional) - (API v2 only) Construct a PSBT instead of a raw transaction hex + + Default: `False` + + return_only_data (bool, optional) - (API v2 only) Return only the data part of the transaction + + Default: `False` + + extended_tx_info (bool, optional) - (API v1 only) When this is not specified or false, the create_ calls return only a hex-encoded string. If this is true, the create_ calls return a data object with the following keys: tx_hex, btc_in, btc_out, btc_change, and btc_fee + + Default: `False` + + old_style_api (bool, optional) - (API v1 only) Returns a single hex-encoded string instead of an array + Default: `False` + verbose: `true` (bool, optional) - Include asset and dispenser info and normalized quantities in the response. + Default: `false` @@ -7939,9 +8104,8 @@ Composes a transaction to destroy a quantity of an asset. ``` { "result": { - "rawtransaction": "02000000000101b6ee35e1324d5089f8d7d56494bef5bcffa8b7c4a7e486d0af9d225461966691000000001600147ed28f21558ee8ecd78a339105e7756213901b6effffffff020000000000000000226a207b5b354f4bb56aadb60d34352b229414425ea46fd9be1edf6ea98bd29a7472df9db3052a010000001600147ed28f21558ee8ecd78a339105e7756213901b6e02000000000000", "params": { - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "asset": "XCP", "quantity": 1000, "tag": "\"bugs!\"", @@ -7954,17 +8118,30 @@ Composes a transaction to destroy a quantity of an asset. }, "quantity_normalized": "0.00001000" }, - "name": "destroy" + "name": "destroy", + "data": "434e5452505254596e000000000000000100000000000003e822627567732122", + "btc_in": 5000000000, + "btc_out": 0, + "btc_change": 4999986346, + "btc_fee": 13654, + "rawtransaction": "020000000001013d8440143b369a8149275d291f4e89628e992c8f4141b6ac95d6e3e840a0667c000000001600147d93ff5e96d2aa8302b09d3661285dec7e9d27abffffffff020000000000000000226a20ad995647dc1f5cf1a38de32e7adf5ea0d3a71cf925f3d96ef7b859308eac7bcaaabc052a010000001600147d93ff5e96d2aa8302b09d3661285dec7e9d27ab02000000000000", + "unpacked_data": { + "message_type": "unknown", + "message_type_id": 67, + "message_data": { + "error": "Unknown message type" + } + } } } ``` -### Compose Dispenser [GET /v2/addresses/{address}/compose/dispenser{?asset}{&give_quantity}{&escrow_quantity}{&mainchainrate}{&status}{&open_address}{&oracle_address}{&encoding}{&fee_per_kb}{®ular_dust_size}{&multisig_dust_size}{&pubkey}{&allow_unconfirmed_inputs}{&fee}{&fee_provided}{&unspent_tx_hash}{&dust_return_pubkey}{&disable_utxo_locks}{&extended_tx_info}{&p2sh_pretx_txid}{&segwit}{&confirmation_target}{&return_psbt}{&exclude_utxos}{&return_only_data}{&verbose}{&show_unconfirmed}] +### Compose Dispenser [GET /v2/addresses/{address}/compose/dispenser{?asset}{&give_quantity}{&escrow_quantity}{&mainchainrate}{&status}{&open_address}{&oracle_address}{&encoding}{&fee_per_kb}{®ular_dust_size}{&multisig_dust_size}{&pubkeys}{&allow_unconfirmed_inputs}{&exact_fee}{&fee_provided}{&unspent_tx_hash}{&dust_return_pubkey}{&disable_utxo_locks}{&p2sh_pretx_txid}{&segwit}{&confirmation_target}{&exclude_utxos}{&inputs_set}{&return_psbt}{&return_only_data}{&extended_tx_info}{&old_style_api}{&verbose}{&show_unconfirmed}] Composes a transaction to opens or closes a dispenser for a given asset at a given rate of main chain asset (BTC). Escrowed quantity on open must be equal or greater than give_quantity. It is suggested that you escrow multiples of give_quantity to ease dispenser operation. + Parameters - + address: `bcrt1qlqcrlvw5t7cnj8r9hjl0qq67c2fyk5kvfra90p` (str, required) - The address that will be dispensing (must have the necessary escrow_quantity of the specified asset) + + address: `bcrt1qfvucymcd7u04hpd7eafsmxwnashcmaqs54q79p` (str, required) - The address that will be dispensing (must have the necessary escrow_quantity of the specified asset) + asset: `XCP` (str, required) - The asset or subasset to dispense + give_quantity: `1000` (int, required) - The quantity of the asset to dispense (in satoshis, hence integer) + escrow_quantity: `1000` (int, required) - The quantity of the asset to reserve for this dispenser (in satoshis, hence integer) @@ -7982,33 +8159,37 @@ Composes a transaction to opens or closes a dispenser for a given asset at a giv + Default: `546` + multisig_dust_size (int, optional) - Specify (in satoshis) to override the (dust) amount of BTC used for each (bare) multisig output + Default: `1000` - + pubkey (str, optional) - The hexadecimal public key of the source address (or a list of the keys, if multi-sig). Required when using encoding parameter values of multisig or pubkeyhash. + + pubkeys (str, optional) - The hexadecimal public key of the source address (or a comma separated list of keys, if multi-sig). Required when using encoding parameter values of multisig or pubkeyhash. + Default: `None` + allow_unconfirmed_inputs (bool, optional) - Set to true to allow this transaction to utilize unconfirmed UTXOs as inputs + Default: `False` - + fee (int, optional) - If you'd like to specify a custom miners' fee, specify it here (in satoshis). Leave as default for the server to automatically choose + + exact_fee (int, optional) - If you'd like to specify a custom miners' fee, specify it here (in satoshis). Leave as default for the server to automatically choose + Default: `None` + fee_provided (int, optional) - If you would like to specify a maximum fee (up to and including which may be used as the transaction fee), specify it here (in satoshis). This differs from fee in that this is an upper bound value, which fee is an exact value + Default: `0` - + unspent_tx_hash (str, optional) - When compiling the UTXOs to use as inputs for the transaction being created, only consider unspent outputs from this specific transaction hash. Defaults to null to consider all UTXOs for the address. Do not use this parameter if you are specifying custom_inputs + + unspent_tx_hash (str, optional) - When compiling the UTXOs to use as inputs for the transaction being created, only consider unspent outputs from this specific transaction hash. Defaults to null to consider all UTXOs for the address. Do not use this parameter if you are specifying inputs_set + Default: `None` + dust_return_pubkey (str, optional) - The dust return pubkey is used in multi-sig data outputs (as the only real pubkey) to make those the outputs spendable. By default, this pubkey is taken from the pubkey used in the first transaction input. However, it can be overridden here (and is required to be specified if a P2SH input is used and multisig is used as the data output encoding.) If specified, specify the public key (in hex format) where dust will be returned to so that it can be reclaimed. Only valid/useful when used with transactions that utilize multisig data encoding. Note that if this value is set to false, this instructs counterparty-server to use the default dust return pubkey configured at the node level. If this default is not set at the node level, the call will generate an exception + Default: `None` + disable_utxo_locks (bool, optional) - By default, UTXOs utilized when creating a transaction are 'locked' for a few seconds, to prevent a case where rapidly generating create_ calls reuse UTXOs due to their spent status not being updated in bitcoind yet. Specify true for this parameter to disable this behavior, and not temporarily lock UTXOs + Default: `False` - + extended_tx_info (bool, optional) - When this is not specified or false, the create_ calls return only a hex-encoded string. If this is true, the create_ calls return a data object with the following keys: tx_hex, btc_in, btc_out, btc_change, and btc_fee - + Default: `False` + p2sh_pretx_txid (str, optional) - The previous transaction txid for a two part P2SH message. This txid must be taken from the signed transaction + Default: `None` + segwit (bool, optional) - Use segwit + Default: `False` + confirmation_target (int, optional) - The number of blocks to target for confirmation + Default: `3` - + return_psbt (bool, optional) - Construct a PSBT instead of a raw transaction hex - + Default: `False` + exclude_utxos (str, optional) - A comma-separated list of UTXO txids to exclude when selecting UTXOs to use as inputs for the transaction being created - + Default: `` - + return_only_data (bool, optional) - Return only the data part of the transaction + + Default: `None` + + inputs_set (str, optional) - A comma-separated list of UTXOs (`:`) to use as inputs for the transaction being created + + Default: `None` + + return_psbt (bool, optional) - (API v2 only) Construct a PSBT instead of a raw transaction hex + + Default: `False` + + return_only_data (bool, optional) - (API v2 only) Return only the data part of the transaction + + Default: `False` + + extended_tx_info (bool, optional) - (API v1 only) When this is not specified or false, the create_ calls return only a hex-encoded string. If this is true, the create_ calls return a data object with the following keys: tx_hex, btc_in, btc_out, btc_change, and btc_fee + + Default: `False` + + old_style_api (bool, optional) - (API v1 only) Returns a single hex-encoded string instead of an array + Default: `False` + verbose: `true` (bool, optional) - Include asset and dispenser info and normalized quantities in the response. + Default: `false` @@ -8020,9 +8201,8 @@ Composes a transaction to opens or closes a dispenser for a given asset at a giv ``` { "result": { - "rawtransaction": "020000000001013535818da2dc8007a59f5067eb9607b1ebdae92c65ceb00a7aa84795be59615102000000160014f8303fb1d45fb1391c65bcbef0035ec2924b52ccffffffff0200000000000000002c6a2abf7584d7e313e8d8dd088940a821ea5a8220cba87c96c52763c53a2847b0809129a37280769f24c74047404b0a2701000000160014f8303fb1d45fb1391c65bcbef0035ec2924b52cc02000000000000", "params": { - "source": "bcrt1qlqcrlvw5t7cnj8r9hjl0qq67c2fyk5kvfra90p", + "source": "bcrt1qfvucymcd7u04hpd7eafsmxwnashcmaqs54q79p", "asset": "XCP", "give_quantity": 1000, "escrow_quantity": 1000, @@ -8040,17 +8220,30 @@ Composes a transaction to opens or closes a dispenser for a given asset at a giv "give_quantity_normalized": "0.00001000", "escrow_quantity_normalized": "0.00001000" }, - "name": "dispenser" + "name": "dispenser", + "data": "434e5452505254590c000000000000000100000000000003e800000000000003e8000000000000006400", + "btc_in": 4949970000, + "btc_out": 0, + "btc_change": 4949955760, + "btc_fee": 14240, + "rawtransaction": "02000000000101126cbd5704a2c2c714e745aaba2136b2a888ff2648e7d8de421d466e2e48216b020000001600144b39826f0df71f5b85becf530d99d3ec2f8df410ffffffff0200000000000000002c6a2a97cd56c5a87c919eb0d9baaa9d5db848d45f3e2013c18981e72cdbd66104494876c4423ce2eb9b853abab0540a27010000001600144b39826f0df71f5b85becf530d99d3ec2f8df41002000000000000", + "unpacked_data": { + "message_type": "unknown", + "message_type_id": 67, + "message_data": { + "error": "Unknown message type" + } + } } } ``` -### Compose Dividend [GET /v2/addresses/{address}/compose/dividend{?quantity_per_unit}{&asset}{÷nd_asset}{&encoding}{&fee_per_kb}{®ular_dust_size}{&multisig_dust_size}{&pubkey}{&allow_unconfirmed_inputs}{&fee}{&fee_provided}{&unspent_tx_hash}{&dust_return_pubkey}{&disable_utxo_locks}{&extended_tx_info}{&p2sh_pretx_txid}{&segwit}{&confirmation_target}{&return_psbt}{&exclude_utxos}{&return_only_data}{&verbose}{&show_unconfirmed}] +### Compose Dividend [GET /v2/addresses/{address}/compose/dividend{?quantity_per_unit}{&asset}{÷nd_asset}{&encoding}{&fee_per_kb}{®ular_dust_size}{&multisig_dust_size}{&pubkeys}{&allow_unconfirmed_inputs}{&exact_fee}{&fee_provided}{&unspent_tx_hash}{&dust_return_pubkey}{&disable_utxo_locks}{&p2sh_pretx_txid}{&segwit}{&confirmation_target}{&exclude_utxos}{&inputs_set}{&return_psbt}{&return_only_data}{&extended_tx_info}{&old_style_api}{&verbose}{&show_unconfirmed}] Composes a transaction to issue a dividend to holders of a given asset. + Parameters - + address: `bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj` (str, required) - The address that will be issuing the dividend (must have the ownership of the asset which the dividend is being issued on) + + address: `bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs` (str, required) - The address that will be issuing the dividend (must have the ownership of the asset which the dividend is being issued on) + quantity_per_unit: `1` (int, required) - The amount of dividend_asset rewarded (in satoshis, hence integer) + asset: `FAIRMINTA` (str, required) - The asset or subasset that the dividends are being rewarded on + dividend_asset: `XCP` (str, required) - The asset or subasset that the dividends are paid in @@ -8062,33 +8255,37 @@ Composes a transaction to issue a dividend to holders of a given asset. + Default: `546` + multisig_dust_size (int, optional) - Specify (in satoshis) to override the (dust) amount of BTC used for each (bare) multisig output + Default: `1000` - + pubkey (str, optional) - The hexadecimal public key of the source address (or a list of the keys, if multi-sig). Required when using encoding parameter values of multisig or pubkeyhash. + + pubkeys (str, optional) - The hexadecimal public key of the source address (or a comma separated list of keys, if multi-sig). Required when using encoding parameter values of multisig or pubkeyhash. + Default: `None` + allow_unconfirmed_inputs (bool, optional) - Set to true to allow this transaction to utilize unconfirmed UTXOs as inputs + Default: `False` - + fee (int, optional) - If you'd like to specify a custom miners' fee, specify it here (in satoshis). Leave as default for the server to automatically choose + + exact_fee (int, optional) - If you'd like to specify a custom miners' fee, specify it here (in satoshis). Leave as default for the server to automatically choose + Default: `None` + fee_provided (int, optional) - If you would like to specify a maximum fee (up to and including which may be used as the transaction fee), specify it here (in satoshis). This differs from fee in that this is an upper bound value, which fee is an exact value + Default: `0` - + unspent_tx_hash (str, optional) - When compiling the UTXOs to use as inputs for the transaction being created, only consider unspent outputs from this specific transaction hash. Defaults to null to consider all UTXOs for the address. Do not use this parameter if you are specifying custom_inputs + + unspent_tx_hash (str, optional) - When compiling the UTXOs to use as inputs for the transaction being created, only consider unspent outputs from this specific transaction hash. Defaults to null to consider all UTXOs for the address. Do not use this parameter if you are specifying inputs_set + Default: `None` + dust_return_pubkey (str, optional) - The dust return pubkey is used in multi-sig data outputs (as the only real pubkey) to make those the outputs spendable. By default, this pubkey is taken from the pubkey used in the first transaction input. However, it can be overridden here (and is required to be specified if a P2SH input is used and multisig is used as the data output encoding.) If specified, specify the public key (in hex format) where dust will be returned to so that it can be reclaimed. Only valid/useful when used with transactions that utilize multisig data encoding. Note that if this value is set to false, this instructs counterparty-server to use the default dust return pubkey configured at the node level. If this default is not set at the node level, the call will generate an exception + Default: `None` + disable_utxo_locks (bool, optional) - By default, UTXOs utilized when creating a transaction are 'locked' for a few seconds, to prevent a case where rapidly generating create_ calls reuse UTXOs due to their spent status not being updated in bitcoind yet. Specify true for this parameter to disable this behavior, and not temporarily lock UTXOs + Default: `False` - + extended_tx_info (bool, optional) - When this is not specified or false, the create_ calls return only a hex-encoded string. If this is true, the create_ calls return a data object with the following keys: tx_hex, btc_in, btc_out, btc_change, and btc_fee - + Default: `False` + p2sh_pretx_txid (str, optional) - The previous transaction txid for a two part P2SH message. This txid must be taken from the signed transaction + Default: `None` + segwit (bool, optional) - Use segwit + Default: `False` + confirmation_target (int, optional) - The number of blocks to target for confirmation + Default: `3` - + return_psbt (bool, optional) - Construct a PSBT instead of a raw transaction hex - + Default: `False` + exclude_utxos (str, optional) - A comma-separated list of UTXO txids to exclude when selecting UTXOs to use as inputs for the transaction being created - + Default: `` - + return_only_data (bool, optional) - Return only the data part of the transaction + + Default: `None` + + inputs_set (str, optional) - A comma-separated list of UTXOs (`:`) to use as inputs for the transaction being created + + Default: `None` + + return_psbt (bool, optional) - (API v2 only) Construct a PSBT instead of a raw transaction hex + + Default: `False` + + return_only_data (bool, optional) - (API v2 only) Return only the data part of the transaction + + Default: `False` + + extended_tx_info (bool, optional) - (API v1 only) When this is not specified or false, the create_ calls return only a hex-encoded string. If this is true, the create_ calls return a data object with the following keys: tx_hex, btc_in, btc_out, btc_change, and btc_fee + + Default: `False` + + old_style_api (bool, optional) - (API v1 only) Returns a single hex-encoded string instead of an array + Default: `False` + verbose: `true` (bool, optional) - Include asset and dispenser info and normalized quantities in the response. + Default: `false` @@ -8100,16 +8297,15 @@ Composes a transaction to issue a dividend to holders of a given asset. ``` { "result": { - "rawtransaction": "02000000000101351dc0ca5529e3f5913ab348c8a5b0dab37120eb3a5362bf1edbd938a12afaa9000000001600147ed28f21558ee8ecd78a339105e7756213901b6effffffff020000000000000000236a214c12bd38bfe6d74349de8861a285ce801c0df1aea0c2341213c29c0488e3b51bf459b3052a010000001600147ed28f21558ee8ecd78a339105e7756213901b6e02000000000000", "params": { - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "quantity_per_unit": 1, "asset": "FAIRMINTA", "dividend_asset": "XCP", "asset_info": { "asset_longname": "", "description": "", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, @@ -8122,20 +8318,33 @@ Composes a transaction to issue a dividend to holders of a given asset. }, "quantity_per_unit_normalized": "0.00000001" }, - "name": "dividend" + "name": "dividend", + "data": "434e545250525459320000000000000001000000f3bafe12e20000000000000001", + "btc_in": 5000000000, + "btc_out": 0, + "btc_change": 4999986287, + "btc_fee": 13713, + "rawtransaction": "020000000001015f834884818898e688e85d8e85fedabc893f47e29d472d532b435f94e2c90e12000000001600147d93ff5e96d2aa8302b09d3661285dec7e9d27abffffffff020000000000000000236a21721612543f59b4cea784e3ee62b4ccb72abb87cbe95875e4c52ebf21a036bb38ea6fbc052a010000001600147d93ff5e96d2aa8302b09d3661285dec7e9d27ab02000000000000", + "unpacked_data": { + "message_type": "unknown", + "message_type_id": 67, + "message_data": { + "error": "Unknown message type" + } + } } } ``` -### Compose Issuance [GET /v2/addresses/{address}/compose/issuance{?asset}{&quantity}{&transfer_destination}{&divisible}{&lock}{&reset}{&description}{&encoding}{&fee_per_kb}{®ular_dust_size}{&multisig_dust_size}{&pubkey}{&allow_unconfirmed_inputs}{&fee}{&fee_provided}{&unspent_tx_hash}{&dust_return_pubkey}{&disable_utxo_locks}{&extended_tx_info}{&p2sh_pretx_txid}{&segwit}{&confirmation_target}{&return_psbt}{&exclude_utxos}{&return_only_data}{&verbose}{&show_unconfirmed}] +### Compose Issuance [GET /v2/addresses/{address}/compose/issuance{?asset}{&quantity}{&transfer_destination}{&divisible}{&lock}{&reset}{&description}{&encoding}{&fee_per_kb}{®ular_dust_size}{&multisig_dust_size}{&pubkeys}{&allow_unconfirmed_inputs}{&exact_fee}{&fee_provided}{&unspent_tx_hash}{&dust_return_pubkey}{&disable_utxo_locks}{&p2sh_pretx_txid}{&segwit}{&confirmation_target}{&exclude_utxos}{&inputs_set}{&return_psbt}{&return_only_data}{&extended_tx_info}{&old_style_api}{&verbose}{&show_unconfirmed}] Composes a transaction to Issue a new asset, issue more of an existing asset, lock an asset, reset existing supply, or transfer the ownership of an asset. + Parameters - + address: `bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj` (str, required) - The address that will be issuing or transfering the asset + + address: `bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs` (str, required) - The address that will be issuing or transfering the asset + asset: `XCPTEST` (str, required) - The assets to issue or transfer. This can also be a subasset longname for new subasset issuances + quantity: `1000` (int, required) - The quantity of the asset to issue (set to 0 if transferring an asset) (in satoshis, hence integer) - + transfer_destination: `bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj` (str, optional) - The address to receive the asset + + transfer_destination: `bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs` (str, optional) - The address to receive the asset + Default: `None` + divisible (bool, optional) - Whether this asset is divisible or not (if a transfer, this value must match the value specified when the asset was originally issued) + Default: `True` @@ -8153,33 +8362,37 @@ Composes a transaction to Issue a new asset, issue more of an existing asset, lo + Default: `546` + multisig_dust_size (int, optional) - Specify (in satoshis) to override the (dust) amount of BTC used for each (bare) multisig output + Default: `1000` - + pubkey (str, optional) - The hexadecimal public key of the source address (or a list of the keys, if multi-sig). Required when using encoding parameter values of multisig or pubkeyhash. + + pubkeys (str, optional) - The hexadecimal public key of the source address (or a comma separated list of keys, if multi-sig). Required when using encoding parameter values of multisig or pubkeyhash. + Default: `None` + allow_unconfirmed_inputs (bool, optional) - Set to true to allow this transaction to utilize unconfirmed UTXOs as inputs + Default: `False` - + fee (int, optional) - If you'd like to specify a custom miners' fee, specify it here (in satoshis). Leave as default for the server to automatically choose + + exact_fee (int, optional) - If you'd like to specify a custom miners' fee, specify it here (in satoshis). Leave as default for the server to automatically choose + Default: `None` + fee_provided (int, optional) - If you would like to specify a maximum fee (up to and including which may be used as the transaction fee), specify it here (in satoshis). This differs from fee in that this is an upper bound value, which fee is an exact value + Default: `0` - + unspent_tx_hash (str, optional) - When compiling the UTXOs to use as inputs for the transaction being created, only consider unspent outputs from this specific transaction hash. Defaults to null to consider all UTXOs for the address. Do not use this parameter if you are specifying custom_inputs + + unspent_tx_hash (str, optional) - When compiling the UTXOs to use as inputs for the transaction being created, only consider unspent outputs from this specific transaction hash. Defaults to null to consider all UTXOs for the address. Do not use this parameter if you are specifying inputs_set + Default: `None` + dust_return_pubkey (str, optional) - The dust return pubkey is used in multi-sig data outputs (as the only real pubkey) to make those the outputs spendable. By default, this pubkey is taken from the pubkey used in the first transaction input. However, it can be overridden here (and is required to be specified if a P2SH input is used and multisig is used as the data output encoding.) If specified, specify the public key (in hex format) where dust will be returned to so that it can be reclaimed. Only valid/useful when used with transactions that utilize multisig data encoding. Note that if this value is set to false, this instructs counterparty-server to use the default dust return pubkey configured at the node level. If this default is not set at the node level, the call will generate an exception + Default: `None` + disable_utxo_locks (bool, optional) - By default, UTXOs utilized when creating a transaction are 'locked' for a few seconds, to prevent a case where rapidly generating create_ calls reuse UTXOs due to their spent status not being updated in bitcoind yet. Specify true for this parameter to disable this behavior, and not temporarily lock UTXOs + Default: `False` - + extended_tx_info (bool, optional) - When this is not specified or false, the create_ calls return only a hex-encoded string. If this is true, the create_ calls return a data object with the following keys: tx_hex, btc_in, btc_out, btc_change, and btc_fee - + Default: `False` + p2sh_pretx_txid (str, optional) - The previous transaction txid for a two part P2SH message. This txid must be taken from the signed transaction + Default: `None` + segwit (bool, optional) - Use segwit + Default: `False` + confirmation_target (int, optional) - The number of blocks to target for confirmation + Default: `3` - + return_psbt (bool, optional) - Construct a PSBT instead of a raw transaction hex - + Default: `False` + exclude_utxos (str, optional) - A comma-separated list of UTXO txids to exclude when selecting UTXOs to use as inputs for the transaction being created - + Default: `` - + return_only_data (bool, optional) - Return only the data part of the transaction + + Default: `None` + + inputs_set (str, optional) - A comma-separated list of UTXOs (`:`) to use as inputs for the transaction being created + + Default: `None` + + return_psbt (bool, optional) - (API v2 only) Construct a PSBT instead of a raw transaction hex + + Default: `False` + + return_only_data (bool, optional) - (API v2 only) Return only the data part of the transaction + + Default: `False` + + extended_tx_info (bool, optional) - (API v1 only) When this is not specified or false, the create_ calls return only a hex-encoded string. If this is true, the create_ calls return a data object with the following keys: tx_hex, btc_in, btc_out, btc_change, and btc_fee + + Default: `False` + + old_style_api (bool, optional) - (API v1 only) Returns a single hex-encoded string instead of an array + Default: `False` + verbose: `true` (bool, optional) - Include asset and dispenser info and normalized quantities in the response. + Default: `false` @@ -8191,31 +8404,43 @@ Composes a transaction to Issue a new asset, issue more of an existing asset, lo ``` { "result": { - "rawtransaction": "020000000001018c2c4aec7dc8917d96c67ca0080178a22f670265ea42df5f51b4cf18143f8d33000000001600147ed28f21558ee8ecd78a339105e7756213901b6effffffff0322020000000000001600147ed28f21558ee8ecd78a339105e7756213901b6e0000000000000000236a2161361954172494529a3d38abfce581faf126d5f844d56d0f9ff51438a6ee05c1681ca8052a010000001600147ed28f21558ee8ecd78a339105e7756213901b6e02000000000000", "params": { - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "asset": "XCPTEST", "quantity": 1000, - "transfer_destination": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "transfer_destination": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "lock": false, "reset": false, "description": null, "quantity_normalized": "0.00001000" }, - "name": "issuance" + "name": "issuance", + "data": "434e5452505254591600000001a956fbdf00000000000003e8010000c04e554c4c", + "btc_in": 5000000000, + "btc_out": 546, + "btc_change": 4999983749, + "btc_fee": 15705, + "rawtransaction": "0200000000010132d6ed3c9fbce185a3f9b746123785033e6e2ec91849367a98d03b7888daf186000000001600147d93ff5e96d2aa8302b09d3661285dec7e9d27abffffffff0322020000000000001600147d93ff5e96d2aa8302b09d3661285dec7e9d27ab0000000000000000236a211ec53f8ee749730ee8c3ff433c6a3665ee24516b8e066b0cc22cac68dccc73303185b2052a010000001600147d93ff5e96d2aa8302b09d3661285dec7e9d27ab02000000000000", + "unpacked_data": { + "message_type": "unknown", + "message_type_id": 67, + "message_data": { + "error": "Unknown message type" + } + } } } ``` -### Compose MPMA [GET /v2/addresses/{address}/compose/mpma{?assets}{&destinations}{&quantities}{&memo}{&memo_is_hex}{&encoding}{&fee_per_kb}{®ular_dust_size}{&multisig_dust_size}{&pubkey}{&allow_unconfirmed_inputs}{&fee}{&fee_provided}{&unspent_tx_hash}{&dust_return_pubkey}{&disable_utxo_locks}{&extended_tx_info}{&p2sh_pretx_txid}{&segwit}{&confirmation_target}{&return_psbt}{&exclude_utxos}{&return_only_data}{&verbose}{&show_unconfirmed}] +### Compose MPMA [GET /v2/addresses/{address}/compose/mpma{?assets}{&destinations}{&quantities}{&memo}{&memo_is_hex}{&encoding}{&fee_per_kb}{®ular_dust_size}{&multisig_dust_size}{&pubkeys}{&allow_unconfirmed_inputs}{&exact_fee}{&fee_provided}{&unspent_tx_hash}{&dust_return_pubkey}{&disable_utxo_locks}{&p2sh_pretx_txid}{&segwit}{&confirmation_target}{&exclude_utxos}{&inputs_set}{&return_psbt}{&return_only_data}{&extended_tx_info}{&old_style_api}{&verbose}{&show_unconfirmed}] Composes a transaction to send multiple payments to multiple addresses. + Parameters - + address: `bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj` (str, required) - The address that will be sending (must have the necessary quantity of the specified asset) + + address: `bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs` (str, required) - The address that will be sending (must have the necessary quantity of the specified asset) + assets: `XCP,MYASSETA` (str, required) - comma-separated list of assets to send - + destinations: `bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj,bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t` (str, required) - comma-separated list of addresses to send to + + destinations: `bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs,bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9` (str, required) - comma-separated list of addresses to send to + quantities: `1,2` (str, required) - comma-separated list of quantities to send (in satoshis, hence integer) + memo: `"Hello, world!"` (str, optional) - The Memo associated with this transaction + Default: `None` @@ -8229,33 +8454,37 @@ Composes a transaction to send multiple payments to multiple addresses. + Default: `546` + multisig_dust_size (int, optional) - Specify (in satoshis) to override the (dust) amount of BTC used for each (bare) multisig output + Default: `1000` - + pubkey (str, optional) - The hexadecimal public key of the source address (or a list of the keys, if multi-sig). Required when using encoding parameter values of multisig or pubkeyhash. + + pubkeys (str, optional) - The hexadecimal public key of the source address (or a comma separated list of keys, if multi-sig). Required when using encoding parameter values of multisig or pubkeyhash. + Default: `None` + allow_unconfirmed_inputs (bool, optional) - Set to true to allow this transaction to utilize unconfirmed UTXOs as inputs + Default: `False` - + fee (int, optional) - If you'd like to specify a custom miners' fee, specify it here (in satoshis). Leave as default for the server to automatically choose + + exact_fee (int, optional) - If you'd like to specify a custom miners' fee, specify it here (in satoshis). Leave as default for the server to automatically choose + Default: `None` + fee_provided (int, optional) - If you would like to specify a maximum fee (up to and including which may be used as the transaction fee), specify it here (in satoshis). This differs from fee in that this is an upper bound value, which fee is an exact value + Default: `0` - + unspent_tx_hash (str, optional) - When compiling the UTXOs to use as inputs for the transaction being created, only consider unspent outputs from this specific transaction hash. Defaults to null to consider all UTXOs for the address. Do not use this parameter if you are specifying custom_inputs + + unspent_tx_hash (str, optional) - When compiling the UTXOs to use as inputs for the transaction being created, only consider unspent outputs from this specific transaction hash. Defaults to null to consider all UTXOs for the address. Do not use this parameter if you are specifying inputs_set + Default: `None` + dust_return_pubkey (str, optional) - The dust return pubkey is used in multi-sig data outputs (as the only real pubkey) to make those the outputs spendable. By default, this pubkey is taken from the pubkey used in the first transaction input. However, it can be overridden here (and is required to be specified if a P2SH input is used and multisig is used as the data output encoding.) If specified, specify the public key (in hex format) where dust will be returned to so that it can be reclaimed. Only valid/useful when used with transactions that utilize multisig data encoding. Note that if this value is set to false, this instructs counterparty-server to use the default dust return pubkey configured at the node level. If this default is not set at the node level, the call will generate an exception + Default: `None` + disable_utxo_locks (bool, optional) - By default, UTXOs utilized when creating a transaction are 'locked' for a few seconds, to prevent a case where rapidly generating create_ calls reuse UTXOs due to their spent status not being updated in bitcoind yet. Specify true for this parameter to disable this behavior, and not temporarily lock UTXOs + Default: `False` - + extended_tx_info (bool, optional) - When this is not specified or false, the create_ calls return only a hex-encoded string. If this is true, the create_ calls return a data object with the following keys: tx_hex, btc_in, btc_out, btc_change, and btc_fee - + Default: `False` + p2sh_pretx_txid (str, optional) - The previous transaction txid for a two part P2SH message. This txid must be taken from the signed transaction + Default: `None` + segwit (bool, optional) - Use segwit + Default: `False` + confirmation_target (int, optional) - The number of blocks to target for confirmation + Default: `3` - + return_psbt (bool, optional) - Construct a PSBT instead of a raw transaction hex - + Default: `False` + exclude_utxos (str, optional) - A comma-separated list of UTXO txids to exclude when selecting UTXOs to use as inputs for the transaction being created - + Default: `` - + return_only_data (bool, optional) - Return only the data part of the transaction + + Default: `None` + + inputs_set (str, optional) - A comma-separated list of UTXOs (`:`) to use as inputs for the transaction being created + + Default: `None` + + return_psbt (bool, optional) - (API v2 only) Construct a PSBT instead of a raw transaction hex + + Default: `False` + + return_only_data (bool, optional) - (API v2 only) Return only the data part of the transaction + + Default: `False` + + extended_tx_info (bool, optional) - (API v1 only) When this is not specified or false, the create_ calls return only a hex-encoded string. If this is true, the create_ calls return a data object with the following keys: tx_hex, btc_in, btc_out, btc_change, and btc_fee + + Default: `False` + + old_style_api (bool, optional) - (API v1 only) Returns a single hex-encoded string instead of an array + Default: `False` + verbose: `true` (bool, optional) - Include asset and dispenser info and normalized quantities in the response. + Default: `false` @@ -8267,35 +8496,47 @@ Composes a transaction to send multiple payments to multiple addresses. ``` { "result": { - "rawtransaction": "02000000000104408d3617b81bce0c32909fc2def0c597a56244508180e231a57cd368ef04aca6000000001600147ed28f21558ee8ecd78a339105e7756213901b6effffffff17bda3cda72e5b5f1532ba6749ecd58427332ebcf282c79cd16c8375a9e4a215000000001600147ed28f21558ee8ecd78a339105e7756213901b6effffffffc51fabedc80ce42d8f455f8cc69c88e82938707ddda14f7a68f33094383c23f4000000001600147ed28f21558ee8ecd78a339105e7756213901b6effffffff6da23b7041e4c4b6b8d7cae88d1b4fbdad16503cf3dcfe3f6c85e0ae150c17a7000000001600147ed28f21558ee8ecd78a339105e7756213901b6effffffff03e80300000000000069512102c9169a3c7845490a815acdd720f2c894bb916b00b6987b846b31895a38e2814d21027759538aaa3307bc8d576cc9ae8b5cfeb4f89eecb554cbecc42baa629bc084ea21038cf659b1eef29fa8241c63dfa9eab3e1ef4f14fd7d99ee18746a9a938707616953aee80300000000000069512102c6169a3c7845490a8179babad2e07e3ab844e5e8565a6a3c4d146e2f5af111ab21036c379bdd2e2e53b9d7c789f80af5c4df49c9840a52d15963e663cf0ef7afa8d521038cf659b1eef29fa8241c63dfa9eab3e1ef4f14fd7d99ee18746a9a938707616953ae47d016a8040000001600147ed28f21558ee8ecd78a339105e7756213901b6e02000002000002000002000000000000", "params": { - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "asset_dest_quant_list": [ [ "XCP", - "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", 1 ], [ "MYASSETA", - "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", + "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", 2 ] ], "memo": "\"Hello, world!\"", "memo_is_hex": false }, - "name": "mpma" + "name": "mpma", + "data": "434e545250525459030002807d93ff5e96d2aa8302b09d3661285dec7e9d27ab8054c1ba334a1912f96353f110938927c645ff90648f2248656c6c6f2c20776f726c6421228000000c159b8bb72000000000000000480000000000000008000000000000000200", + "btc_in": 20000000000, + "btc_out": 2000, + "btc_change": 19999945492, + "btc_fee": 52508, + "rawtransaction": "02000000000104e577e067bb983c8bf37ef7aca10b5ce04fe1cc8e1610106715e9b896aa5fe223000000001600147d93ff5e96d2aa8302b09d3661285dec7e9d27abfffffffff01d1425b1446af40a30cf7f614ef968b0f0e2898bde55b78495a33052cde893000000001600147d93ff5e96d2aa8302b09d3661285dec7e9d27abffffffff2abb23c81d9a008762665571fdf369475915efb7b391c56031b179c53a86251d000000001600147d93ff5e96d2aa8302b09d3661285dec7e9d27abffffffffff380c0c8c7dc0f7039e035159c41148c7f6638ee75536c0630b7204e3fd8958000000001600147d93ff5e96d2aa8302b09d3661285dec7e9d27abffffffff03e803000000000000695121036e548f8fc9c509ea3d29031b77b76fdabb76c88e850afb489293efb339ca2c5c2102f0b12cd792f3cdf41c46e2f41ad7b6edfd56fc16b1963d618469e8d8a78709652103e9ae92eabb90ca74fe993bac25a34afb53dbfd9ee15d1434f46704cbef38ec9753aee8030000000000006951210261548f8fc9c509ea3d0a747685a69804c7601a240a1dd05e13d2c7eed5b4b1192102d71ae4835349febe055413974926a67e747138534e0659eea6218db4cbe825412103e9ae92eabb90ca74fe993bac25a34afb53dbfd9ee15d1434f46704cbef38ec9753ae14f316a8040000001600147d93ff5e96d2aa8302b09d3661285dec7e9d27ab02000002000002000002000000000000", + "unpacked_data": { + "message_type": "unknown", + "message_type_id": 67, + "message_data": { + "error": "Unknown message type" + } + } } } ``` -### Compose Order [GET /v2/addresses/{address}/compose/order{?give_asset}{&give_quantity}{&get_asset}{&get_quantity}{&expiration}{&fee_required}{&encoding}{&fee_per_kb}{®ular_dust_size}{&multisig_dust_size}{&pubkey}{&allow_unconfirmed_inputs}{&fee}{&fee_provided}{&unspent_tx_hash}{&dust_return_pubkey}{&disable_utxo_locks}{&extended_tx_info}{&p2sh_pretx_txid}{&segwit}{&confirmation_target}{&return_psbt}{&exclude_utxos}{&return_only_data}{&verbose}{&show_unconfirmed}] +### Compose Order [GET /v2/addresses/{address}/compose/order{?give_asset}{&give_quantity}{&get_asset}{&get_quantity}{&expiration}{&fee_required}{&encoding}{&fee_per_kb}{®ular_dust_size}{&multisig_dust_size}{&pubkeys}{&allow_unconfirmed_inputs}{&exact_fee}{&fee_provided}{&unspent_tx_hash}{&dust_return_pubkey}{&disable_utxo_locks}{&p2sh_pretx_txid}{&segwit}{&confirmation_target}{&exclude_utxos}{&inputs_set}{&return_psbt}{&return_only_data}{&extended_tx_info}{&old_style_api}{&verbose}{&show_unconfirmed}] Composes a transaction to place an order on the distributed exchange. + Parameters - + address: `bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj` (str, required) - The address that will be issuing the order request (must have the necessary quantity of the specified asset to give) + + address: `bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs` (str, required) - The address that will be issuing the order request (must have the necessary quantity of the specified asset to give) + give_asset: `XCP` (str, required) - The asset that will be given in the trade + give_quantity: `1000` (int, required) - The quantity of the asset that will be given (in satoshis, hence integer) + get_asset: `FAIRMINTA` (str, required) - The asset that will be received in the trade @@ -8310,33 +8551,37 @@ Composes a transaction to place an order on the distributed exchange. + Default: `546` + multisig_dust_size (int, optional) - Specify (in satoshis) to override the (dust) amount of BTC used for each (bare) multisig output + Default: `1000` - + pubkey (str, optional) - The hexadecimal public key of the source address (or a list of the keys, if multi-sig). Required when using encoding parameter values of multisig or pubkeyhash. + + pubkeys (str, optional) - The hexadecimal public key of the source address (or a comma separated list of keys, if multi-sig). Required when using encoding parameter values of multisig or pubkeyhash. + Default: `None` + allow_unconfirmed_inputs (bool, optional) - Set to true to allow this transaction to utilize unconfirmed UTXOs as inputs + Default: `False` - + fee (int, optional) - If you'd like to specify a custom miners' fee, specify it here (in satoshis). Leave as default for the server to automatically choose + + exact_fee (int, optional) - If you'd like to specify a custom miners' fee, specify it here (in satoshis). Leave as default for the server to automatically choose + Default: `None` + fee_provided (int, optional) - If you would like to specify a maximum fee (up to and including which may be used as the transaction fee), specify it here (in satoshis). This differs from fee in that this is an upper bound value, which fee is an exact value + Default: `0` - + unspent_tx_hash (str, optional) - When compiling the UTXOs to use as inputs for the transaction being created, only consider unspent outputs from this specific transaction hash. Defaults to null to consider all UTXOs for the address. Do not use this parameter if you are specifying custom_inputs + + unspent_tx_hash (str, optional) - When compiling the UTXOs to use as inputs for the transaction being created, only consider unspent outputs from this specific transaction hash. Defaults to null to consider all UTXOs for the address. Do not use this parameter if you are specifying inputs_set + Default: `None` + dust_return_pubkey (str, optional) - The dust return pubkey is used in multi-sig data outputs (as the only real pubkey) to make those the outputs spendable. By default, this pubkey is taken from the pubkey used in the first transaction input. However, it can be overridden here (and is required to be specified if a P2SH input is used and multisig is used as the data output encoding.) If specified, specify the public key (in hex format) where dust will be returned to so that it can be reclaimed. Only valid/useful when used with transactions that utilize multisig data encoding. Note that if this value is set to false, this instructs counterparty-server to use the default dust return pubkey configured at the node level. If this default is not set at the node level, the call will generate an exception + Default: `None` + disable_utxo_locks (bool, optional) - By default, UTXOs utilized when creating a transaction are 'locked' for a few seconds, to prevent a case where rapidly generating create_ calls reuse UTXOs due to their spent status not being updated in bitcoind yet. Specify true for this parameter to disable this behavior, and not temporarily lock UTXOs + Default: `False` - + extended_tx_info (bool, optional) - When this is not specified or false, the create_ calls return only a hex-encoded string. If this is true, the create_ calls return a data object with the following keys: tx_hex, btc_in, btc_out, btc_change, and btc_fee - + Default: `False` + p2sh_pretx_txid (str, optional) - The previous transaction txid for a two part P2SH message. This txid must be taken from the signed transaction + Default: `None` + segwit (bool, optional) - Use segwit + Default: `False` + confirmation_target (int, optional) - The number of blocks to target for confirmation + Default: `3` - + return_psbt (bool, optional) - Construct a PSBT instead of a raw transaction hex - + Default: `False` + exclude_utxos (str, optional) - A comma-separated list of UTXO txids to exclude when selecting UTXOs to use as inputs for the transaction being created - + Default: `` - + return_only_data (bool, optional) - Return only the data part of the transaction + + Default: `None` + + inputs_set (str, optional) - A comma-separated list of UTXOs (`:`) to use as inputs for the transaction being created + + Default: `None` + + return_psbt (bool, optional) - (API v2 only) Construct a PSBT instead of a raw transaction hex + + Default: `False` + + return_only_data (bool, optional) - (API v2 only) Return only the data part of the transaction + + Default: `False` + + extended_tx_info (bool, optional) - (API v1 only) When this is not specified or false, the create_ calls return only a hex-encoded string. If this is true, the create_ calls return a data object with the following keys: tx_hex, btc_in, btc_out, btc_change, and btc_fee + + Default: `False` + + old_style_api (bool, optional) - (API v1 only) Returns a single hex-encoded string instead of an array + Default: `False` + verbose: `true` (bool, optional) - Include asset and dispenser info and normalized quantities in the response. + Default: `false` @@ -8348,9 +8593,8 @@ Composes a transaction to place an order on the distributed exchange. ``` { "result": { - "rawtransaction": "02000000000101c07bf8106610b1b623cb978c0aba88af7803750f54a05c0005f982825d88d475000000001600147ed28f21558ee8ecd78a339105e7756213901b6effffffff020000000000000000356a334143661d91daa75e926ff6d79759f0577584c1a37635e27e463babf031a6b24bdcd4d41d8aebadcc6eb12b58fa950c86172ab287ae052a010000001600147ed28f21558ee8ecd78a339105e7756213901b6e02000000000000", "params": { - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "give_asset": "XCP", "give_quantity": 1000, "get_asset": "FAIRMINTA", @@ -8367,7 +8611,7 @@ Composes a transaction to place an order on the distributed exchange. "get_asset_info": { "asset_longname": "", "description": "", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, @@ -8375,18 +8619,31 @@ Composes a transaction to place an order on the distributed exchange. "get_quantity_normalized": "0.00001000", "fee_required_normalized": "0.00000100" }, - "name": "order" + "name": "order", + "data": "434e5452505254590a000000000000000100000000000003e8000000f3bafe12e200000000000003e800640000000000000064", + "btc_in": 5000000000, + "btc_out": 0, + "btc_change": 4999985233, + "btc_fee": 14767, + "rawtransaction": "02000000000101d3815d3bc637ba5c3310057f1f73518e1cd052e2575305f5f9961d481af47d0b000000001600147d93ff5e96d2aa8302b09d3661285dec7e9d27abffffffff020000000000000000356a3382bca3ffdc73d3e01f1213c9355aef042d09d5b9355ef2cbcffd1cf799a68dd80bb0d4d32952c4c1754009237ece324f87b11951b8052a010000001600147d93ff5e96d2aa8302b09d3661285dec7e9d27ab02000000000000", + "unpacked_data": { + "message_type": "unknown", + "message_type_id": 67, + "message_data": { + "error": "Unknown message type" + } + } } } ``` -### Compose Send [GET /v2/addresses/{address}/compose/send{?destination}{&asset}{&quantity}{&memo}{&memo_is_hex}{&use_enhanced_send}{&encoding}{&fee_per_kb}{®ular_dust_size}{&multisig_dust_size}{&pubkey}{&allow_unconfirmed_inputs}{&fee}{&fee_provided}{&unspent_tx_hash}{&dust_return_pubkey}{&disable_utxo_locks}{&extended_tx_info}{&p2sh_pretx_txid}{&segwit}{&confirmation_target}{&return_psbt}{&exclude_utxos}{&return_only_data}{&verbose}{&show_unconfirmed}] +### Compose Send [GET /v2/addresses/{address}/compose/send{?destination}{&asset}{&quantity}{&memo}{&memo_is_hex}{&use_enhanced_send}{&encoding}{&fee_per_kb}{®ular_dust_size}{&multisig_dust_size}{&pubkeys}{&allow_unconfirmed_inputs}{&exact_fee}{&fee_provided}{&unspent_tx_hash}{&dust_return_pubkey}{&disable_utxo_locks}{&p2sh_pretx_txid}{&segwit}{&confirmation_target}{&exclude_utxos}{&inputs_set}{&return_psbt}{&return_only_data}{&extended_tx_info}{&old_style_api}{&verbose}{&show_unconfirmed}] Composes a transaction to send a quantity of an asset to another address. + Parameters - + address: `bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj` (str, required) - The address that will be sending (must have the necessary quantity of the specified asset) - + destination: `bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t` (str, required) - The address that will be receiving the asset + + address: `bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs` (str, required) - The address that will be sending (must have the necessary quantity of the specified asset) + + destination: `bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9` (str, required) - The address that will be receiving the asset + asset: `XCP` (str, required) - The asset or subasset to send + quantity: `1000` (int, required) - The quantity of the asset to send (in satoshis, hence integer) + memo (str, optional) - The Memo associated with this transaction @@ -8403,33 +8660,37 @@ Composes a transaction to send a quantity of an asset to another address. + Default: `546` + multisig_dust_size (int, optional) - Specify (in satoshis) to override the (dust) amount of BTC used for each (bare) multisig output + Default: `1000` - + pubkey (str, optional) - The hexadecimal public key of the source address (or a list of the keys, if multi-sig). Required when using encoding parameter values of multisig or pubkeyhash. + + pubkeys (str, optional) - The hexadecimal public key of the source address (or a comma separated list of keys, if multi-sig). Required when using encoding parameter values of multisig or pubkeyhash. + Default: `None` + allow_unconfirmed_inputs (bool, optional) - Set to true to allow this transaction to utilize unconfirmed UTXOs as inputs + Default: `False` - + fee (int, optional) - If you'd like to specify a custom miners' fee, specify it here (in satoshis). Leave as default for the server to automatically choose + + exact_fee (int, optional) - If you'd like to specify a custom miners' fee, specify it here (in satoshis). Leave as default for the server to automatically choose + Default: `None` + fee_provided (int, optional) - If you would like to specify a maximum fee (up to and including which may be used as the transaction fee), specify it here (in satoshis). This differs from fee in that this is an upper bound value, which fee is an exact value + Default: `0` - + unspent_tx_hash (str, optional) - When compiling the UTXOs to use as inputs for the transaction being created, only consider unspent outputs from this specific transaction hash. Defaults to null to consider all UTXOs for the address. Do not use this parameter if you are specifying custom_inputs + + unspent_tx_hash (str, optional) - When compiling the UTXOs to use as inputs for the transaction being created, only consider unspent outputs from this specific transaction hash. Defaults to null to consider all UTXOs for the address. Do not use this parameter if you are specifying inputs_set + Default: `None` + dust_return_pubkey (str, optional) - The dust return pubkey is used in multi-sig data outputs (as the only real pubkey) to make those the outputs spendable. By default, this pubkey is taken from the pubkey used in the first transaction input. However, it can be overridden here (and is required to be specified if a P2SH input is used and multisig is used as the data output encoding.) If specified, specify the public key (in hex format) where dust will be returned to so that it can be reclaimed. Only valid/useful when used with transactions that utilize multisig data encoding. Note that if this value is set to false, this instructs counterparty-server to use the default dust return pubkey configured at the node level. If this default is not set at the node level, the call will generate an exception + Default: `None` + disable_utxo_locks (bool, optional) - By default, UTXOs utilized when creating a transaction are 'locked' for a few seconds, to prevent a case where rapidly generating create_ calls reuse UTXOs due to their spent status not being updated in bitcoind yet. Specify true for this parameter to disable this behavior, and not temporarily lock UTXOs + Default: `False` - + extended_tx_info (bool, optional) - When this is not specified or false, the create_ calls return only a hex-encoded string. If this is true, the create_ calls return a data object with the following keys: tx_hex, btc_in, btc_out, btc_change, and btc_fee - + Default: `False` + p2sh_pretx_txid (str, optional) - The previous transaction txid for a two part P2SH message. This txid must be taken from the signed transaction + Default: `None` + segwit (bool, optional) - Use segwit + Default: `False` + confirmation_target (int, optional) - The number of blocks to target for confirmation + Default: `3` - + return_psbt (bool, optional) - Construct a PSBT instead of a raw transaction hex - + Default: `False` + exclude_utxos (str, optional) - A comma-separated list of UTXO txids to exclude when selecting UTXOs to use as inputs for the transaction being created - + Default: `` - + return_only_data (bool, optional) - Return only the data part of the transaction + + Default: `None` + + inputs_set (str, optional) - A comma-separated list of UTXOs (`:`) to use as inputs for the transaction being created + + Default: `None` + + return_psbt (bool, optional) - (API v2 only) Construct a PSBT instead of a raw transaction hex + + Default: `False` + + return_only_data (bool, optional) - (API v2 only) Return only the data part of the transaction + + Default: `False` + + extended_tx_info (bool, optional) - (API v1 only) When this is not specified or false, the create_ calls return only a hex-encoded string. If this is true, the create_ calls return a data object with the following keys: tx_hex, btc_in, btc_out, btc_change, and btc_fee + + Default: `False` + + old_style_api (bool, optional) - (API v1 only) Returns a single hex-encoded string instead of an array + Default: `False` + verbose: `true` (bool, optional) - Include asset and dispenser info and normalized quantities in the response. + Default: `false` @@ -8441,10 +8702,9 @@ Composes a transaction to send a quantity of an asset to another address. ``` { "result": { - "rawtransaction": "02000000000101d1ed4e6a2b26727a08b51181f172b8a5c8dd24188e57f543702dac89c942bd12000000001600147ed28f21558ee8ecd78a339105e7756213901b6effffffff020000000000000000306a2eb930bb587d4fd62cbc52cc09eacb8b0dfbb418f08631a6360d98cf5ce3120e46955c4c3d48c01ca4c9bbe19f3103deaf052a010000001600147ed28f21558ee8ecd78a339105e7756213901b6e02000000000000", "params": { - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "destination": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "destination": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", "asset": "XCP", "quantity": 1000, "memo": null, @@ -8459,18 +8719,31 @@ Composes a transaction to send a quantity of an asset to another address. }, "quantity_normalized": "0.00001000" }, - "name": "send" + "name": "send", + "data": "434e54525052545902000000000000000100000000000003e88054c1ba334a1912f96353f110938927c645ff9064", + "btc_in": 5000000000, + "btc_out": 0, + "btc_change": 4999985526, + "btc_fee": 14474, + "rawtransaction": "020000000001010145d93fcbbca925969a36cbf8dc81b3dcce295cb1cc87c24efdb84e991257e9000000001600147d93ff5e96d2aa8302b09d3661285dec7e9d27abffffffff020000000000000000306a2e3180763905ed77bd5549668783c0fde06c8ecc36077686c0e0a3cc114e7afa54cfc134a5bbfe421445475ad3cdb776b9052a010000001600147d93ff5e96d2aa8302b09d3661285dec7e9d27ab02000000000000", + "unpacked_data": { + "message_type": "unknown", + "message_type_id": 67, + "message_data": { + "error": "Unknown message type" + } + } } } ``` -### Compose Sweep [GET /v2/addresses/{address}/compose/sweep{?destination}{&flags}{&memo}{&encoding}{&fee_per_kb}{®ular_dust_size}{&multisig_dust_size}{&pubkey}{&allow_unconfirmed_inputs}{&fee}{&fee_provided}{&unspent_tx_hash}{&dust_return_pubkey}{&disable_utxo_locks}{&extended_tx_info}{&p2sh_pretx_txid}{&segwit}{&confirmation_target}{&return_psbt}{&exclude_utxos}{&return_only_data}{&verbose}{&show_unconfirmed}] +### Compose Sweep [GET /v2/addresses/{address}/compose/sweep{?destination}{&flags}{&memo}{&encoding}{&fee_per_kb}{®ular_dust_size}{&multisig_dust_size}{&pubkeys}{&allow_unconfirmed_inputs}{&exact_fee}{&fee_provided}{&unspent_tx_hash}{&dust_return_pubkey}{&disable_utxo_locks}{&p2sh_pretx_txid}{&segwit}{&confirmation_target}{&exclude_utxos}{&inputs_set}{&return_psbt}{&return_only_data}{&extended_tx_info}{&old_style_api}{&verbose}{&show_unconfirmed}] Composes a transaction to Sends all assets and/or transfer ownerships to a destination address. + Parameters - + address: `bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj` (str, required) - The address that will be sending - + destination: `bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t` (str, required) - The address to receive the assets and/or ownerships + + address: `bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs` (str, required) - The address that will be sending + + destination: `bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9` (str, required) - The address to receive the assets and/or ownerships + flags: `7` (int, required) - An OR mask of flags indicating how the sweep should be processed. Possible flags are: - FLAG_BALANCES: (integer) 1, specifies that all balances should be transferred. - FLAG_OWNERSHIP: (integer) 2, specifies that all ownerships should be transferred. - FLAG_BINARY_MEMO: (integer) 4, specifies that the memo is in binary/hex form. + memo: `FFFF` (str, required) - The Memo associated with this transaction in hex format + encoding (str, optional) - The encoding method to use @@ -8481,33 +8754,37 @@ Composes a transaction to Sends all assets and/or transfer ownerships to a desti + Default: `546` + multisig_dust_size (int, optional) - Specify (in satoshis) to override the (dust) amount of BTC used for each (bare) multisig output + Default: `1000` - + pubkey (str, optional) - The hexadecimal public key of the source address (or a list of the keys, if multi-sig). Required when using encoding parameter values of multisig or pubkeyhash. + + pubkeys (str, optional) - The hexadecimal public key of the source address (or a comma separated list of keys, if multi-sig). Required when using encoding parameter values of multisig or pubkeyhash. + Default: `None` + allow_unconfirmed_inputs (bool, optional) - Set to true to allow this transaction to utilize unconfirmed UTXOs as inputs + Default: `False` - + fee (int, optional) - If you'd like to specify a custom miners' fee, specify it here (in satoshis). Leave as default for the server to automatically choose + + exact_fee (int, optional) - If you'd like to specify a custom miners' fee, specify it here (in satoshis). Leave as default for the server to automatically choose + Default: `None` + fee_provided (int, optional) - If you would like to specify a maximum fee (up to and including which may be used as the transaction fee), specify it here (in satoshis). This differs from fee in that this is an upper bound value, which fee is an exact value + Default: `0` - + unspent_tx_hash (str, optional) - When compiling the UTXOs to use as inputs for the transaction being created, only consider unspent outputs from this specific transaction hash. Defaults to null to consider all UTXOs for the address. Do not use this parameter if you are specifying custom_inputs + + unspent_tx_hash (str, optional) - When compiling the UTXOs to use as inputs for the transaction being created, only consider unspent outputs from this specific transaction hash. Defaults to null to consider all UTXOs for the address. Do not use this parameter if you are specifying inputs_set + Default: `None` + dust_return_pubkey (str, optional) - The dust return pubkey is used in multi-sig data outputs (as the only real pubkey) to make those the outputs spendable. By default, this pubkey is taken from the pubkey used in the first transaction input. However, it can be overridden here (and is required to be specified if a P2SH input is used and multisig is used as the data output encoding.) If specified, specify the public key (in hex format) where dust will be returned to so that it can be reclaimed. Only valid/useful when used with transactions that utilize multisig data encoding. Note that if this value is set to false, this instructs counterparty-server to use the default dust return pubkey configured at the node level. If this default is not set at the node level, the call will generate an exception + Default: `None` + disable_utxo_locks (bool, optional) - By default, UTXOs utilized when creating a transaction are 'locked' for a few seconds, to prevent a case where rapidly generating create_ calls reuse UTXOs due to their spent status not being updated in bitcoind yet. Specify true for this parameter to disable this behavior, and not temporarily lock UTXOs + Default: `False` - + extended_tx_info (bool, optional) - When this is not specified or false, the create_ calls return only a hex-encoded string. If this is true, the create_ calls return a data object with the following keys: tx_hex, btc_in, btc_out, btc_change, and btc_fee - + Default: `False` + p2sh_pretx_txid (str, optional) - The previous transaction txid for a two part P2SH message. This txid must be taken from the signed transaction + Default: `None` + segwit (bool, optional) - Use segwit + Default: `False` + confirmation_target (int, optional) - The number of blocks to target for confirmation + Default: `3` - + return_psbt (bool, optional) - Construct a PSBT instead of a raw transaction hex - + Default: `False` + exclude_utxos (str, optional) - A comma-separated list of UTXO txids to exclude when selecting UTXOs to use as inputs for the transaction being created - + Default: `` - + return_only_data (bool, optional) - Return only the data part of the transaction + + Default: `None` + + inputs_set (str, optional) - A comma-separated list of UTXOs (`:`) to use as inputs for the transaction being created + + Default: `None` + + return_psbt (bool, optional) - (API v2 only) Construct a PSBT instead of a raw transaction hex + + Default: `False` + + return_only_data (bool, optional) - (API v2 only) Return only the data part of the transaction + + Default: `False` + + extended_tx_info (bool, optional) - (API v1 only) When this is not specified or false, the create_ calls return only a hex-encoded string. If this is true, the create_ calls return a data object with the following keys: tx_hex, btc_in, btc_out, btc_change, and btc_fee + + Default: `False` + + old_style_api (bool, optional) - (API v1 only) Returns a single hex-encoded string instead of an array + Default: `False` + verbose: `true` (bool, optional) - Include asset and dispenser info and normalized quantities in the response. + Default: `false` @@ -8519,25 +8796,37 @@ Composes a transaction to Sends all assets and/or transfer ownerships to a desti ``` { "result": { - "rawtransaction": "02000000000101b562c0730715780ae991157f93d3a949c1cfaba285b7f621eea8d3dda79da50c000000001600147ed28f21558ee8ecd78a339105e7756213901b6effffffff020000000000000000236a218a5634f40393d59bc3c1a4c12be1661951369bb953fbb8da7bd34ffdc310d0a1fe59b3052a010000001600147ed28f21558ee8ecd78a339105e7756213901b6e02000000000000", "params": { - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "destination": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "destination": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", "flags": 7, "memo": "FFFF" }, - "name": "sweep" + "name": "sweep", + "data": "434e545250525459048054c1ba334a1912f96353f110938927c645ff906407ffff", + "btc_in": 5000000000, + "btc_out": 0, + "btc_change": 4999986287, + "btc_fee": 13713, + "rawtransaction": "020000000001019a797a06c4f5d3094b75b249c4ee63d25c26847734c97b81130d1fed7a4dab60000000001600147d93ff5e96d2aa8302b09d3661285dec7e9d27abffffffff020000000000000000236a212049e1fbe71fc2711c0c75cc689b011397ff1e489e3421417cee9dd941136816686fbc052a010000001600147d93ff5e96d2aa8302b09d3661285dec7e9d27ab02000000000000", + "unpacked_data": { + "message_type": "unknown", + "message_type_id": 67, + "message_data": { + "error": "Unknown message type" + } + } } } ``` -### Compose Dispense [GET /v2/addresses/{address}/compose/dispense{?dispenser}{&quantity}{&encoding}{&fee_per_kb}{®ular_dust_size}{&multisig_dust_size}{&pubkey}{&allow_unconfirmed_inputs}{&fee}{&fee_provided}{&unspent_tx_hash}{&dust_return_pubkey}{&disable_utxo_locks}{&extended_tx_info}{&p2sh_pretx_txid}{&segwit}{&confirmation_target}{&return_psbt}{&exclude_utxos}{&return_only_data}{&verbose}{&show_unconfirmed}] +### Compose Dispense [GET /v2/addresses/{address}/compose/dispense{?dispenser}{&quantity}{&encoding}{&fee_per_kb}{®ular_dust_size}{&multisig_dust_size}{&pubkeys}{&allow_unconfirmed_inputs}{&exact_fee}{&fee_provided}{&unspent_tx_hash}{&dust_return_pubkey}{&disable_utxo_locks}{&p2sh_pretx_txid}{&segwit}{&confirmation_target}{&exclude_utxos}{&inputs_set}{&return_psbt}{&return_only_data}{&extended_tx_info}{&old_style_api}{&verbose}{&show_unconfirmed}] Composes a transaction to send BTC to a dispenser. + Parameters - + address: `bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t` (str, required) - The address that will be sending (must have the necessary quantity of BTC) - + dispenser: `bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30` (str, required) - The dispenser that will be receiving the asset + + address: `bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9` (str, required) - The address that will be sending (must have the necessary quantity of BTC) + + dispenser: `bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct` (str, required) - The dispenser that will be receiving the asset + quantity: `1000` (int, required) - The quantity of BTC to send (in satoshis, hence integer) + encoding (str, optional) - The encoding method to use + Default: `auto` @@ -8547,33 +8836,37 @@ Composes a transaction to send BTC to a dispenser. + Default: `546` + multisig_dust_size (int, optional) - Specify (in satoshis) to override the (dust) amount of BTC used for each (bare) multisig output + Default: `1000` - + pubkey (str, optional) - The hexadecimal public key of the source address (or a list of the keys, if multi-sig). Required when using encoding parameter values of multisig or pubkeyhash. + + pubkeys (str, optional) - The hexadecimal public key of the source address (or a comma separated list of keys, if multi-sig). Required when using encoding parameter values of multisig or pubkeyhash. + Default: `None` + allow_unconfirmed_inputs (bool, optional) - Set to true to allow this transaction to utilize unconfirmed UTXOs as inputs + Default: `False` - + fee (int, optional) - If you'd like to specify a custom miners' fee, specify it here (in satoshis). Leave as default for the server to automatically choose + + exact_fee (int, optional) - If you'd like to specify a custom miners' fee, specify it here (in satoshis). Leave as default for the server to automatically choose + Default: `None` + fee_provided (int, optional) - If you would like to specify a maximum fee (up to and including which may be used as the transaction fee), specify it here (in satoshis). This differs from fee in that this is an upper bound value, which fee is an exact value + Default: `0` - + unspent_tx_hash (str, optional) - When compiling the UTXOs to use as inputs for the transaction being created, only consider unspent outputs from this specific transaction hash. Defaults to null to consider all UTXOs for the address. Do not use this parameter if you are specifying custom_inputs + + unspent_tx_hash (str, optional) - When compiling the UTXOs to use as inputs for the transaction being created, only consider unspent outputs from this specific transaction hash. Defaults to null to consider all UTXOs for the address. Do not use this parameter if you are specifying inputs_set + Default: `None` + dust_return_pubkey (str, optional) - The dust return pubkey is used in multi-sig data outputs (as the only real pubkey) to make those the outputs spendable. By default, this pubkey is taken from the pubkey used in the first transaction input. However, it can be overridden here (and is required to be specified if a P2SH input is used and multisig is used as the data output encoding.) If specified, specify the public key (in hex format) where dust will be returned to so that it can be reclaimed. Only valid/useful when used with transactions that utilize multisig data encoding. Note that if this value is set to false, this instructs counterparty-server to use the default dust return pubkey configured at the node level. If this default is not set at the node level, the call will generate an exception + Default: `None` + disable_utxo_locks (bool, optional) - By default, UTXOs utilized when creating a transaction are 'locked' for a few seconds, to prevent a case where rapidly generating create_ calls reuse UTXOs due to their spent status not being updated in bitcoind yet. Specify true for this parameter to disable this behavior, and not temporarily lock UTXOs + Default: `False` - + extended_tx_info (bool, optional) - When this is not specified or false, the create_ calls return only a hex-encoded string. If this is true, the create_ calls return a data object with the following keys: tx_hex, btc_in, btc_out, btc_change, and btc_fee - + Default: `False` + p2sh_pretx_txid (str, optional) - The previous transaction txid for a two part P2SH message. This txid must be taken from the signed transaction + Default: `None` + segwit (bool, optional) - Use segwit + Default: `False` + confirmation_target (int, optional) - The number of blocks to target for confirmation + Default: `3` - + return_psbt (bool, optional) - Construct a PSBT instead of a raw transaction hex - + Default: `False` + exclude_utxos (str, optional) - A comma-separated list of UTXO txids to exclude when selecting UTXOs to use as inputs for the transaction being created - + Default: `` - + return_only_data (bool, optional) - Return only the data part of the transaction + + Default: `None` + + inputs_set (str, optional) - A comma-separated list of UTXOs (`:`) to use as inputs for the transaction being created + + Default: `None` + + return_psbt (bool, optional) - (API v2 only) Construct a PSBT instead of a raw transaction hex + + Default: `False` + + return_only_data (bool, optional) - (API v2 only) Return only the data part of the transaction + + Default: `False` + + extended_tx_info (bool, optional) - (API v1 only) When this is not specified or false, the create_ calls return only a hex-encoded string. If this is true, the create_ calls return a data object with the following keys: tx_hex, btc_in, btc_out, btc_change, and btc_fee + + Default: `False` + + old_style_api (bool, optional) - (API v1 only) Returns a single hex-encoded string instead of an array + Default: `False` + verbose: `true` (bool, optional) - Include asset and dispenser info and normalized quantities in the response. + Default: `false` @@ -8585,23 +8878,35 @@ Composes a transaction to send BTC to a dispenser. ``` { "result": { - "rawtransaction": "020000000001014d628a3e65cc9537aa62c9b42db1b2df0e61d973978cac54482a0953d6fe49d70200000016001457841d54055a90ed31a47e9821fd3118e6e78592ffffffff03e803000000000000160014ae2b0c1095bbdf23747f76b242be716817701b7800000000000000000c6a0ac17afa5cc1158f0972f85fb808270100000016001457841d54055a90ed31a47e9821fd3118e6e7859202000000000000", "params": { - "source": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", - "destination": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "source": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", + "destination": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "quantity": 1000 }, - "name": "dispense" + "name": "dispense", + "data": "434e5452505254590d00", + "btc_in": 4949868000, + "btc_out": 1000, + "btc_change": 4949852643, + "btc_fee": 14357, + "rawtransaction": "02000000000101cb26d0b47d6796bbba2cdbf172c9fcad814432c0faa64e51325e97136b918ac70200000016001454c1ba334a1912f96353f110938927c645ff9064ffffffff03e8030000000000001600146c45b04730370dc7e778ed200c19f22a08c064a900000000000000000c6a0abd14fceefaf1824e03ade3c108270100000016001454c1ba334a1912f96353f110938927c645ff906402000000000000", + "unpacked_data": { + "message_type": "unknown", + "message_type_id": 67, + "message_data": { + "error": "Unknown message type" + } + } } } ``` -### Compose Fairminter [GET /v2/addresses/{address}/compose/fairminter{?asset}{&asset_parent}{&price}{&quantity_by_price}{&max_mint_per_tx}{&hard_cap}{&premint_quantity}{&start_block}{&end_block}{&soft_cap}{&soft_cap_deadline_block}{&minted_asset_commission}{&burn_payment}{&lock_description}{&lock_quantity}{&divisible}{&description}{&encoding}{&fee_per_kb}{®ular_dust_size}{&multisig_dust_size}{&pubkey}{&allow_unconfirmed_inputs}{&fee}{&fee_provided}{&unspent_tx_hash}{&dust_return_pubkey}{&disable_utxo_locks}{&extended_tx_info}{&p2sh_pretx_txid}{&segwit}{&confirmation_target}{&return_psbt}{&exclude_utxos}{&return_only_data}{&verbose}{&show_unconfirmed}] +### Compose Fairminter [GET /v2/addresses/{address}/compose/fairminter{?asset}{&asset_parent}{&price}{&quantity_by_price}{&max_mint_per_tx}{&hard_cap}{&premint_quantity}{&start_block}{&end_block}{&soft_cap}{&soft_cap_deadline_block}{&minted_asset_commission}{&burn_payment}{&lock_description}{&lock_quantity}{&divisible}{&description}{&encoding}{&fee_per_kb}{®ular_dust_size}{&multisig_dust_size}{&pubkeys}{&allow_unconfirmed_inputs}{&exact_fee}{&fee_provided}{&unspent_tx_hash}{&dust_return_pubkey}{&disable_utxo_locks}{&p2sh_pretx_txid}{&segwit}{&confirmation_target}{&exclude_utxos}{&inputs_set}{&return_psbt}{&return_only_data}{&extended_tx_info}{&old_style_api}{&verbose}{&show_unconfirmed}] Composes a transaction to issue a new asset using the FairMinter protocol. + Parameters - + address: `bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj` (str, required) - The address that will be issuing the asset + + address: `bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs` (str, required) - The address that will be issuing the asset + asset: `MYASSET` (str, required) - The asset to issue + asset_parent (str, optional) - The parent asset of the asset to issue + Default: `` @@ -8643,33 +8948,37 @@ Composes a transaction to issue a new asset using the FairMinter protocol. + Default: `546` + multisig_dust_size (int, optional) - Specify (in satoshis) to override the (dust) amount of BTC used for each (bare) multisig output + Default: `1000` - + pubkey (str, optional) - The hexadecimal public key of the source address (or a list of the keys, if multi-sig). Required when using encoding parameter values of multisig or pubkeyhash. + + pubkeys (str, optional) - The hexadecimal public key of the source address (or a comma separated list of keys, if multi-sig). Required when using encoding parameter values of multisig or pubkeyhash. + Default: `None` + allow_unconfirmed_inputs (bool, optional) - Set to true to allow this transaction to utilize unconfirmed UTXOs as inputs + Default: `False` - + fee (int, optional) - If you'd like to specify a custom miners' fee, specify it here (in satoshis). Leave as default for the server to automatically choose + + exact_fee (int, optional) - If you'd like to specify a custom miners' fee, specify it here (in satoshis). Leave as default for the server to automatically choose + Default: `None` + fee_provided (int, optional) - If you would like to specify a maximum fee (up to and including which may be used as the transaction fee), specify it here (in satoshis). This differs from fee in that this is an upper bound value, which fee is an exact value + Default: `0` - + unspent_tx_hash (str, optional) - When compiling the UTXOs to use as inputs for the transaction being created, only consider unspent outputs from this specific transaction hash. Defaults to null to consider all UTXOs for the address. Do not use this parameter if you are specifying custom_inputs + + unspent_tx_hash (str, optional) - When compiling the UTXOs to use as inputs for the transaction being created, only consider unspent outputs from this specific transaction hash. Defaults to null to consider all UTXOs for the address. Do not use this parameter if you are specifying inputs_set + Default: `None` + dust_return_pubkey (str, optional) - The dust return pubkey is used in multi-sig data outputs (as the only real pubkey) to make those the outputs spendable. By default, this pubkey is taken from the pubkey used in the first transaction input. However, it can be overridden here (and is required to be specified if a P2SH input is used and multisig is used as the data output encoding.) If specified, specify the public key (in hex format) where dust will be returned to so that it can be reclaimed. Only valid/useful when used with transactions that utilize multisig data encoding. Note that if this value is set to false, this instructs counterparty-server to use the default dust return pubkey configured at the node level. If this default is not set at the node level, the call will generate an exception + Default: `None` + disable_utxo_locks (bool, optional) - By default, UTXOs utilized when creating a transaction are 'locked' for a few seconds, to prevent a case where rapidly generating create_ calls reuse UTXOs due to their spent status not being updated in bitcoind yet. Specify true for this parameter to disable this behavior, and not temporarily lock UTXOs + Default: `False` - + extended_tx_info (bool, optional) - When this is not specified or false, the create_ calls return only a hex-encoded string. If this is true, the create_ calls return a data object with the following keys: tx_hex, btc_in, btc_out, btc_change, and btc_fee - + Default: `False` + p2sh_pretx_txid (str, optional) - The previous transaction txid for a two part P2SH message. This txid must be taken from the signed transaction + Default: `None` + segwit (bool, optional) - Use segwit + Default: `False` + confirmation_target (int, optional) - The number of blocks to target for confirmation + Default: `3` - + return_psbt (bool, optional) - Construct a PSBT instead of a raw transaction hex - + Default: `False` + exclude_utxos (str, optional) - A comma-separated list of UTXO txids to exclude when selecting UTXOs to use as inputs for the transaction being created - + Default: `` - + return_only_data (bool, optional) - Return only the data part of the transaction + + Default: `None` + + inputs_set (str, optional) - A comma-separated list of UTXOs (`:`) to use as inputs for the transaction being created + + Default: `None` + + return_psbt (bool, optional) - (API v2 only) Construct a PSBT instead of a raw transaction hex + + Default: `False` + + return_only_data (bool, optional) - (API v2 only) Return only the data part of the transaction + + Default: `False` + + extended_tx_info (bool, optional) - (API v1 only) When this is not specified or false, the create_ calls return only a hex-encoded string. If this is true, the create_ calls return a data object with the following keys: tx_hex, btc_in, btc_out, btc_change, and btc_fee + + Default: `False` + + old_style_api (bool, optional) - (API v1 only) Returns a single hex-encoded string instead of an array + Default: `False` + verbose: `true` (bool, optional) - Include asset and dispenser info and normalized quantities in the response. + Default: `false` @@ -8681,9 +8990,8 @@ Composes a transaction to issue a new asset using the FairMinter protocol. ``` { "result": { - "rawtransaction": "02000000000101fbdb9417de62f10b9120f7e3e29518b3e1b564d76efe4eeb9f5fb40810cb2695000000001600147ed28f21558ee8ecd78a339105e7756213901b6effffffff020000000000000000316a2f1a876d6cad75159c126a8d28d8dba1389dc8a65bf6ccf9207d08f02f106901dfa932f2675b34d4dd1b20eaa13bd61e99af052a010000001600147ed28f21558ee8ecd78a339105e7756213901b6e02000000000000", "params": { - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "asset": "MYASSET", "asset_parent": "", "price": 10, @@ -8702,17 +9010,30 @@ Composes a transaction to issue a new asset using the FairMinter protocol. "divisible": true, "description": "" }, - "name": "fairminter" + "name": "fairminter", + "data": "434e5452505254595a4d5941535345547c7c31307c317c307c307c307c307c307c307c307c307c307c307c307c317c", + "btc_in": 5000000000, + "btc_out": 0, + "btc_change": 4999985467, + "btc_fee": 14533, + "rawtransaction": "02000000000101dff5d6b9963d58ce93eda5b9e0dc3325edb92d172aee9b60ad4009740563e7f6000000001600147d93ff5e96d2aa8302b09d3661285dec7e9d27abffffffff020000000000000000316a2f35fd92ae806a71d5d594a5fa28384c40c437d510b8d21b9ec688462821e8b3f6a2cd07f9420a363cff7b2921eb27e73bb9052a010000001600147d93ff5e96d2aa8302b09d3661285dec7e9d27ab02000000000000", + "unpacked_data": { + "message_type": "unknown", + "message_type_id": 67, + "message_data": { + "error": "Unknown message type" + } + } } } ``` -### Compose Fairmint [GET /v2/addresses/{address}/compose/fairmint{?asset}{&quantity}{&encoding}{&fee_per_kb}{®ular_dust_size}{&multisig_dust_size}{&pubkey}{&allow_unconfirmed_inputs}{&fee}{&fee_provided}{&unspent_tx_hash}{&dust_return_pubkey}{&disable_utxo_locks}{&extended_tx_info}{&p2sh_pretx_txid}{&segwit}{&confirmation_target}{&return_psbt}{&exclude_utxos}{&return_only_data}{&verbose}{&show_unconfirmed}] +### Compose Fairmint [GET /v2/addresses/{address}/compose/fairmint{?asset}{&quantity}{&encoding}{&fee_per_kb}{®ular_dust_size}{&multisig_dust_size}{&pubkeys}{&allow_unconfirmed_inputs}{&exact_fee}{&fee_provided}{&unspent_tx_hash}{&dust_return_pubkey}{&disable_utxo_locks}{&p2sh_pretx_txid}{&segwit}{&confirmation_target}{&exclude_utxos}{&inputs_set}{&return_psbt}{&return_only_data}{&extended_tx_info}{&old_style_api}{&verbose}{&show_unconfirmed}] Composes a transaction to mint a quantity of an asset using the FairMinter protocol. + Parameters - + address: `bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj` (str, required) - The address that will be minting the asset + + address: `bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs` (str, required) - The address that will be minting the asset + asset: `FAIRMINTC` (str, required) - The asset to mint + quantity: `1` (int, optional) - The quantity of the asset to mint (in satoshis, hence integer) + Default: `0` @@ -8724,33 +9045,37 @@ Composes a transaction to mint a quantity of an asset using the FairMinter proto + Default: `546` + multisig_dust_size (int, optional) - Specify (in satoshis) to override the (dust) amount of BTC used for each (bare) multisig output + Default: `1000` - + pubkey (str, optional) - The hexadecimal public key of the source address (or a list of the keys, if multi-sig). Required when using encoding parameter values of multisig or pubkeyhash. + + pubkeys (str, optional) - The hexadecimal public key of the source address (or a comma separated list of keys, if multi-sig). Required when using encoding parameter values of multisig or pubkeyhash. + Default: `None` + allow_unconfirmed_inputs (bool, optional) - Set to true to allow this transaction to utilize unconfirmed UTXOs as inputs + Default: `False` - + fee (int, optional) - If you'd like to specify a custom miners' fee, specify it here (in satoshis). Leave as default for the server to automatically choose + + exact_fee (int, optional) - If you'd like to specify a custom miners' fee, specify it here (in satoshis). Leave as default for the server to automatically choose + Default: `None` + fee_provided (int, optional) - If you would like to specify a maximum fee (up to and including which may be used as the transaction fee), specify it here (in satoshis). This differs from fee in that this is an upper bound value, which fee is an exact value + Default: `0` - + unspent_tx_hash (str, optional) - When compiling the UTXOs to use as inputs for the transaction being created, only consider unspent outputs from this specific transaction hash. Defaults to null to consider all UTXOs for the address. Do not use this parameter if you are specifying custom_inputs + + unspent_tx_hash (str, optional) - When compiling the UTXOs to use as inputs for the transaction being created, only consider unspent outputs from this specific transaction hash. Defaults to null to consider all UTXOs for the address. Do not use this parameter if you are specifying inputs_set + Default: `None` + dust_return_pubkey (str, optional) - The dust return pubkey is used in multi-sig data outputs (as the only real pubkey) to make those the outputs spendable. By default, this pubkey is taken from the pubkey used in the first transaction input. However, it can be overridden here (and is required to be specified if a P2SH input is used and multisig is used as the data output encoding.) If specified, specify the public key (in hex format) where dust will be returned to so that it can be reclaimed. Only valid/useful when used with transactions that utilize multisig data encoding. Note that if this value is set to false, this instructs counterparty-server to use the default dust return pubkey configured at the node level. If this default is not set at the node level, the call will generate an exception + Default: `None` + disable_utxo_locks (bool, optional) - By default, UTXOs utilized when creating a transaction are 'locked' for a few seconds, to prevent a case where rapidly generating create_ calls reuse UTXOs due to their spent status not being updated in bitcoind yet. Specify true for this parameter to disable this behavior, and not temporarily lock UTXOs + Default: `False` - + extended_tx_info (bool, optional) - When this is not specified or false, the create_ calls return only a hex-encoded string. If this is true, the create_ calls return a data object with the following keys: tx_hex, btc_in, btc_out, btc_change, and btc_fee - + Default: `False` + p2sh_pretx_txid (str, optional) - The previous transaction txid for a two part P2SH message. This txid must be taken from the signed transaction + Default: `None` + segwit (bool, optional) - Use segwit + Default: `False` + confirmation_target (int, optional) - The number of blocks to target for confirmation + Default: `3` - + return_psbt (bool, optional) - Construct a PSBT instead of a raw transaction hex - + Default: `False` + exclude_utxos (str, optional) - A comma-separated list of UTXO txids to exclude when selecting UTXOs to use as inputs for the transaction being created - + Default: `` - + return_only_data (bool, optional) - Return only the data part of the transaction + + Default: `None` + + inputs_set (str, optional) - A comma-separated list of UTXOs (`:`) to use as inputs for the transaction being created + + Default: `None` + + return_psbt (bool, optional) - (API v2 only) Construct a PSBT instead of a raw transaction hex + + Default: `False` + + return_only_data (bool, optional) - (API v2 only) Return only the data part of the transaction + + Default: `False` + + extended_tx_info (bool, optional) - (API v1 only) When this is not specified or false, the create_ calls return only a hex-encoded string. If this is true, the create_ calls return a data object with the following keys: tx_hex, btc_in, btc_out, btc_change, and btc_fee + + Default: `False` + + old_style_api (bool, optional) - (API v1 only) Returns a single hex-encoded string instead of an array + Default: `False` + verbose: `true` (bool, optional) - Include asset and dispenser info and normalized quantities in the response. + Default: `false` @@ -8762,34 +9087,46 @@ Composes a transaction to mint a quantity of an asset using the FairMinter proto ``` { "result": { - "rawtransaction": "02000000000101ebc7922edff8bf7972bfbfc17ef1d69520687cb4a252ed0c25bc335b176b630a000000001600147ed28f21558ee8ecd78a339105e7756213901b6effffffff020000000000000000166a14e8c879a220caa9210c9d86643046c47edc54aa60d4b6052a010000001600147ed28f21558ee8ecd78a339105e7756213901b6e02000000000000", "params": { - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "asset": "FAIRMINTC", "quantity": 1, "asset_info": { "asset_longname": "", "description": "", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, "quantity_normalized": "0.00000001" }, - "name": "fairmint" + "name": "fairmint", + "data": "434e5452505254595b464149524d494e54437c31", + "btc_in": 5000000000, + "btc_out": 0, + "btc_change": 4999987049, + "btc_fee": 12951, + "rawtransaction": "02000000000101a5732f28204721cb6308ac13cab61ceeb71efd46aea6f9b66a9441ed07a1b172000000001600147d93ff5e96d2aa8302b09d3661285dec7e9d27abffffffff020000000000000000166a142190e1f1b6f307755204d25dcf7c1048d1c78cb069bf052a010000001600147d93ff5e96d2aa8302b09d3661285dec7e9d27ab02000000000000", + "unpacked_data": { + "message_type": "unknown", + "message_type_id": 67, + "message_data": { + "error": "Unknown message type" + } + } } } ``` -### Compose Attach [GET /v2/addresses/{address}/compose/attach{?asset}{&quantity}{&destination}{&encoding}{&fee_per_kb}{®ular_dust_size}{&multisig_dust_size}{&pubkey}{&allow_unconfirmed_inputs}{&fee}{&fee_provided}{&unspent_tx_hash}{&dust_return_pubkey}{&disable_utxo_locks}{&extended_tx_info}{&p2sh_pretx_txid}{&segwit}{&confirmation_target}{&return_psbt}{&exclude_utxos}{&return_only_data}{&verbose}{&show_unconfirmed}] +### Compose Attach [GET /v2/addresses/{address}/compose/attach{?asset}{&quantity}{&destination}{&encoding}{&fee_per_kb}{®ular_dust_size}{&multisig_dust_size}{&pubkeys}{&allow_unconfirmed_inputs}{&exact_fee}{&fee_provided}{&unspent_tx_hash}{&dust_return_pubkey}{&disable_utxo_locks}{&p2sh_pretx_txid}{&segwit}{&confirmation_target}{&exclude_utxos}{&inputs_set}{&return_psbt}{&return_only_data}{&extended_tx_info}{&old_style_api}{&verbose}{&show_unconfirmed}] Composes a transaction to attach assets from an address to UTXO. + Parameters - + address: `bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj` (str, required) - The address from which the assets are attached + + address: `bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs` (str, required) - The address from which the assets are attached + asset: `XCP` (str, required) - The asset or subasset to attach + quantity: `1000` (int, required) - The quantity of the asset to attach (in satoshis, hence integer) - + destination: `7b7048040c893c69892bd088ce48db79b96b9c1d7221b50d903064ff5a1ed232:1` (str, optional) - The utxo to attach the assets to + + destination: `4cd813fae2558e89f2f9411f38daa7d4c10c94a267daa38155cf18fb4d9fd055:3` (str, optional) - The utxo to attach the assets to + Default: `None` + encoding (str, optional) - The encoding method to use + Default: `auto` @@ -8799,33 +9136,37 @@ Composes a transaction to attach assets from an address to UTXO. + Default: `546` + multisig_dust_size (int, optional) - Specify (in satoshis) to override the (dust) amount of BTC used for each (bare) multisig output + Default: `1000` - + pubkey (str, optional) - The hexadecimal public key of the source address (or a list of the keys, if multi-sig). Required when using encoding parameter values of multisig or pubkeyhash. + + pubkeys (str, optional) - The hexadecimal public key of the source address (or a comma separated list of keys, if multi-sig). Required when using encoding parameter values of multisig or pubkeyhash. + Default: `None` + allow_unconfirmed_inputs (bool, optional) - Set to true to allow this transaction to utilize unconfirmed UTXOs as inputs + Default: `False` - + fee (int, optional) - If you'd like to specify a custom miners' fee, specify it here (in satoshis). Leave as default for the server to automatically choose + + exact_fee (int, optional) - If you'd like to specify a custom miners' fee, specify it here (in satoshis). Leave as default for the server to automatically choose + Default: `None` + fee_provided (int, optional) - If you would like to specify a maximum fee (up to and including which may be used as the transaction fee), specify it here (in satoshis). This differs from fee in that this is an upper bound value, which fee is an exact value + Default: `0` - + unspent_tx_hash (str, optional) - When compiling the UTXOs to use as inputs for the transaction being created, only consider unspent outputs from this specific transaction hash. Defaults to null to consider all UTXOs for the address. Do not use this parameter if you are specifying custom_inputs + + unspent_tx_hash (str, optional) - When compiling the UTXOs to use as inputs for the transaction being created, only consider unspent outputs from this specific transaction hash. Defaults to null to consider all UTXOs for the address. Do not use this parameter if you are specifying inputs_set + Default: `None` + dust_return_pubkey (str, optional) - The dust return pubkey is used in multi-sig data outputs (as the only real pubkey) to make those the outputs spendable. By default, this pubkey is taken from the pubkey used in the first transaction input. However, it can be overridden here (and is required to be specified if a P2SH input is used and multisig is used as the data output encoding.) If specified, specify the public key (in hex format) where dust will be returned to so that it can be reclaimed. Only valid/useful when used with transactions that utilize multisig data encoding. Note that if this value is set to false, this instructs counterparty-server to use the default dust return pubkey configured at the node level. If this default is not set at the node level, the call will generate an exception + Default: `None` + disable_utxo_locks (bool, optional) - By default, UTXOs utilized when creating a transaction are 'locked' for a few seconds, to prevent a case where rapidly generating create_ calls reuse UTXOs due to their spent status not being updated in bitcoind yet. Specify true for this parameter to disable this behavior, and not temporarily lock UTXOs + Default: `False` - + extended_tx_info (bool, optional) - When this is not specified or false, the create_ calls return only a hex-encoded string. If this is true, the create_ calls return a data object with the following keys: tx_hex, btc_in, btc_out, btc_change, and btc_fee - + Default: `False` + p2sh_pretx_txid (str, optional) - The previous transaction txid for a two part P2SH message. This txid must be taken from the signed transaction + Default: `None` + segwit (bool, optional) - Use segwit + Default: `False` + confirmation_target (int, optional) - The number of blocks to target for confirmation + Default: `3` - + return_psbt (bool, optional) - Construct a PSBT instead of a raw transaction hex - + Default: `False` + exclude_utxos (str, optional) - A comma-separated list of UTXO txids to exclude when selecting UTXOs to use as inputs for the transaction being created - + Default: `` - + return_only_data (bool, optional) - Return only the data part of the transaction + + Default: `None` + + inputs_set (str, optional) - A comma-separated list of UTXOs (`:`) to use as inputs for the transaction being created + + Default: `None` + + return_psbt (bool, optional) - (API v2 only) Construct a PSBT instead of a raw transaction hex + + Default: `False` + + return_only_data (bool, optional) - (API v2 only) Return only the data part of the transaction + + Default: `False` + + extended_tx_info (bool, optional) - (API v1 only) When this is not specified or false, the create_ calls return only a hex-encoded string. If this is true, the create_ calls return a data object with the following keys: tx_hex, btc_in, btc_out, btc_change, and btc_fee + + Default: `False` + + old_style_api (bool, optional) - (API v1 only) Returns a single hex-encoded string instead of an array + Default: `False` + verbose: `true` (bool, optional) - Include asset and dispenser info and normalized quantities in the response. + Default: `false` @@ -8837,10 +9178,9 @@ Composes a transaction to attach assets from an address to UTXO. ``` { "result": { - "rawtransaction": "02000000000106fe554038ba01c7f82d1ded9634c1ef501e0c316f39b2f6af7d80141bcaca2bd0000000001600147ed28f21558ee8ecd78a339105e7756213901b6effffffffdc2ead4b27cfb424aa6e8cc185a5e4a96185af16e10e61164e0f07e4c2b5a317000000001600147ed28f21558ee8ecd78a339105e7756213901b6effffffffc0f4470bf4218838b2ade8b3782b44678183b2e5fe80c83c5b14ec65bf014a89000000001600147ed28f21558ee8ecd78a339105e7756213901b6effffffffcdf72a8e033e6ffc183a3728a3842c94648a627ae5438f47b8c8f13022d6d1dd000000001600147ed28f21558ee8ecd78a339105e7756213901b6efffffffffecec22cad05d1f474cdd73f8e9ffa05eb64cf664aebe3b08aaf0bb644770738000000001600147ed28f21558ee8ecd78a339105e7756213901b6effffffffb9441e2420b5197ae1b9eddcc48ff658d0a1da2e5a5cd889e1fb8c60ea4609e3000000001600147ed28f21558ee8ecd78a339105e7756213901b6effffffff04e803000000000000695121029f655253bae89cf966929abd462a943a4654655b5b0150b83790569507fe3ae3210295b3c028a258fedebd0f039dac617ac2b59e7194e21ac9a98db0f47cd8943e1c21038cf659b1eef29fa8241c63dfa9eab3e1ef4f14fd7d99ee18746a9a938707616953aee803000000000000695121029f655253bae89cf966c2c8bd0c67962840003b055e0406bc3cc5008756f22bdc2103c5fc8e2de81af98aea4800ccfb2233cdf7d466d9b64d93e38eb4a5798d9d6bb421038cf659b1eef29fa8241c63dfa9eab3e1ef4f14fd7d99ee18746a9a938707616953aee80300000000000069512102b5655253bae89cf96692caed066494372e7a53405d5652bc04fd63e262ca4fb32103a7cbb74fd12c9bb3897964fbc91002afc2e402e0867ea3d5bad2c34cecac0ec421038cf659b1eef29fa8241c63dfa9eab3e1ef4f14fd7d99ee18746a9a938707616953aec13922fc060000001600147ed28f21558ee8ecd78a339105e7756213901b6e02000002000002000002000002000002000000000000", "params": { - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "destination": "7b7048040c893c69892bd088ce48db79b96b9c1d7221b50d903064ff5a1ed232:1", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "destination": "4cd813fae2558e89f2f9411f38daa7d4c10c94a267daa38155cf18fb4d9fd055:3", "asset": "XCP", "quantity": 1000, "asset_info": { @@ -8852,18 +9192,31 @@ Composes a transaction to attach assets from an address to UTXO. }, "quantity_normalized": "0.00001000" }, - "name": "utxo" + "name": "utxo", + "data": "434e54525052545964626372743171306b666c3768356b36323467787134736e356d787a327a6161336c6636666174666e6b6668737c346364383133666165323535386538396632663934313166333864616137643463313063393461323637646161333831353563663138666234643966643035353a337c5843507c31303030", + "btc_in": 30000000000, + "btc_out": 3000, + "btc_change": 29999918531, + "btc_fee": 78469, + "rawtransaction": "020000000001067d8cb2e922d3c889515df1beafb9deef06736db65888a0178acfa3a8c88239bd000000001600147d93ff5e96d2aa8302b09d3661285dec7e9d27abffffffff002eeb08adc6485da52527394aaea37ad7fa3d10b7f041474c9554c18abb3f74000000001600147d93ff5e96d2aa8302b09d3661285dec7e9d27abffffffff6ff9202edc132df8446768ff0abeb2cc9c540e6d9359512adc49529f443f97b8000000001600147d93ff5e96d2aa8302b09d3661285dec7e9d27abffffffff12cab7d7ed02ff3b76c2d7bf3ee826f2ff89dedabd5880fd324bf09a00f176cb000000001600147d93ff5e96d2aa8302b09d3661285dec7e9d27abffffffff3adcf4e23bc1c205be1c896dec2bbd570b4a1f534b110642a390586df3e73b56000000001600147d93ff5e96d2aa8302b09d3661285dec7e9d27abffffffff84df0624b3eb9db1f4b76d9d8659e08222bd29c4063bd472529a3b20c18f415f000000001600147d93ff5e96d2aa8302b09d3661285dec7e9d27abffffffff04e803000000000000695121033020883d166ee0dc26744f859a957a416709c30b09f1087802d505fe497cf0e22102679d842f89fc3a82a87c17982a72f639385fa2f29a08b6a03bd5fc9c4d08b98e2103e9ae92eabb90ca74fe993bac25a34afb53dbfd9ee15d1434f46704cbef38ec9753aee803000000000000695121033020883d166ee0dc267148d4ddd473556f5bc35558a00922058102a1556ca51a210323978521c0b66bc1fd7c16c27b20f1397f01fdacc903a3ed37d0fa901802b93f2103e9ae92eabb90ca74fe993bac25a34afb53dbfd9ee15d1434f46704cbef38ec9753aee803000000000000695121021a20883d166ee0dc26741dd3dddb784c0f21f51b0fa90d2334e73199310dc446210314f3b142f18608f8c91d24f44c4490584c39cc99fc60c5dc0fb698a47c3bdfaa2103e9ae92eabb90ca74fe993bac25a34afb53dbfd9ee15d1434f46704cbef38ec9753aec36d22fc060000001600147d93ff5e96d2aa8302b09d3661285dec7e9d27ab02000002000002000002000002000002000000000000", + "unpacked_data": { + "message_type": "unknown", + "message_type_id": 67, + "message_data": { + "error": "Unknown message type" + } + } } } ``` -### Compose Detach [GET /v2/utxos/{utxo}/compose/detach{?destination}{&asset}{&quantity}{&encoding}{&fee_per_kb}{®ular_dust_size}{&multisig_dust_size}{&pubkey}{&allow_unconfirmed_inputs}{&fee}{&fee_provided}{&unspent_tx_hash}{&dust_return_pubkey}{&disable_utxo_locks}{&extended_tx_info}{&p2sh_pretx_txid}{&segwit}{&confirmation_target}{&return_psbt}{&exclude_utxos}{&return_only_data}{&verbose}{&show_unconfirmed}] +### Compose Detach [GET /v2/utxos/{utxo}/compose/detach{?destination}{&asset}{&quantity}{&encoding}{&fee_per_kb}{®ular_dust_size}{&multisig_dust_size}{&pubkeys}{&allow_unconfirmed_inputs}{&exact_fee}{&fee_provided}{&unspent_tx_hash}{&dust_return_pubkey}{&disable_utxo_locks}{&p2sh_pretx_txid}{&segwit}{&confirmation_target}{&exclude_utxos}{&inputs_set}{&return_psbt}{&return_only_data}{&extended_tx_info}{&old_style_api}{&verbose}{&show_unconfirmed}] Composes a transaction to detach assets from UTXO to an address. + Parameters - + utxo: `f48f32cde583a1233260e9d07c858726031b0aadb7550a061602ad6cffd5f3a7:1` (str, required) - The utxo from which the assets are detached - + destination: `bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj` (str, required) - The address to detach the assets to + + utxo: `ca11a87b6b09143626cafffbc32be68d26d43df5facbb48aa919ce857c1aa739:1` (str, required) - The utxo from which the assets are detached + + destination: `bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs` (str, required) - The address to detach the assets to + asset: `XCP` (str, required) - The asset or subasset to detach + quantity: `1000` (int, required) - The quantity of the asset to detach (in satoshis, hence integer) + encoding (str, optional) - The encoding method to use @@ -8874,33 +9227,37 @@ Composes a transaction to detach assets from UTXO to an address. + Default: `546` + multisig_dust_size (int, optional) - Specify (in satoshis) to override the (dust) amount of BTC used for each (bare) multisig output + Default: `1000` - + pubkey (str, optional) - The hexadecimal public key of the source address (or a list of the keys, if multi-sig). Required when using encoding parameter values of multisig or pubkeyhash. + + pubkeys (str, optional) - The hexadecimal public key of the source address (or a comma separated list of keys, if multi-sig). Required when using encoding parameter values of multisig or pubkeyhash. + Default: `None` + allow_unconfirmed_inputs (bool, optional) - Set to true to allow this transaction to utilize unconfirmed UTXOs as inputs + Default: `False` - + fee (int, optional) - If you'd like to specify a custom miners' fee, specify it here (in satoshis). Leave as default for the server to automatically choose + + exact_fee (int, optional) - If you'd like to specify a custom miners' fee, specify it here (in satoshis). Leave as default for the server to automatically choose + Default: `None` + fee_provided (int, optional) - If you would like to specify a maximum fee (up to and including which may be used as the transaction fee), specify it here (in satoshis). This differs from fee in that this is an upper bound value, which fee is an exact value + Default: `0` - + unspent_tx_hash (str, optional) - When compiling the UTXOs to use as inputs for the transaction being created, only consider unspent outputs from this specific transaction hash. Defaults to null to consider all UTXOs for the address. Do not use this parameter if you are specifying custom_inputs + + unspent_tx_hash (str, optional) - When compiling the UTXOs to use as inputs for the transaction being created, only consider unspent outputs from this specific transaction hash. Defaults to null to consider all UTXOs for the address. Do not use this parameter if you are specifying inputs_set + Default: `None` + dust_return_pubkey (str, optional) - The dust return pubkey is used in multi-sig data outputs (as the only real pubkey) to make those the outputs spendable. By default, this pubkey is taken from the pubkey used in the first transaction input. However, it can be overridden here (and is required to be specified if a P2SH input is used and multisig is used as the data output encoding.) If specified, specify the public key (in hex format) where dust will be returned to so that it can be reclaimed. Only valid/useful when used with transactions that utilize multisig data encoding. Note that if this value is set to false, this instructs counterparty-server to use the default dust return pubkey configured at the node level. If this default is not set at the node level, the call will generate an exception + Default: `None` + disable_utxo_locks (bool, optional) - By default, UTXOs utilized when creating a transaction are 'locked' for a few seconds, to prevent a case where rapidly generating create_ calls reuse UTXOs due to their spent status not being updated in bitcoind yet. Specify true for this parameter to disable this behavior, and not temporarily lock UTXOs + Default: `False` - + extended_tx_info (bool, optional) - When this is not specified or false, the create_ calls return only a hex-encoded string. If this is true, the create_ calls return a data object with the following keys: tx_hex, btc_in, btc_out, btc_change, and btc_fee - + Default: `False` + p2sh_pretx_txid (str, optional) - The previous transaction txid for a two part P2SH message. This txid must be taken from the signed transaction + Default: `None` + segwit (bool, optional) - Use segwit + Default: `False` + confirmation_target (int, optional) - The number of blocks to target for confirmation + Default: `3` - + return_psbt (bool, optional) - Construct a PSBT instead of a raw transaction hex - + Default: `False` + exclude_utxos (str, optional) - A comma-separated list of UTXO txids to exclude when selecting UTXOs to use as inputs for the transaction being created - + Default: `` - + return_only_data (bool, optional) - Return only the data part of the transaction + + Default: `None` + + inputs_set (str, optional) - A comma-separated list of UTXOs (`:`) to use as inputs for the transaction being created + + Default: `None` + + return_psbt (bool, optional) - (API v2 only) Construct a PSBT instead of a raw transaction hex + + Default: `False` + + return_only_data (bool, optional) - (API v2 only) Return only the data part of the transaction + + Default: `False` + + extended_tx_info (bool, optional) - (API v1 only) When this is not specified or false, the create_ calls return only a hex-encoded string. If this is true, the create_ calls return a data object with the following keys: tx_hex, btc_in, btc_out, btc_change, and btc_fee + + Default: `False` + + old_style_api (bool, optional) - (API v1 only) Returns a single hex-encoded string instead of an array + Default: `False` + verbose: `true` (bool, optional) - Include asset and dispenser info and normalized quantities in the response. + Default: `false` @@ -8912,10 +9269,9 @@ Composes a transaction to detach assets from UTXO to an address. ``` { "result": { - "rawtransaction": "02000000000101a7f3d5ff6cad0216060a55b7ad0a1b032687857cd0e9603223a183e5cd328ff4010000001600141811a7fe8c4732c201737549ba5dabb9e5ba8b76ffffffff04e80300000000000069512102d9e4e3e9266c080644ed9f64fec2af0f526747fd0c4bac4dddd10d11f9417b2f2102eb2503919a6e96ca62d48ebfdc837a09e9ba0e366a64d1c0e6b2e3405da3f1b2210305d4947b8fd51fc782076336b7006bffdd6e0ea462eb4be146901788a6ffdd1153aee80300000000000069512102d9e4e3e9266c080644e89d66a5c2fa59046511a90342fc008d814c57fe002ec22102bf2754919e6497c138d3cfeadbc72a41ffbc1920383cd086e0e4b00013feb4b9210305d4947b8fd51fc782076336b7006bffdd6e0ea462eb4be146901788a6ffdd1153aee80300000000000069512102f3e4e3e9266c080644f38a24a2c0f641694072b40548fd4cefe23e23cf711ea82102d24133a6f956a3f255e6b88fefb2183988db6a545d51e4f08782d5716b93c378210305d4947b8fd51fc782076336b7006bffdd6e0ea462eb4be146901788a6ffdd1153aee8980827010000001600141811a7fe8c4732c201737549ba5dabb9e5ba8b7602000000000000", "params": { - "source": "f48f32cde583a1233260e9d07c858726031b0aadb7550a061602ad6cffd5f3a7:1", - "destination": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "ca11a87b6b09143626cafffbc32be68d26d43df5facbb48aa919ce857c1aa739:1", + "destination": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "asset": "XCP", "quantity": 1000, "asset_info": { @@ -8927,7 +9283,20 @@ Composes a transaction to detach assets from UTXO to an address. }, "quantity_normalized": "0.00001000" }, - "name": "utxo" + "name": "utxo", + "data": "434e54525052545964636131316138376236623039313433363236636166666662633332626536386432366434336466356661636262343861613931396365383537633161613733393a317c626372743171306b666c3768356b36323467787134736e356d787a327a6161336c6636666174666e6b6668737c5843507c31303030", + "btc_in": 4949874900, + "btc_out": 3000, + "btc_change": 4949846467, + "btc_fee": 25433, + "rawtransaction": "0200000000010139a71a7c85ce19a98ab4cbfaf53dd4268de62bc3fbffca263614096b7ba811ca010000001600145b88e6da64ebeaa0be3554ef3959f4a53df33890ffffffff04e8030000000000006951210210d50c8daebda6b010603530418bc9a76f7f1e8360bc4e7c9fc05b65dec99e562103a06e744bbf2979e65a932731a4d6b2d4a2d82026289fe192ae066fadb0051a2a2102fdf9332096c9238549fc008b2487598d632d40766dc05d6b9ae7c8658e75ba9a53aee8030000000000006951210310d50c8daebda6b010673369458dcbae397c1fd269bf4e34ce951b278cd9c83a2103ad6e7a1fe42e70b55e9f247be386f589f3d36d3a7b86e291a95268faef5557552102fdf9332096c9238549fc008b2487598d632d40766dc05d6b9ae7c8658e75ba9a53aee803000000000000695121033ad50c8daebda6b01062383a16d2dbe3005e789d61b54f78acf66953bda8f8072103c60816288c1b1b836cab430392b286e7c6be154049fc83f09a3e0ecc893423e52102fdf9332096c9238549fc008b2487598d632d40766dc05d6b9ae7c8658e75ba9a53aec3a90827010000001600145b88e6da64ebeaa0be3554ef3959f4a53df3389002000000000000", + "unpacked_data": { + "message_type": "unknown", + "message_type_id": 67, + "message_data": { + "error": "Unknown message type" + } + } } } ``` @@ -8975,59 +9344,59 @@ Returns the valid assets "asset": "TESTLOCKDESC", "asset_id": "70403005118950974", "asset_longname": null, - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "owner": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "owner": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false, "supply": 10000000000, "description": "Test Locking Description", - "first_issuance_block_index": 156, - "last_issuance_block_index": 158, + "first_issuance_block_index": 157, + "last_issuance_block_index": 159, "confirmed": true, - "first_issuance_block_time": 1726509746, - "last_issuance_block_time": 1726509775, + "first_issuance_block_time": 1727200871, + "last_issuance_block_time": 1727200880, "supply_normalized": "100.00000000" }, { "asset": "MYASSETB", "asset_id": "103804245871", "asset_longname": null, - "issuer": "bcrt1qrqg60l5vguevyqtnw4ym5hdth8jm4zmk0fxn99", - "owner": "bcrt1qrqg60l5vguevyqtnw4ym5hdth8jm4zmk0fxn99", + "issuer": "bcrt1qtwywdknya042p0342nhnjk05557lxwysfw6vuj", + "owner": "bcrt1qtwywdknya042p0342nhnjk05557lxwysfw6vuj", "divisible": true, "locked": false, "supply": 100000000000, "description": "My super asset B", - "first_issuance_block_index": 155, - "last_issuance_block_index": 155, + "first_issuance_block_index": 156, + "last_issuance_block_index": 156, "confirmed": true, - "first_issuance_block_time": 1726509741, - "last_issuance_block_time": 1726509741, + "first_issuance_block_time": 1727200867, + "last_issuance_block_time": 1727200867, "supply_normalized": "1000.00000000" }, { "asset": "MYASSETA", "asset_id": "103804245870", "asset_longname": null, - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "owner": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "owner": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false, "supply": 100000000000, "description": "My super asset A", - "first_issuance_block_index": 147, - "last_issuance_block_index": 147, + "first_issuance_block_index": 148, + "last_issuance_block_index": 148, "confirmed": true, - "first_issuance_block_time": 1726509706, - "last_issuance_block_time": 1726509706, + "first_issuance_block_time": 1727200832, + "last_issuance_block_time": 1727200832, "supply_normalized": "1000.00000000" }, { "asset": "FAIRMINTD", "asset_id": "1046814266085", "asset_longname": "", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "owner": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "owner": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false, "supply": 40, @@ -9035,16 +9404,16 @@ Returns the valid assets "first_issuance_block_index": 135, "last_issuance_block_index": 136, "confirmed": true, - "first_issuance_block_time": 1726509644, - "last_issuance_block_time": 1726509648, + "first_issuance_block_time": 1727200777, + "last_issuance_block_time": 1727200781, "supply_normalized": "0.00000040" }, { "asset": "FAIRMINTC", "asset_id": "1046814266084", "asset_longname": "", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "owner": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "owner": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false, "supply": 19, @@ -9052,8 +9421,8 @@ Returns the valid assets "first_issuance_block_index": 131, "last_issuance_block_index": 134, "confirmed": true, - "first_issuance_block_time": 1726509617, - "last_issuance_block_time": 1726509639, + "first_issuance_block_time": 1727200760, + "last_issuance_block_time": 1727200773, "supply_normalized": "0.00000019" } ], @@ -9081,8 +9450,8 @@ Returns an asset by its name "asset": "FAIRMINTA", "asset_id": "1046814266082", "asset_longname": "", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "owner": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "owner": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false, "supply": 10000000000, @@ -9090,8 +9459,8 @@ Returns an asset by its name "first_issuance_block_index": 122, "last_issuance_block_index": 125, "confirmed": true, - "first_issuance_block_time": 1726509578, - "last_issuance_block_time": 1726509592, + "first_issuance_block_time": 1727200723, + "last_issuance_block_time": 1727200736, "supply_normalized": "100.00000000" } } @@ -9122,7 +9491,7 @@ Returns the asset balances { "result": [ { - "address": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "address": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "utxo": null, "utxo_address": null, "asset": "FAIRMINTA", @@ -9130,14 +9499,14 @@ Returns the asset balances "asset_info": { "asset_longname": "", "description": "", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, "quantity_normalized": "95.00000000" }, { - "address": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", + "address": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", "utxo": null, "utxo_address": null, "asset": "FAIRMINTA", @@ -9145,7 +9514,7 @@ Returns the asset balances "asset_info": { "asset_longname": "", "description": "", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, @@ -9157,13 +9526,13 @@ Returns the asset balances } ``` -### Get Balance By Address And Asset [GET /v2/assets/{asset}/balances/{address}{?verbose}{&show_unconfirmed}] +### Get Balance By Asset And Address [GET /v2/assets/{asset}/balances/{address}{?verbose}{&show_unconfirmed}] Returns the balance of an address and asset + Parameters - + address: `bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj` (str, required) - The address to return + asset: `XCP` (str, required) - The asset to return + + address: `bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs` (str, required) - The address to return + verbose: `true` (bool, optional) - Include asset and dispenser info and normalized quantities in the response. + Default: `false` + show_unconfirmed (bool, optional) - Include results from Mempool. @@ -9174,9 +9543,9 @@ Returns the balance of an address and asset ``` { "result": { - "address": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "address": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "asset": "XCP", - "quantity": 82699937176, + "quantity": 82699937196, "utxo": null, "utxo_address": null, "asset_info": { @@ -9191,7 +9560,7 @@ Returns the balance of an address and asset } ``` -### Get Orders By Asset [GET /v2/assets/{asset}/orders{?status}{&cursor}{&limit}{&offset}{&verbose}{&show_unconfirmed}] +### Get Orders By Asset [GET /v2/assets/{asset}/orders{?status}{&cursor}{&limit}{&offset}{&sort}{&verbose}{&show_unconfirmed}] Returns the orders of an asset @@ -9211,6 +9580,8 @@ Returns the orders of an asset + Default: `100` + offset (int, optional) - The number of lines to skip before returning results (overrides the `cursor` parameter) + Default: `None` + + sort: `expiration:desc` (str, optional) - The sort order of the orders to return (overrides the `cursor` parameter) + + Default: `None` + verbose: `true` (bool, optional) - Include asset and dispenser info and normalized quantities in the response. + Default: `false` + show_unconfirmed (bool, optional) - Include results from Mempool. @@ -9222,10 +9593,10 @@ Returns the orders of an asset { "result": [ { - "tx_index": 57, - "tx_hash": "7b7048040c893c69892bd088ce48db79b96b9c1d7221b50d903064ff5a1ed232", - "block_index": 191, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "tx_index": 48, + "tx_hash": "f90bb3520b4cd8e8f43ae4a416ea102f6a45a4cfd10b4620066271057abde926", + "block_index": 183, + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "give_asset": "XCP", "give_quantity": 1000, "give_remaining": 1000, @@ -9233,14 +9604,14 @@ Returns the orders of an asset "get_quantity": 1000, "get_remaining": 1000, "expiration": 21, - "expire_index": 212, + "expire_index": 182, "fee_required": 0, "fee_required_remaining": 0, "fee_provided": 10000, "fee_provided_remaining": 10000, - "status": "open", + "status": "expired", "confirmed": true, - "block_time": 1726509903, + "block_time": 1727200899, "give_asset_info": { "divisible": true, "asset_longname": null, @@ -9265,10 +9636,53 @@ Returns the orders of an asset "fee_provided_remaining_normalized": "0.00010000" }, { - "tx_index": 55, - "tx_hash": "5e324d551a694d3f6ffc9c67b3db8817d470ba32257047ddee237d3d07c1a1e2", - "block_index": 190, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "tx_index": 50, + "tx_hash": "4844c5f31805a95e25af849d3e888b41d4cba82846300010c82895f4072e57f6", + "block_index": 187, + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "give_asset": "XCP", + "give_quantity": 10000, + "give_remaining": 5000, + "get_asset": "BTC", + "get_quantity": 10000, + "get_remaining": 5000, + "expiration": 21, + "expire_index": 205, + "fee_required": 0, + "fee_required_remaining": 0, + "fee_provided": 10000, + "fee_provided_remaining": 10000, + "status": "open", + "confirmed": true, + "block_time": 1727200986, + "give_asset_info": { + "divisible": true, + "asset_longname": null, + "description": "The Counterparty protocol native currency", + "locked": true, + "issuer": null + }, + "get_asset_info": { + "divisible": true, + "asset_longname": null, + "description": "The Bitcoin cryptocurrency", + "locked": false, + "issuer": null + }, + "give_quantity_normalized": "0.00010000", + "get_quantity_normalized": "0.00010000", + "get_remaining_normalized": "0.00005000", + "give_remaining_normalized": "0.00005000", + "fee_provided_normalized": "0.00010000", + "fee_required_normalized": "0.00000000", + "fee_required_remaining_normalized": "0.00000000", + "fee_provided_remaining_normalized": "0.00010000" + }, + { + "tx_index": 56, + "tx_hash": "83919cf82dd5eb1e2e1f6d3f3f752d34d41636ed00ab8ff78369eb81475b8e57", + "block_index": 191, + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "give_asset": "XCP", "give_quantity": 1000, "give_remaining": 1000, @@ -9276,14 +9690,14 @@ Returns the orders of an asset "get_quantity": 1000, "get_remaining": 1000, "expiration": 21, - "expire_index": 210, + "expire_index": 211, "fee_required": 0, "fee_required_remaining": 0, "fee_provided": 10000, "fee_provided_remaining": 10000, "status": "cancelled", "confirmed": true, - "block_time": 1726509899, + "block_time": 1727201003, "give_asset_info": { "divisible": true, "asset_longname": null, @@ -9308,53 +9722,53 @@ Returns the orders of an asset "fee_provided_remaining_normalized": "0.00010000" }, { - "tx_index": 52, - "tx_hash": "d87f4afa605375256bce3dab7d014314a751d0d998cdc0842ac2dfc8c2fa2b21", - "block_index": 186, - "source": "bcrt1q3ds7n4l97tumdkgcr3vyhe04zaxce8ujr8fmr2", - "give_asset": "BTC", - "give_quantity": 3000, - "give_remaining": 0, - "get_asset": "XCP", - "get_quantity": 3000, - "get_remaining": 0, + "tx_index": 58, + "tx_hash": "132d67269995e3bc9e40d83bc0badefad56d85f0229eedfb0e2ccdf829d03d28", + "block_index": 192, + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "give_asset": "XCP", + "give_quantity": 1000, + "give_remaining": 1000, + "get_asset": "BTC", + "get_quantity": 1000, + "get_remaining": 1000, "expiration": 21, - "expire_index": 207, + "expire_index": 213, "fee_required": 0, "fee_required_remaining": 0, "fee_provided": 10000, "fee_provided_remaining": 10000, "status": "open", "confirmed": true, - "block_time": 1726509871, + "block_time": 1727201008, "give_asset_info": { "divisible": true, "asset_longname": null, - "description": "The Bitcoin cryptocurrency", - "locked": false, + "description": "The Counterparty protocol native currency", + "locked": true, "issuer": null }, "get_asset_info": { "divisible": true, "asset_longname": null, - "description": "The Counterparty protocol native currency", - "locked": true, + "description": "The Bitcoin cryptocurrency", + "locked": false, "issuer": null }, - "give_quantity_normalized": "0.00003000", - "get_quantity_normalized": "0.00003000", - "get_remaining_normalized": "0.00000000", - "give_remaining_normalized": "0.00000000", + "give_quantity_normalized": "0.00001000", + "get_quantity_normalized": "0.00001000", + "get_remaining_normalized": "0.00001000", + "give_remaining_normalized": "0.00001000", "fee_provided_normalized": "0.00010000", "fee_required_normalized": "0.00000000", "fee_required_remaining_normalized": "0.00000000", "fee_provided_remaining_normalized": "0.00010000" }, { - "tx_index": 50, - "tx_hash": "ebe20caac209f665277d0ac456ab451b4934a7d86529e24fd43b97535e62746a", - "block_index": 185, - "source": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", + "tx_index": 51, + "tx_hash": "e2f9612faf4a7e6249958ba9d24aaf9e3d7a70b0dafaa5fb94dc51a088e6cf63", + "block_index": 186, + "source": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", "give_asset": "BTC", "give_quantity": 2000, "give_remaining": 0, @@ -9362,14 +9776,14 @@ Returns the orders of an asset "get_quantity": 2000, "get_remaining": 0, "expiration": 21, - "expire_index": 205, + "expire_index": 206, "fee_required": 0, "fee_required_remaining": 0, "fee_provided": 10000, "fee_provided_remaining": 10000, "status": "filled", "confirmed": true, - "block_time": 1726509867, + "block_time": 1727200982, "give_asset_info": { "divisible": true, "asset_longname": null, @@ -9392,57 +9806,14 @@ Returns the orders of an asset "fee_required_normalized": "0.00000000", "fee_required_remaining_normalized": "0.00000000", "fee_provided_remaining_normalized": "0.00010000" - }, - { - "tx_index": 49, - "tx_hash": "675f8dccad4bdcf4b54ce5aca7ddc442f642d63e518d64ad6068a264fb9894e1", - "block_index": 186, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "give_asset": "XCP", - "give_quantity": 10000, - "give_remaining": 5000, - "get_asset": "BTC", - "get_quantity": 10000, - "get_remaining": 5000, - "expiration": 21, - "expire_index": 204, - "fee_required": 0, - "fee_required_remaining": 0, - "fee_provided": 10000, - "fee_provided_remaining": 10000, - "status": "open", - "confirmed": true, - "block_time": 1726509871, - "give_asset_info": { - "divisible": true, - "asset_longname": null, - "description": "The Counterparty protocol native currency", - "locked": true, - "issuer": null - }, - "get_asset_info": { - "divisible": true, - "asset_longname": null, - "description": "The Bitcoin cryptocurrency", - "locked": false, - "issuer": null - }, - "give_quantity_normalized": "0.00010000", - "get_quantity_normalized": "0.00010000", - "get_remaining_normalized": "0.00005000", - "give_remaining_normalized": "0.00005000", - "fee_provided_normalized": "0.00010000", - "fee_required_normalized": "0.00000000", - "fee_required_remaining_normalized": "0.00000000", - "fee_provided_remaining_normalized": "0.00010000" } ], - "next_cursor": 48, + "next_cursor": 53, "result_count": 7 } ``` -### Get Order Matches By Asset [GET /v2/assets/{asset}/matches{?status}{&cursor}{&limit}{&offset}{&verbose}{&show_unconfirmed}] +### Get Order Matches By Asset [GET /v2/assets/{asset}/matches{?status}{&cursor}{&limit}{&offset}{&sort}{&verbose}{&show_unconfirmed}] Returns the orders of an asset @@ -9461,6 +9832,8 @@ Returns the orders of an asset + Default: `100` + offset (int, optional) - The number of lines to skip before returning results (overrides the `cursor` parameter) + Default: `None` + + sort: `forward_quantity:desc` (str, optional) - The sort order of the order matches to return (overrides the `cursor` parameter) + + Default: `None` + verbose: `true` (bool, optional) - Include asset and dispenser info and normalized quantities in the response. + Default: `false` + show_unconfirmed (bool, optional) - Include results from Mempool. @@ -9472,27 +9845,27 @@ Returns the orders of an asset { "result": [ { - "id": "675f8dccad4bdcf4b54ce5aca7ddc442f642d63e518d64ad6068a264fb9894e1_d87f4afa605375256bce3dab7d014314a751d0d998cdc0842ac2dfc8c2fa2b21", - "tx0_index": 49, - "tx0_hash": "675f8dccad4bdcf4b54ce5aca7ddc442f642d63e518d64ad6068a264fb9894e1", - "tx0_address": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "tx1_index": 52, - "tx1_hash": "d87f4afa605375256bce3dab7d014314a751d0d998cdc0842ac2dfc8c2fa2b21", - "tx1_address": "bcrt1q3ds7n4l97tumdkgcr3vyhe04zaxce8ujr8fmr2", + "id": "4844c5f31805a95e25af849d3e888b41d4cba82846300010c82895f4072e57f6_467f7e82754021f4a8a7e07800c1785d2619004c75fd9200884f7aa4def7caa7", + "tx0_index": 50, + "tx0_hash": "4844c5f31805a95e25af849d3e888b41d4cba82846300010c82895f4072e57f6", + "tx0_address": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "tx1_index": 53, + "tx1_hash": "467f7e82754021f4a8a7e07800c1785d2619004c75fd9200884f7aa4def7caa7", + "tx1_address": "bcrt1q9cf2ed4wk37qye08wlppw39l7prxws7afa3krk", "forward_asset": "XCP", "forward_quantity": 3000, "backward_asset": "BTC", "backward_quantity": 3000, - "tx0_block_index": 184, - "tx1_block_index": 186, - "block_index": 186, + "tx0_block_index": 185, + "tx1_block_index": 187, + "block_index": 187, "tx0_expiration": 21, "tx1_expiration": 21, - "match_expire_index": 206, + "match_expire_index": 207, "fee_paid": 0, "status": "pending", "confirmed": true, - "block_time": 1726509871, + "block_time": 1727200986, "forward_asset_info": { "divisible": true, "asset_longname": null, @@ -9512,27 +9885,27 @@ Returns the orders of an asset "fee_paid_normalized": "0.00000000" }, { - "id": "675f8dccad4bdcf4b54ce5aca7ddc442f642d63e518d64ad6068a264fb9894e1_ebe20caac209f665277d0ac456ab451b4934a7d86529e24fd43b97535e62746a", - "tx0_index": 49, - "tx0_hash": "675f8dccad4bdcf4b54ce5aca7ddc442f642d63e518d64ad6068a264fb9894e1", - "tx0_address": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "tx1_index": 50, - "tx1_hash": "ebe20caac209f665277d0ac456ab451b4934a7d86529e24fd43b97535e62746a", - "tx1_address": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", + "id": "4844c5f31805a95e25af849d3e888b41d4cba82846300010c82895f4072e57f6_e2f9612faf4a7e6249958ba9d24aaf9e3d7a70b0dafaa5fb94dc51a088e6cf63", + "tx0_index": 50, + "tx0_hash": "4844c5f31805a95e25af849d3e888b41d4cba82846300010c82895f4072e57f6", + "tx0_address": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "tx1_index": 51, + "tx1_hash": "e2f9612faf4a7e6249958ba9d24aaf9e3d7a70b0dafaa5fb94dc51a088e6cf63", + "tx1_address": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", "forward_asset": "XCP", "forward_quantity": 2000, "backward_asset": "BTC", "backward_quantity": 2000, - "tx0_block_index": 183, - "tx1_block_index": 184, - "block_index": 185, + "tx0_block_index": 184, + "tx1_block_index": 185, + "block_index": 186, "tx0_expiration": 21, "tx1_expiration": 21, - "match_expire_index": 204, + "match_expire_index": 205, "fee_paid": 0, "status": "completed", "confirmed": true, - "block_time": 1726509867, + "block_time": 1727200982, "forward_asset_info": { "divisible": true, "asset_longname": null, @@ -9552,27 +9925,27 @@ Returns the orders of an asset "fee_paid_normalized": "0.00000000" }, { - "id": "e2263719273ed7cbb5496ae9daff21e24a2899e76feea1abbd4e91fa72766b5d_afd6eab5bb50283dc170ad276157e78db2dc90cb330d559320b9adc3721a1fbc", - "tx0_index": 47, - "tx0_hash": "e2263719273ed7cbb5496ae9daff21e24a2899e76feea1abbd4e91fa72766b5d", - "tx0_address": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "tx1_index": 48, - "tx1_hash": "afd6eab5bb50283dc170ad276157e78db2dc90cb330d559320b9adc3721a1fbc", - "tx1_address": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", + "id": "f90bb3520b4cd8e8f43ae4a416ea102f6a45a4cfd10b4620066271057abde926_3a7ea4dc466a608d47050ca02aa94f8d84ae9ea60b94dcf727b3e6eb8728e8d8", + "tx0_index": 48, + "tx0_hash": "f90bb3520b4cd8e8f43ae4a416ea102f6a45a4cfd10b4620066271057abde926", + "tx0_address": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "tx1_index": 49, + "tx1_hash": "3a7ea4dc466a608d47050ca02aa94f8d84ae9ea60b94dcf727b3e6eb8728e8d8", + "tx1_address": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", "forward_asset": "XCP", "forward_quantity": 1000, "backward_asset": "BTC", "backward_quantity": 1000, - "tx0_block_index": 160, - "tx1_block_index": 161, - "block_index": 182, + "tx0_block_index": 161, + "tx1_block_index": 162, + "block_index": 183, "tx0_expiration": 21, "tx1_expiration": 20, - "match_expire_index": 181, + "match_expire_index": 182, "fee_paid": 0, "status": "expired", "confirmed": true, - "block_time": 1726509796, + "block_time": 1727200899, "forward_asset_info": { "divisible": true, "asset_longname": null, @@ -9651,21 +10024,21 @@ Returns the credits of an asset { "result": [ { - "block_index": 192, - "address": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "block_index": 193, + "address": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "asset": "FAIRMINTA", "quantity": 500000000, "calling_function": "sweep", - "event": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", - "tx_index": 58, + "event": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", + "tx_index": 59, "utxo": null, "utxo_address": null, "confirmed": true, - "block_time": 1726509908, + "block_time": 1727201012, "asset_info": { "asset_longname": "", "description": "", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, @@ -9673,20 +10046,20 @@ Returns the credits of an asset }, { "block_index": 125, - "address": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "address": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "asset": "FAIRMINTA", "quantity": 9000000000, "calling_function": "fairmint", - "event": "60c597d6868e45719209ae17a0338cb00c81d5d64d82363d6dc68744ecf36351", + "event": "0690942f2dfd840ad6ff6b5cfd4f06d86e77dbce303980758bd99ac034e4d803", "tx_index": 13, "utxo": null, "utxo_address": null, "confirmed": true, - "block_time": 1726509592, + "block_time": 1727200736, "asset_info": { "asset_longname": "", "description": "", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, @@ -9694,20 +10067,20 @@ Returns the credits of an asset }, { "block_index": 124, - "address": "bcrt1q3ds7n4l97tumdkgcr3vyhe04zaxce8ujr8fmr2", + "address": "bcrt1q9cf2ed4wk37qye08wlppw39l7prxws7afa3krk", "asset": "FAIRMINTA", "quantity": 500000000, "calling_function": "unescrowed fairmint", - "event": "efce747367cf4f6f269d55f239087910bc90dcb738205d57146a4a5b537dad17", + "event": "c7de2f976583158832e195c5e06c91be234ea8f11f3dec44a14e41ee44e25238", "tx_index": 12, "utxo": null, "utxo_address": null, "confirmed": true, - "block_time": 1726509587, + "block_time": 1727200732, "asset_info": { "asset_longname": "", "description": "", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, @@ -9715,20 +10088,20 @@ Returns the credits of an asset }, { "block_index": 124, - "address": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", + "address": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", "asset": "FAIRMINTA", "quantity": 500000000, "calling_function": "unescrowed fairmint", - "event": "320ca07cfa5b9233bd809064f5facf416651c9b1f8a8d06a1ebc57a17a01436c", + "event": "5a391ff7c4ab9f62237b4734451c3765753c6424c9d0cded3325f895e75ff06f", "tx_index": 11, "utxo": null, "utxo_address": null, "confirmed": true, - "block_time": 1726509587, + "block_time": 1727200732, "asset_info": { "asset_longname": "", "description": "", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, @@ -9740,16 +10113,16 @@ Returns the credits of an asset "asset": "FAIRMINTA", "quantity": 500000000, "calling_function": "escrowed fairmint", - "event": "efce747367cf4f6f269d55f239087910bc90dcb738205d57146a4a5b537dad17", + "event": "c7de2f976583158832e195c5e06c91be234ea8f11f3dec44a14e41ee44e25238", "tx_index": 12, "utxo": null, "utxo_address": null, "confirmed": true, - "block_time": 1726509587, + "block_time": 1727200732, "asset_info": { "asset_longname": "", "description": "", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, @@ -9804,17 +10177,17 @@ Returns the debits of an asset { "result": [ { - "block_index": 193, - "address": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "block_index": 194, + "address": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "asset": "XCP", "quantity": 1, "action": "destroy", - "event": "f79c39d2a2896a86ef0bb2370101c664b69f2b9387afcd377d8226b839d419ce", - "tx_index": 59, + "event": "da0a0e76bfc982e2bbed2679a71f4e2d3ebc01140b448f430bb01b50f7ceaabb", + "tx_index": 60, "utxo": null, "utxo_address": null, "confirmed": true, - "block_time": 1726509912, + "block_time": 1727201016, "asset_info": { "divisible": true, "asset_longname": null, @@ -9825,17 +10198,17 @@ Returns the debits of an asset "quantity_normalized": "0.00000001" }, { - "block_index": 192, - "address": "bcrt1q3ds7n4l97tumdkgcr3vyhe04zaxce8ujr8fmr2", + "block_index": 193, + "address": "bcrt1q9cf2ed4wk37qye08wlppw39l7prxws7afa3krk", "asset": "XCP", "quantity": 74499387833, "action": "sweep", - "event": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", - "tx_index": 58, + "event": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", + "tx_index": 59, "utxo": null, "utxo_address": null, "confirmed": true, - "block_time": 1726509908, + "block_time": 1727201012, "asset_info": { "divisible": true, "asset_longname": null, @@ -9846,17 +10219,17 @@ Returns the debits of an asset "quantity_normalized": "744.99388000" }, { - "block_index": 192, - "address": "bcrt1q3ds7n4l97tumdkgcr3vyhe04zaxce8ujr8fmr2", + "block_index": 193, + "address": "bcrt1q9cf2ed4wk37qye08wlppw39l7prxws7afa3krk", "asset": "XCP", "quantity": 600000, "action": "sweep fee", - "event": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", - "tx_index": 58, + "event": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", + "tx_index": 59, "utxo": null, "utxo_address": null, "confirmed": true, - "block_time": 1726509908, + "block_time": 1727201012, "asset_info": { "divisible": true, "asset_longname": null, @@ -9867,17 +10240,17 @@ Returns the debits of an asset "quantity_normalized": "0.00600000" }, { - "block_index": 191, - "address": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "block_index": 192, + "address": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "asset": "XCP", "quantity": 1000, "action": "open order", - "event": "7b7048040c893c69892bd088ce48db79b96b9c1d7221b50d903064ff5a1ed232", - "tx_index": 57, + "event": "132d67269995e3bc9e40d83bc0badefad56d85f0229eedfb0e2ccdf829d03d28", + "tx_index": 58, "utxo": null, "utxo_address": null, "confirmed": true, - "block_time": 1726509903, + "block_time": 1727201008, "asset_info": { "divisible": true, "asset_longname": null, @@ -9888,17 +10261,17 @@ Returns the debits of an asset "quantity_normalized": "0.00001000" }, { - "block_index": 189, - "address": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "block_index": 190, + "address": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "asset": "XCP", "quantity": 1000, "action": "open order", - "event": "5e324d551a694d3f6ffc9c67b3db8817d470ba32257047ddee237d3d07c1a1e2", - "tx_index": 55, + "event": "83919cf82dd5eb1e2e1f6d3f3f752d34d41636ed00ab8ff78369eb81475b8e57", + "tx_index": 56, "utxo": null, "utxo_address": null, "confirmed": true, - "block_time": 1726509894, + "block_time": 1727200999, "asset_info": { "divisible": true, "asset_longname": null, @@ -9937,21 +10310,21 @@ Returns the dividends of an asset { "result": [ { - "tx_index": 40, - "tx_hash": "65e4ec441796883270c7bb0f18ca610e54b1ad0b3ae8a33e572bca985f65ee00", - "block_index": 153, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "tx_index": 41, + "tx_hash": "1b9303b3959067c0857fe1abb4fdd4b3684c7534c12691382004cc31a9afcca4", + "block_index": 154, + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "asset": "MYASSETA", "dividend_asset": "XCP", "quantity_per_unit": 100000000, "fee_paid": 40000, "status": "valid", "confirmed": true, - "block_time": 1726509732, + "block_time": 1727200857, "asset_info": { "asset_longname": null, "description": "My super asset A", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, @@ -9995,14 +10368,14 @@ Returns the issuances of an asset "result": [ { "tx_index": 13, - "tx_hash": "60c597d6868e45719209ae17a0338cb00c81d5d64d82363d6dc68744ecf36351", + "tx_hash": "0690942f2dfd840ad6ff6b5cfd4f06d86e77dbce303980758bd99ac034e4d803", "msg_index": 0, "block_index": 125, "asset": "FAIRMINTA", "quantity": 9000000000, "divisible": true, - "source": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "transfer": false, "callable": false, "call_date": 0, @@ -10017,20 +10390,20 @@ Returns the issuances of an asset "fair_minting": false, "asset_events": "fairmint", "confirmed": true, - "block_time": 1726509592, + "block_time": 1727200736, "quantity_normalized": "90.00000000", "fee_paid_normalized": "0.00000000" }, { "tx_index": 12, - "tx_hash": "efce747367cf4f6f269d55f239087910bc90dcb738205d57146a4a5b537dad17", + "tx_hash": "c7de2f976583158832e195c5e06c91be234ea8f11f3dec44a14e41ee44e25238", "msg_index": 0, "block_index": 124, "asset": "FAIRMINTA", "quantity": 500000000, "divisible": true, - "source": "bcrt1q3ds7n4l97tumdkgcr3vyhe04zaxce8ujr8fmr2", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q9cf2ed4wk37qye08wlppw39l7prxws7afa3krk", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "transfer": false, "callable": false, "call_date": 0, @@ -10045,20 +10418,20 @@ Returns the issuances of an asset "fair_minting": true, "asset_events": "fairmint", "confirmed": true, - "block_time": 1726509587, + "block_time": 1727200732, "quantity_normalized": "5.00000000", "fee_paid_normalized": "0.00000000" }, { "tx_index": 11, - "tx_hash": "320ca07cfa5b9233bd809064f5facf416651c9b1f8a8d06a1ebc57a17a01436c", + "tx_hash": "5a391ff7c4ab9f62237b4734451c3765753c6424c9d0cded3325f895e75ff06f", "msg_index": 0, "block_index": 123, "asset": "FAIRMINTA", "quantity": 500000000, "divisible": true, - "source": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "transfer": false, "callable": false, "call_date": 0, @@ -10073,20 +10446,20 @@ Returns the issuances of an asset "fair_minting": true, "asset_events": "fairmint", "confirmed": true, - "block_time": 1726509583, + "block_time": 1727200727, "quantity_normalized": "5.00000000", "fee_paid_normalized": "0.00000000" }, { "tx_index": 10, - "tx_hash": "7ae7bb5d540de02fd2b97d7234b6c87c925d0b6b3eac5a55e5ced650ce49eed1", + "tx_hash": "15f8f2368ab00936a53063e0f92508f82a1d6018e7495426e7dc81fc02f6d6f1", "msg_index": 0, "block_index": 122, "asset": "FAIRMINTA", "quantity": 0, "divisible": true, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "transfer": false, "callable": false, "call_date": 0, @@ -10101,7 +10474,7 @@ Returns the issuances of an asset "fair_minting": true, "asset_events": "open_fairminter", "confirmed": true, - "block_time": 1726509578, + "block_time": 1727200723, "quantity_normalized": "0.00000000", "fee_paid_normalized": "0.50000000" } @@ -10134,11 +10507,11 @@ Returns the sends, include Enhanced and MPMA sends, of an asset { "result": [ { - "tx_index": 54, - "tx_hash": "e8fda956958ed7de0a98e42d8d28349b9c7b5e20da375c185c5830526df6594f", - "block_index": 188, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "destination": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", + "tx_index": 55, + "tx_hash": "4cd813fae2558e89f2f9411f38daa7d4c10c94a267daa38155cf18fb4d9fd055", + "block_index": 189, + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "destination": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", "asset": "XCP", "quantity": 10, "status": "valid", @@ -10146,7 +10519,7 @@ Returns the sends, include Enhanced and MPMA sends, of an asset "memo": null, "fee_paid": 0, "confirmed": true, - "block_time": 1726509890, + "block_time": 1727200995, "asset_info": { "divisible": true, "asset_longname": null, @@ -10158,11 +10531,11 @@ Returns the sends, include Enhanced and MPMA sends, of an asset "fee_paid_normalized": "0.00000000" }, { - "tx_index": 53, - "tx_hash": "f96235259f9722ca1558a6601a39e235c6a60fa33d67cc9e5039890d0ab2fe03", - "block_index": 187, - "source": "bcrt1q3ds7n4l97tumdkgcr3vyhe04zaxce8ujr8fmr2", - "destination": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "tx_index": 54, + "tx_hash": "e7989369eefaec09cec5770c6128eb548023225e666d57bbed74b3d03240e9c3", + "block_index": 188, + "source": "bcrt1q9cf2ed4wk37qye08wlppw39l7prxws7afa3krk", + "destination": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "asset": "XCP", "quantity": 10000, "status": "valid", @@ -10170,7 +10543,7 @@ Returns the sends, include Enhanced and MPMA sends, of an asset "memo": null, "fee_paid": 0, "confirmed": true, - "block_time": 1726509886, + "block_time": 1727200991, "asset_info": { "divisible": true, "asset_longname": null, @@ -10182,11 +10555,11 @@ Returns the sends, include Enhanced and MPMA sends, of an asset "fee_paid_normalized": "0.00000000" }, { - "tx_index": 42, - "tx_hash": "f48f32cde583a1233260e9d07c858726031b0aadb7550a061602ad6cffd5f3a7", - "block_index": 155, - "source": "3f0027dbe860c95e4cea6d1c83db0d8ea3acf7adbeacefd7e8eb56e9399d879b:0", - "destination": "f48f32cde583a1233260e9d07c858726031b0aadb7550a061602ad6cffd5f3a7:1", + "tx_index": 43, + "tx_hash": "ca11a87b6b09143626cafffbc32be68d26d43df5facbb48aa919ce857c1aa739", + "block_index": 156, + "source": "9d347b5453e8bf2608768d2b109367ce3aaf5a12d4bc63526fa6fb59eab1901d:0", + "destination": "ca11a87b6b09143626cafffbc32be68d26d43df5facbb48aa919ce857c1aa739:1", "asset": "XCP", "quantity": 1500000000, "status": "valid", @@ -10194,7 +10567,7 @@ Returns the sends, include Enhanced and MPMA sends, of an asset "memo": null, "fee_paid": 0, "confirmed": true, - "block_time": 1726509741, + "block_time": 1727200867, "asset_info": { "divisible": true, "asset_longname": null, @@ -10206,11 +10579,11 @@ Returns the sends, include Enhanced and MPMA sends, of an asset "fee_paid_normalized": "0.00000000" }, { - "tx_index": 41, - "tx_hash": "3f0027dbe860c95e4cea6d1c83db0d8ea3acf7adbeacefd7e8eb56e9399d879b", - "block_index": 154, - "source": "9d34a868637906281a292d50facdb8551872a2d08cd28cf7a895f10f80cb0b32:0", - "destination": "3f0027dbe860c95e4cea6d1c83db0d8ea3acf7adbeacefd7e8eb56e9399d879b:0", + "tx_index": 42, + "tx_hash": "9d347b5453e8bf2608768d2b109367ce3aaf5a12d4bc63526fa6fb59eab1901d", + "block_index": 155, + "source": "99ac4db802d5262ae35de8b542d298d4a28719ccffb6ffd8d462f40e8435bdd8:0", + "destination": "9d347b5453e8bf2608768d2b109367ce3aaf5a12d4bc63526fa6fb59eab1901d:0", "asset": "XCP", "quantity": 1500000000, "status": "valid", @@ -10218,7 +10591,7 @@ Returns the sends, include Enhanced and MPMA sends, of an asset "memo": null, "fee_paid": 0, "confirmed": true, - "block_time": 1726509735, + "block_time": 1727200861, "asset_info": { "divisible": true, "asset_longname": null, @@ -10235,7 +10608,7 @@ Returns the sends, include Enhanced and MPMA sends, of an asset } ``` -### Get Dispensers By Asset [GET /v2/assets/{asset}/dispensers{?status}{&cursor}{&limit}{&offset}{&verbose}{&show_unconfirmed}] +### Get Dispensers By Asset [GET /v2/assets/{asset}/dispensers{?status}{&cursor}{&limit}{&offset}{&sort}{&verbose}{&show_unconfirmed}] Returns the dispensers of an asset @@ -10255,6 +10628,8 @@ Returns the dispensers of an asset + Default: `100` + offset (int, optional) - The number of lines to skip before returning results (overrides the `cursor` parameter) + Default: `None` + + sort: `give_quantity:desc` (str, optional) - The sort order of the dispensers to return (overrides the `cursor` parameter) + + Default: `None` + verbose: `true` (bool, optional) - Include asset and dispenser info and normalized quantities in the response. + Default: `false` + show_unconfirmed (bool, optional) - Include results from Mempool. @@ -10266,29 +10641,29 @@ Returns the dispensers of an asset { "result": [ { - "tx_index": 32, - "tx_hash": "5c8374a3882f222038bbf9a0cce7589e84b790915b9228d66af1a5b0eb61ea2d", - "block_index": 146, - "source": "bcrt1qlm44vh2ynrtqwh8j2mptwrzzfd04czsya4wxcd", + "tx_index": 26, + "tx_hash": "3df6d90991175a0c2aabbe0dc87cacd5d92c90cb996ce5b1514492f2585c61fc", + "block_index": 141, + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "asset": "XCP", "give_quantity": 1, "escrow_quantity": 10000, "satoshirate": 1, - "status": 0, - "give_remaining": 9334, - "oracle_address": "bcrt1qlm44vh2ynrtqwh8j2mptwrzzfd04czsya4wxcd", + "status": 10, + "give_remaining": 0, + "oracle_address": null, "last_status_tx_hash": null, - "origin": "bcrt1qlm44vh2ynrtqwh8j2mptwrzzfd04czsya4wxcd", - "dispense_count": 1, + "origin": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "dispense_count": 2, "last_status_tx_source": null, "close_block_index": null, "confirmed": true, - "fiat_price": 0.01, - "oracle_price": 66600.0, - "fiat_unit": "USD", - "oracle_price_last_updated": 138, - "satoshi_price": 16, - "block_time": 1726509701, + "fiat_price": null, + "oracle_price": null, + "fiat_unit": null, + "oracle_price_last_updated": null, + "satoshi_price": 1, + "block_time": 1727200803, "asset_info": { "divisible": true, "asset_longname": null, @@ -10297,25 +10672,25 @@ Returns the dispensers of an asset "issuer": null }, "give_quantity_normalized": "0.00000001", - "give_remaining_normalized": "0.00009334", + "give_remaining_normalized": "0.00000000", "escrow_quantity_normalized": "0.00010000", "satoshirate_normalized": "0.00000001", - "satoshi_price_normalized": "0.00000016" + "satoshi_price_normalized": "0.00000001" }, { - "tx_index": 30, - "tx_hash": "d3713f7f4355cf95ddb00030d4c53655897b901d6827b640ee27cc83efaba2e6", - "block_index": 144, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "tx_index": 29, + "tx_hash": "aa785aa095076658df4575becc62c26d1e549a540599459cf332e9f44ae51019", + "block_index": 142, + "source": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "asset": "XCP", "give_quantity": 1, - "escrow_quantity": 10, + "escrow_quantity": 10000, "satoshirate": 1, "status": 0, - "give_remaining": 20, + "give_remaining": 10000, "oracle_address": null, "last_status_tx_hash": null, - "origin": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "origin": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "dispense_count": 0, "last_status_tx_source": null, "close_block_index": null, @@ -10325,7 +10700,7 @@ Returns the dispensers of an asset "fiat_unit": null, "oracle_price_last_updated": null, "satoshi_price": 1, - "block_time": 1726509693, + "block_time": 1727200806, "asset_info": { "divisible": true, "asset_longname": null, @@ -10334,35 +10709,35 @@ Returns the dispensers of an asset "issuer": null }, "give_quantity_normalized": "0.00000001", - "give_remaining_normalized": "0.00000020", - "escrow_quantity_normalized": "0.00000010", + "give_remaining_normalized": "0.00010000", + "escrow_quantity_normalized": "0.00010000", "satoshirate_normalized": "0.00000001", "satoshi_price_normalized": "0.00000001" }, { - "tx_index": 29, - "tx_hash": "ee65a85736487849d0d1ac06ea09424e477194edd27c7c31afbe06f4fbb6142c", - "block_index": 142, - "source": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "tx_index": 30, + "tx_hash": "e6a18e565cab14aec4ba641f48a311c8643793f8fa84b25141ced517eaefc6f9", + "block_index": 150, + "source": "mtFzzdWHLZqWVVMGKENQscisyMTejQamk6", "asset": "XCP", "give_quantity": 1, - "escrow_quantity": 10000, + "escrow_quantity": 10, "satoshirate": 1, - "status": 0, - "give_remaining": 10000, + "status": 10, + "give_remaining": 0, "oracle_address": null, - "last_status_tx_hash": null, - "origin": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "last_status_tx_hash": "d2fb8bc72b0250cee9a35d9f657f0d4eb12286a93b930f502d166903f57fafb9", + "origin": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "dispense_count": 0, - "last_status_tx_source": null, - "close_block_index": null, + "last_status_tx_source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "close_block_index": "150", "confirmed": true, "fiat_price": null, "oracle_price": null, "fiat_unit": null, "oracle_price_last_updated": null, "satoshi_price": 1, - "block_time": 1726509684, + "block_time": 1727200840, "asset_info": { "divisible": true, "asset_longname": null, @@ -10371,35 +10746,35 @@ Returns the dispensers of an asset "issuer": null }, "give_quantity_normalized": "0.00000001", - "give_remaining_normalized": "0.00010000", - "escrow_quantity_normalized": "0.00010000", + "give_remaining_normalized": "0.00000000", + "escrow_quantity_normalized": "0.00000010", "satoshirate_normalized": "0.00000001", "satoshi_price_normalized": "0.00000001" }, { - "tx_index": 26, - "tx_hash": "e4fcdf91df3b0bbacb56d49f65bba5e59c88e92c829d7c8b3f251d5e20457f4e", - "block_index": 141, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "tx_index": 33, + "tx_hash": "1e7bea513de78cabf444b974fdb0efb4304b18bd990a889d7a0f8b0e3d21b6ea", + "block_index": 147, + "source": "bcrt1qeshrsce6vyx833j2p85aesnx0aj9sxjtt79jak", "asset": "XCP", "give_quantity": 1, "escrow_quantity": 10000, "satoshirate": 1, - "status": 10, - "give_remaining": 0, - "oracle_address": null, + "status": 0, + "give_remaining": 9334, + "oracle_address": "bcrt1qeshrsce6vyx833j2p85aesnx0aj9sxjtt79jak", "last_status_tx_hash": null, - "origin": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "dispense_count": 2, + "origin": "bcrt1qeshrsce6vyx833j2p85aesnx0aj9sxjtt79jak", + "dispense_count": 1, "last_status_tx_source": null, "close_block_index": null, "confirmed": true, - "fiat_price": null, - "oracle_price": null, - "fiat_unit": null, - "oracle_price_last_updated": null, - "satoshi_price": 1, - "block_time": 1726509680, + "fiat_price": 0.01, + "oracle_price": 66600.0, + "fiat_unit": "USD", + "oracle_price_last_updated": 138, + "satoshi_price": 16, + "block_time": 1727200827, "asset_info": { "divisible": true, "asset_longname": null, @@ -10408,10 +10783,10 @@ Returns the dispensers of an asset "issuer": null }, "give_quantity_normalized": "0.00000001", - "give_remaining_normalized": "0.00000000", + "give_remaining_normalized": "0.00009334", "escrow_quantity_normalized": "0.00010000", "satoshirate_normalized": "0.00000001", - "satoshi_price_normalized": "0.00000001" + "satoshi_price_normalized": "0.00000016" } ], "next_cursor": null, @@ -10424,7 +10799,7 @@ Returns the dispensers of an asset Returns the dispenser of an address and an asset + Parameters - + address: `bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj` (str, required) - The address to return + + address: `bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs` (str, required) - The address to return + asset: `XCP` (str, required) - The asset to return + verbose: `true` (bool, optional) - Include asset and dispenser info and normalized quantities in the response. + Default: `false` @@ -10436,20 +10811,20 @@ Returns the dispenser of an address and an asset ``` { "result": { - "tx_index": 30, - "tx_hash": "d3713f7f4355cf95ddb00030d4c53655897b901d6827b640ee27cc83efaba2e6", - "block_index": 144, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "tx_index": 26, + "tx_hash": "3df6d90991175a0c2aabbe0dc87cacd5d92c90cb996ce5b1514492f2585c61fc", + "block_index": 141, + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "asset": "XCP", "give_quantity": 1, - "escrow_quantity": 10, + "escrow_quantity": 10000, "satoshirate": 1, - "status": 0, - "give_remaining": 20, + "status": 10, + "give_remaining": 0, "oracle_address": null, "last_status_tx_hash": null, - "origin": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "dispense_count": 0, + "origin": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "dispense_count": 2, "last_status_tx_source": null, "close_block_index": null, "confirmed": true, @@ -10458,7 +10833,7 @@ Returns the dispenser of an address and an asset "fiat_unit": null, "oracle_price_last_updated": null, "satoshi_price": 1, - "block_time": 1726509693, + "block_time": 1727200803, "asset_info": { "divisible": true, "asset_longname": null, @@ -10467,8 +10842,8 @@ Returns the dispenser of an address and an asset "issuer": null }, "give_quantity_normalized": "0.00000001", - "give_remaining_normalized": "0.00000020", - "escrow_quantity_normalized": "0.00000010", + "give_remaining_normalized": "0.00000000", + "escrow_quantity_normalized": "0.00010000", "satoshirate_normalized": "0.00000001", "satoshi_price_normalized": "0.00000001" } @@ -10508,7 +10883,7 @@ Returns the holders of an asset "asset_info": { "asset_longname": "", "description": "", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, @@ -10516,7 +10891,7 @@ Returns the holders of an asset }, { "asset": "FAIRMINTA", - "address": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", + "address": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", "quantity": 500000000, "escrow": null, "cursor_id": "balances_13", @@ -10525,7 +10900,7 @@ Returns the holders of an asset "asset_info": { "asset_longname": "", "description": "", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, @@ -10533,7 +10908,7 @@ Returns the holders of an asset }, { "asset": "FAIRMINTA", - "address": "bcrt1q3ds7n4l97tumdkgcr3vyhe04zaxce8ujr8fmr2", + "address": "bcrt1q9cf2ed4wk37qye08wlppw39l7prxws7afa3krk", "quantity": 0, "escrow": null, "cursor_id": "balances_14", @@ -10542,7 +10917,7 @@ Returns the holders of an asset "asset_info": { "asset_longname": "", "description": "", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, @@ -10550,7 +10925,7 @@ Returns the holders of an asset }, { "asset": "FAIRMINTA", - "address": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "address": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "quantity": 9500000000, "escrow": null, "cursor_id": "balances_15", @@ -10559,7 +10934,7 @@ Returns the holders of an asset "asset_info": { "asset_longname": "", "description": "", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, @@ -10594,29 +10969,29 @@ Returns the dispenses of an asset { "result": [ { - "tx_index": 33, + "tx_index": 34, "dispense_index": 0, - "tx_hash": "516159be9547a87a0ab0ce652ce9daebb10796eb67509fa50780dca28d813535", - "block_index": 146, - "source": "bcrt1qlm44vh2ynrtqwh8j2mptwrzzfd04czsya4wxcd", - "destination": "bcrt1qlqcrlvw5t7cnj8r9hjl0qq67c2fyk5kvfra90p", + "tx_hash": "6b21482e6e461d42ded8e74826ff88a8b23621baaa45e714c7c2a20457bd6c12", + "block_index": 147, + "source": "bcrt1qeshrsce6vyx833j2p85aesnx0aj9sxjtt79jak", + "destination": "bcrt1qfvucymcd7u04hpd7eafsmxwnashcmaqs54q79p", "asset": "XCP", "dispense_quantity": 666, - "dispenser_tx_hash": "5c8374a3882f222038bbf9a0cce7589e84b790915b9228d66af1a5b0eb61ea2d", + "dispenser_tx_hash": "1e7bea513de78cabf444b974fdb0efb4304b18bd990a889d7a0f8b0e3d21b6ea", "btc_amount": 10000, "confirmed": true, "dispenser": { - "tx_index": 32, - "block_index": 146, - "source": "bcrt1qlm44vh2ynrtqwh8j2mptwrzzfd04czsya4wxcd", + "tx_index": 33, + "block_index": 147, + "source": "bcrt1qeshrsce6vyx833j2p85aesnx0aj9sxjtt79jak", "give_quantity": 1, "escrow_quantity": 10000, "satoshirate": 1, "status": 0, "give_remaining": 9334, - "oracle_address": "bcrt1qlm44vh2ynrtqwh8j2mptwrzzfd04czsya4wxcd", + "oracle_address": "bcrt1qeshrsce6vyx833j2p85aesnx0aj9sxjtt79jak", "last_status_tx_hash": null, - "origin": "bcrt1qlm44vh2ynrtqwh8j2mptwrzzfd04czsya4wxcd", + "origin": "bcrt1qeshrsce6vyx833j2p85aesnx0aj9sxjtt79jak", "dispense_count": 1, "last_status_tx_source": null, "close_block_index": null, @@ -10631,7 +11006,7 @@ Returns the dispenses of an asset "satoshirate_normalized": "0.00000001", "satoshi_price_normalized": "0.00000016" }, - "block_time": 1726509701, + "block_time": 1727200827, "asset_info": { "divisible": true, "asset_longname": null, @@ -10645,19 +11020,19 @@ Returns the dispenses of an asset { "tx_index": 28, "dispense_index": 0, - "tx_hash": "ab0fd3f5a4ce7ef637dfa113da8a1d7ca7f9b7b8ef7bea07721c55ef2aee9d2f", + "tx_hash": "6ae257db1a77e44eb808057e9944b6f6e15eebf699db2c77f3009100a550b7fa", "block_index": 141, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "destination": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "destination": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", "asset": "XCP", "dispense_quantity": 4000, - "dispenser_tx_hash": "e4fcdf91df3b0bbacb56d49f65bba5e59c88e92c829d7c8b3f251d5e20457f4e", + "dispenser_tx_hash": "3df6d90991175a0c2aabbe0dc87cacd5d92c90cb996ce5b1514492f2585c61fc", "btc_amount": 4000, "confirmed": true, "dispenser": { "tx_index": 26, "block_index": 141, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "give_quantity": 1, "escrow_quantity": 10000, "satoshirate": 1, @@ -10665,7 +11040,7 @@ Returns the dispenses of an asset "give_remaining": 0, "oracle_address": null, "last_status_tx_hash": null, - "origin": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "origin": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "dispense_count": 2, "last_status_tx_source": null, "close_block_index": null, @@ -10680,7 +11055,7 @@ Returns the dispenses of an asset "satoshirate_normalized": "0.00000001", "satoshi_price_normalized": "0.00000001" }, - "block_time": 1726509680, + "block_time": 1727200803, "asset_info": { "divisible": true, "asset_longname": null, @@ -10694,19 +11069,19 @@ Returns the dispenses of an asset { "tx_index": 27, "dispense_index": 0, - "tx_hash": "54eee03a80a18a6e816f27408ce071f7c7fefac72abc8ade14e835ad5f1563ce", + "tx_hash": "2a07cfa93bced14f59b80e10872f5fe4a406622078c0b85295c5c4149820d102", "block_index": 140, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "destination": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "destination": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", "asset": "XCP", "dispense_quantity": 6000, - "dispenser_tx_hash": "e4fcdf91df3b0bbacb56d49f65bba5e59c88e92c829d7c8b3f251d5e20457f4e", + "dispenser_tx_hash": "3df6d90991175a0c2aabbe0dc87cacd5d92c90cb996ce5b1514492f2585c61fc", "btc_amount": 6000, "confirmed": true, "dispenser": { "tx_index": 26, "block_index": 141, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "give_quantity": 1, "escrow_quantity": 10000, "satoshirate": 1, @@ -10714,7 +11089,7 @@ Returns the dispenses of an asset "give_remaining": 0, "oracle_address": null, "last_status_tx_hash": null, - "origin": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "origin": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "dispense_count": 2, "last_status_tx_source": null, "close_block_index": null, @@ -10729,7 +11104,7 @@ Returns the dispenses of an asset "satoshirate_normalized": "0.00000001", "satoshi_price_normalized": "0.00000001" }, - "block_time": 1726509665, + "block_time": 1727200798, "asset_info": { "divisible": true, "asset_longname": null, @@ -10772,17 +11147,17 @@ Returns asset subassets "asset": "A95428959745315388", "asset_id": "95428959745315388", "asset_longname": "TESTLOCKDESC.MYSUBASSET", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "owner": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "owner": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false, "supply": 0, "description": "Test Locking Description", - "first_issuance_block_index": 157, - "last_issuance_block_index": 157, + "first_issuance_block_index": 158, + "last_issuance_block_index": 158, "confirmed": true, - "first_issuance_block_time": 1726509760, - "last_issuance_block_time": 1726509760, + "first_issuance_block_time": 1727200875, + "last_issuance_block_time": 1727200875, "supply_normalized": "0.00000000" } ], @@ -10814,10 +11189,10 @@ Returns the fairminter by its asset { "result": [ { - "tx_hash": "7ae7bb5d540de02fd2b97d7234b6c87c925d0b6b3eac5a55e5ced650ce49eed1", + "tx_hash": "15f8f2368ab00936a53063e0f92508f82a1d6018e7495426e7dc81fc02f6d6f1", "tx_index": 10, "block_index": 125, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "asset": "FAIRMINTA", "asset_parent": "", "asset_longname": "", @@ -10842,7 +11217,7 @@ Returns the fairminter by its asset "commission": null, "paid_quantity": null, "confirmed": true, - "block_time": 1726509592 + "block_time": 1727200736 } ], "next_cursor": null, @@ -10873,64 +11248,64 @@ Returns the mints by asset { "result": [ { - "tx_hash": "60c597d6868e45719209ae17a0338cb00c81d5d64d82363d6dc68744ecf36351", + "tx_hash": "0690942f2dfd840ad6ff6b5cfd4f06d86e77dbce303980758bd99ac034e4d803", "tx_index": 13, "block_index": 125, - "source": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", - "fairminter_tx_hash": "7ae7bb5d540de02fd2b97d7234b6c87c925d0b6b3eac5a55e5ced650ce49eed1", + "source": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", + "fairminter_tx_hash": "15f8f2368ab00936a53063e0f92508f82a1d6018e7495426e7dc81fc02f6d6f1", "asset": "FAIRMINTA", "earn_quantity": 9000000000, "paid_quantity": 9000000000, "commission": 0, "status": "valid", "confirmed": true, - "block_time": 1726509592, + "block_time": 1727200736, "asset_info": { "asset_longname": "", "description": "", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false } }, { - "tx_hash": "efce747367cf4f6f269d55f239087910bc90dcb738205d57146a4a5b537dad17", + "tx_hash": "c7de2f976583158832e195c5e06c91be234ea8f11f3dec44a14e41ee44e25238", "tx_index": 12, "block_index": 124, - "source": "bcrt1q3ds7n4l97tumdkgcr3vyhe04zaxce8ujr8fmr2", - "fairminter_tx_hash": "7ae7bb5d540de02fd2b97d7234b6c87c925d0b6b3eac5a55e5ced650ce49eed1", + "source": "bcrt1q9cf2ed4wk37qye08wlppw39l7prxws7afa3krk", + "fairminter_tx_hash": "15f8f2368ab00936a53063e0f92508f82a1d6018e7495426e7dc81fc02f6d6f1", "asset": "FAIRMINTA", "earn_quantity": 500000000, "paid_quantity": 500000000, "commission": 0, "status": "valid", "confirmed": true, - "block_time": 1726509587, + "block_time": 1727200732, "asset_info": { "asset_longname": "", "description": "", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false } }, { - "tx_hash": "320ca07cfa5b9233bd809064f5facf416651c9b1f8a8d06a1ebc57a17a01436c", + "tx_hash": "5a391ff7c4ab9f62237b4734451c3765753c6424c9d0cded3325f895e75ff06f", "tx_index": 11, "block_index": 123, - "source": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", - "fairminter_tx_hash": "7ae7bb5d540de02fd2b97d7234b6c87c925d0b6b3eac5a55e5ced650ce49eed1", + "source": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", + "fairminter_tx_hash": "15f8f2368ab00936a53063e0f92508f82a1d6018e7495426e7dc81fc02f6d6f1", "asset": "FAIRMINTA", "earn_quantity": 500000000, "paid_quantity": 500000000, "commission": 0, "status": "valid", "confirmed": true, - "block_time": 1726509583, + "block_time": 1727200727, "asset_info": { "asset_longname": "", "description": "", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false } @@ -10946,7 +11321,7 @@ Returns the mints by asset Returns the mints by address and asset + Parameters - + address: `bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t` (str, required) - The address of the mints to return + + address: `bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9` (str, required) - The address of the mints to return + asset: `FAIRMINTA` (str, required) - The asset of the mints to return + cursor (str, optional) - + Default: `None` @@ -10965,22 +11340,22 @@ Returns the mints by address and asset { "result": [ { - "tx_hash": "320ca07cfa5b9233bd809064f5facf416651c9b1f8a8d06a1ebc57a17a01436c", + "tx_hash": "5a391ff7c4ab9f62237b4734451c3765753c6424c9d0cded3325f895e75ff06f", "tx_index": 11, "block_index": 123, - "source": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", - "fairminter_tx_hash": "7ae7bb5d540de02fd2b97d7234b6c87c925d0b6b3eac5a55e5ced650ce49eed1", + "source": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", + "fairminter_tx_hash": "15f8f2368ab00936a53063e0f92508f82a1d6018e7495426e7dc81fc02f6d6f1", "asset": "FAIRMINTA", "earn_quantity": 500000000, "paid_quantity": 500000000, "commission": 0, "status": "valid", "confirmed": true, - "block_time": 1726509583, + "block_time": 1727200727, "asset_info": { "asset_longname": "", "description": "", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false } @@ -10993,7 +11368,7 @@ Returns the mints by address and asset ## Group Orders -### Get Orders [GET /v2/orders{?status}{&cursor}{&limit}{&offset}{&verbose}{&show_unconfirmed}] +### Get Orders [GET /v2/orders{?status}{&cursor}{&limit}{&offset}{&sort}{&verbose}{&show_unconfirmed}] Returns all the orders @@ -11012,6 +11387,8 @@ Returns all the orders + Default: `100` + offset (int, optional) - The number of lines to skip before returning results (overrides the `cursor` parameter) + Default: `None` + + sort: `expiration:desc` (str, optional) - The sort order of the orders to return (overrides the `cursor` parameter) + + Default: `None` + verbose: `true` (bool, optional) - Include asset and dispenser info and normalized quantities in the response. + Default: `false` + show_unconfirmed (bool, optional) - Include results from Mempool. @@ -11023,10 +11400,10 @@ Returns all the orders { "result": [ { - "tx_index": 57, - "tx_hash": "7b7048040c893c69892bd088ce48db79b96b9c1d7221b50d903064ff5a1ed232", - "block_index": 191, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "tx_index": 48, + "tx_hash": "f90bb3520b4cd8e8f43ae4a416ea102f6a45a4cfd10b4620066271057abde926", + "block_index": 183, + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "give_asset": "XCP", "give_quantity": 1000, "give_remaining": 1000, @@ -11034,14 +11411,14 @@ Returns all the orders "get_quantity": 1000, "get_remaining": 1000, "expiration": 21, - "expire_index": 212, + "expire_index": 182, "fee_required": 0, "fee_required_remaining": 0, "fee_provided": 10000, "fee_provided_remaining": 10000, - "status": "open", + "status": "expired", "confirmed": true, - "block_time": 1726509903, + "block_time": 1727200899, "give_asset_info": { "divisible": true, "asset_longname": null, @@ -11066,111 +11443,111 @@ Returns all the orders "fee_provided_remaining_normalized": "0.00010000" }, { - "tx_index": 55, - "tx_hash": "5e324d551a694d3f6ffc9c67b3db8817d470ba32257047ddee237d3d07c1a1e2", - "block_index": 190, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "give_asset": "XCP", - "give_quantity": 1000, - "give_remaining": 1000, - "get_asset": "BTC", - "get_quantity": 1000, - "get_remaining": 1000, + "tx_index": 51, + "tx_hash": "e2f9612faf4a7e6249958ba9d24aaf9e3d7a70b0dafaa5fb94dc51a088e6cf63", + "block_index": 186, + "source": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", + "give_asset": "BTC", + "give_quantity": 2000, + "give_remaining": 0, + "get_asset": "XCP", + "get_quantity": 2000, + "get_remaining": 0, "expiration": 21, - "expire_index": 210, + "expire_index": 206, "fee_required": 0, "fee_required_remaining": 0, "fee_provided": 10000, "fee_provided_remaining": 10000, - "status": "cancelled", + "status": "filled", "confirmed": true, - "block_time": 1726509899, + "block_time": 1727200982, "give_asset_info": { "divisible": true, "asset_longname": null, - "description": "The Counterparty protocol native currency", - "locked": true, + "description": "The Bitcoin cryptocurrency", + "locked": false, "issuer": null }, "get_asset_info": { "divisible": true, "asset_longname": null, - "description": "The Bitcoin cryptocurrency", - "locked": false, + "description": "The Counterparty protocol native currency", + "locked": true, "issuer": null }, - "give_quantity_normalized": "0.00001000", - "get_quantity_normalized": "0.00001000", - "get_remaining_normalized": "0.00001000", - "give_remaining_normalized": "0.00001000", + "give_quantity_normalized": "0.00002000", + "get_quantity_normalized": "0.00002000", + "get_remaining_normalized": "0.00000000", + "give_remaining_normalized": "0.00000000", "fee_provided_normalized": "0.00010000", "fee_required_normalized": "0.00000000", "fee_required_remaining_normalized": "0.00000000", "fee_provided_remaining_normalized": "0.00010000" }, { - "tx_index": 52, - "tx_hash": "d87f4afa605375256bce3dab7d014314a751d0d998cdc0842ac2dfc8c2fa2b21", - "block_index": 186, - "source": "bcrt1q3ds7n4l97tumdkgcr3vyhe04zaxce8ujr8fmr2", - "give_asset": "BTC", - "give_quantity": 3000, - "give_remaining": 0, - "get_asset": "XCP", - "get_quantity": 3000, - "get_remaining": 0, + "tx_index": 50, + "tx_hash": "4844c5f31805a95e25af849d3e888b41d4cba82846300010c82895f4072e57f6", + "block_index": 187, + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "give_asset": "XCP", + "give_quantity": 10000, + "give_remaining": 5000, + "get_asset": "BTC", + "get_quantity": 10000, + "get_remaining": 5000, "expiration": 21, - "expire_index": 207, + "expire_index": 205, "fee_required": 0, "fee_required_remaining": 0, "fee_provided": 10000, "fee_provided_remaining": 10000, "status": "open", "confirmed": true, - "block_time": 1726509871, + "block_time": 1727200986, "give_asset_info": { "divisible": true, "asset_longname": null, - "description": "The Bitcoin cryptocurrency", - "locked": false, + "description": "The Counterparty protocol native currency", + "locked": true, "issuer": null }, "get_asset_info": { "divisible": true, "asset_longname": null, - "description": "The Counterparty protocol native currency", - "locked": true, + "description": "The Bitcoin cryptocurrency", + "locked": false, "issuer": null }, - "give_quantity_normalized": "0.00003000", - "get_quantity_normalized": "0.00003000", - "get_remaining_normalized": "0.00000000", - "give_remaining_normalized": "0.00000000", + "give_quantity_normalized": "0.00010000", + "get_quantity_normalized": "0.00010000", + "get_remaining_normalized": "0.00005000", + "give_remaining_normalized": "0.00005000", "fee_provided_normalized": "0.00010000", "fee_required_normalized": "0.00000000", "fee_required_remaining_normalized": "0.00000000", "fee_provided_remaining_normalized": "0.00010000" }, { - "tx_index": 50, - "tx_hash": "ebe20caac209f665277d0ac456ab451b4934a7d86529e24fd43b97535e62746a", - "block_index": 185, - "source": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", + "tx_index": 53, + "tx_hash": "467f7e82754021f4a8a7e07800c1785d2619004c75fd9200884f7aa4def7caa7", + "block_index": 187, + "source": "bcrt1q9cf2ed4wk37qye08wlppw39l7prxws7afa3krk", "give_asset": "BTC", - "give_quantity": 2000, + "give_quantity": 3000, "give_remaining": 0, "get_asset": "XCP", - "get_quantity": 2000, + "get_quantity": 3000, "get_remaining": 0, "expiration": 21, - "expire_index": 205, + "expire_index": 208, "fee_required": 0, "fee_required_remaining": 0, "fee_provided": 10000, "fee_provided_remaining": 10000, - "status": "filled", + "status": "open", "confirmed": true, - "block_time": 1726509867, + "block_time": 1727200986, "give_asset_info": { "divisible": true, "asset_longname": null, @@ -11185,8 +11562,8 @@ Returns all the orders "locked": true, "issuer": null }, - "give_quantity_normalized": "0.00002000", - "get_quantity_normalized": "0.00002000", + "give_quantity_normalized": "0.00003000", + "get_quantity_normalized": "0.00003000", "get_remaining_normalized": "0.00000000", "give_remaining_normalized": "0.00000000", "fee_provided_normalized": "0.00010000", @@ -11195,25 +11572,25 @@ Returns all the orders "fee_provided_remaining_normalized": "0.00010000" }, { - "tx_index": 49, - "tx_hash": "675f8dccad4bdcf4b54ce5aca7ddc442f642d63e518d64ad6068a264fb9894e1", - "block_index": 186, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "tx_index": 56, + "tx_hash": "83919cf82dd5eb1e2e1f6d3f3f752d34d41636ed00ab8ff78369eb81475b8e57", + "block_index": 191, + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "give_asset": "XCP", - "give_quantity": 10000, - "give_remaining": 5000, + "give_quantity": 1000, + "give_remaining": 1000, "get_asset": "BTC", - "get_quantity": 10000, - "get_remaining": 5000, + "get_quantity": 1000, + "get_remaining": 1000, "expiration": 21, - "expire_index": 204, + "expire_index": 211, "fee_required": 0, "fee_required_remaining": 0, "fee_provided": 10000, "fee_provided_remaining": 10000, - "status": "open", + "status": "cancelled", "confirmed": true, - "block_time": 1726509871, + "block_time": 1727201003, "give_asset_info": { "divisible": true, "asset_longname": null, @@ -11228,17 +11605,17 @@ Returns all the orders "locked": false, "issuer": null }, - "give_quantity_normalized": "0.00010000", - "get_quantity_normalized": "0.00010000", - "get_remaining_normalized": "0.00005000", - "give_remaining_normalized": "0.00005000", + "give_quantity_normalized": "0.00001000", + "get_quantity_normalized": "0.00001000", + "get_remaining_normalized": "0.00001000", + "give_remaining_normalized": "0.00001000", "fee_provided_normalized": "0.00010000", "fee_required_normalized": "0.00000000", "fee_required_remaining_normalized": "0.00000000", "fee_provided_remaining_normalized": "0.00010000" } ], - "next_cursor": 48, + "next_cursor": 58, "result_count": 7 } ``` @@ -11248,7 +11625,7 @@ Returns all the orders Returns the information of an order + Parameters - + order_hash: `7b7048040c893c69892bd088ce48db79b96b9c1d7221b50d903064ff5a1ed232` (str, required) - The hash of the transaction that created the order + + order_hash: `132d67269995e3bc9e40d83bc0badefad56d85f0229eedfb0e2ccdf829d03d28` (str, required) - The hash of the transaction that created the order + verbose: `true` (bool, optional) - Include asset and dispenser info and normalized quantities in the response. + Default: `false` + show_unconfirmed (bool, optional) - Include results from Mempool. @@ -11259,10 +11636,10 @@ Returns the information of an order ``` { "result": { - "tx_index": 57, - "tx_hash": "7b7048040c893c69892bd088ce48db79b96b9c1d7221b50d903064ff5a1ed232", - "block_index": 191, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "tx_index": 58, + "tx_hash": "132d67269995e3bc9e40d83bc0badefad56d85f0229eedfb0e2ccdf829d03d28", + "block_index": 192, + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "give_asset": "XCP", "give_quantity": 1000, "give_remaining": 1000, @@ -11270,14 +11647,14 @@ Returns the information of an order "get_quantity": 1000, "get_remaining": 1000, "expiration": 21, - "expire_index": 212, + "expire_index": 213, "fee_required": 0, "fee_required_remaining": 0, "fee_provided": 10000, "fee_provided_remaining": 10000, "status": "open", "confirmed": true, - "block_time": 1726509903, + "block_time": 1727201008, "give_asset_info": { "divisible": true, "asset_longname": null, @@ -11304,12 +11681,12 @@ Returns the information of an order } ``` -### Get Order Matches By Order [GET /v2/orders/{order_hash}/matches{?status}{&cursor}{&limit}{&offset}{&verbose}{&show_unconfirmed}] +### Get Order Matches By Order [GET /v2/orders/{order_hash}/matches{?status}{&cursor}{&limit}{&offset}{&sort}{&verbose}{&show_unconfirmed}] Returns the order matches of an order + Parameters - + order_hash: `675f8dccad4bdcf4b54ce5aca7ddc442f642d63e518d64ad6068a264fb9894e1` (str, required) - The hash of the transaction that created the order + + order_hash: `4844c5f31805a95e25af849d3e888b41d4cba82846300010c82895f4072e57f6` (str, required) - The hash of the transaction that created the order + status (enum[str], optional) - The status of the order matches to return + Default: `all` + Members @@ -11323,6 +11700,8 @@ Returns the order matches of an order + Default: `100` + offset (int, optional) - The number of lines to skip before returning results (overrides the `cursor` parameter) + Default: `None` + + sort: `forward_quantity:desc` (str, optional) - The sort order of the order matches to return (overrides the `cursor` parameter) + + Default: `None` + verbose: `true` (bool, optional) - Include asset and dispenser info and normalized quantities in the response. + Default: `false` + show_unconfirmed (bool, optional) - Include results from Mempool. @@ -11334,27 +11713,27 @@ Returns the order matches of an order { "result": [ { - "id": "675f8dccad4bdcf4b54ce5aca7ddc442f642d63e518d64ad6068a264fb9894e1_d87f4afa605375256bce3dab7d014314a751d0d998cdc0842ac2dfc8c2fa2b21", - "tx0_index": 49, - "tx0_hash": "675f8dccad4bdcf4b54ce5aca7ddc442f642d63e518d64ad6068a264fb9894e1", - "tx0_address": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "tx1_index": 52, - "tx1_hash": "d87f4afa605375256bce3dab7d014314a751d0d998cdc0842ac2dfc8c2fa2b21", - "tx1_address": "bcrt1q3ds7n4l97tumdkgcr3vyhe04zaxce8ujr8fmr2", + "id": "4844c5f31805a95e25af849d3e888b41d4cba82846300010c82895f4072e57f6_467f7e82754021f4a8a7e07800c1785d2619004c75fd9200884f7aa4def7caa7", + "tx0_index": 50, + "tx0_hash": "4844c5f31805a95e25af849d3e888b41d4cba82846300010c82895f4072e57f6", + "tx0_address": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "tx1_index": 53, + "tx1_hash": "467f7e82754021f4a8a7e07800c1785d2619004c75fd9200884f7aa4def7caa7", + "tx1_address": "bcrt1q9cf2ed4wk37qye08wlppw39l7prxws7afa3krk", "forward_asset": "XCP", "forward_quantity": 3000, "backward_asset": "BTC", "backward_quantity": 3000, - "tx0_block_index": 184, - "tx1_block_index": 186, - "block_index": 186, + "tx0_block_index": 185, + "tx1_block_index": 187, + "block_index": 187, "tx0_expiration": 21, "tx1_expiration": 21, - "match_expire_index": 206, + "match_expire_index": 207, "fee_paid": 0, "status": "pending", "confirmed": true, - "block_time": 1726509871, + "block_time": 1727200986, "forward_asset_info": { "divisible": true, "asset_longname": null, @@ -11374,27 +11753,27 @@ Returns the order matches of an order "fee_paid_normalized": "0.00000000" }, { - "id": "675f8dccad4bdcf4b54ce5aca7ddc442f642d63e518d64ad6068a264fb9894e1_ebe20caac209f665277d0ac456ab451b4934a7d86529e24fd43b97535e62746a", - "tx0_index": 49, - "tx0_hash": "675f8dccad4bdcf4b54ce5aca7ddc442f642d63e518d64ad6068a264fb9894e1", - "tx0_address": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "tx1_index": 50, - "tx1_hash": "ebe20caac209f665277d0ac456ab451b4934a7d86529e24fd43b97535e62746a", - "tx1_address": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", + "id": "4844c5f31805a95e25af849d3e888b41d4cba82846300010c82895f4072e57f6_e2f9612faf4a7e6249958ba9d24aaf9e3d7a70b0dafaa5fb94dc51a088e6cf63", + "tx0_index": 50, + "tx0_hash": "4844c5f31805a95e25af849d3e888b41d4cba82846300010c82895f4072e57f6", + "tx0_address": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "tx1_index": 51, + "tx1_hash": "e2f9612faf4a7e6249958ba9d24aaf9e3d7a70b0dafaa5fb94dc51a088e6cf63", + "tx1_address": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", "forward_asset": "XCP", "forward_quantity": 2000, "backward_asset": "BTC", "backward_quantity": 2000, - "tx0_block_index": 183, - "tx1_block_index": 184, - "block_index": 185, + "tx0_block_index": 184, + "tx1_block_index": 185, + "block_index": 186, "tx0_expiration": 21, "tx1_expiration": 21, - "match_expire_index": 204, + "match_expire_index": 205, "fee_paid": 0, "status": "completed", "confirmed": true, - "block_time": 1726509867, + "block_time": 1727200982, "forward_asset_info": { "divisible": true, "asset_longname": null, @@ -11424,7 +11803,7 @@ Returns the order matches of an order Returns the BTC pays of an order + Parameters - + order_hash: `675f8dccad4bdcf4b54ce5aca7ddc442f642d63e518d64ad6068a264fb9894e1` (str, required) - The hash of the transaction that created the order + + order_hash: `4844c5f31805a95e25af849d3e888b41d4cba82846300010c82895f4072e57f6` (str, required) - The hash of the transaction that created the order + cursor (str, optional) - The last index of the resolutions to return + Default: `None` + limit: `5` (int, optional) - The maximum number of resolutions to return @@ -11442,16 +11821,16 @@ Returns the BTC pays of an order { "result": [ { - "tx_index": 51, - "tx_hash": "d749fed653092a4854ac8c9773d9610edfb2b12db4c962aa3795cc653e8a624d", - "block_index": 185, - "source": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", - "destination": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "tx_index": 52, + "tx_hash": "c78a916b13975e32514ea6fac0324481adfcc972f1db2cbabb96677db4d026cb", + "block_index": 186, + "source": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", + "destination": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "btc_amount": 2000, - "order_match_id": "675f8dccad4bdcf4b54ce5aca7ddc442f642d63e518d64ad6068a264fb9894e1_ebe20caac209f665277d0ac456ab451b4934a7d86529e24fd43b97535e62746a", + "order_match_id": "4844c5f31805a95e25af849d3e888b41d4cba82846300010c82895f4072e57f6_e2f9612faf4a7e6249958ba9d24aaf9e3d7a70b0dafaa5fb94dc51a088e6cf63", "status": "valid", "confirmed": true, - "block_time": 1726509867, + "block_time": 1727200982, "btc_amount_normalized": "0.00002000" } ], @@ -11460,7 +11839,7 @@ Returns the BTC pays of an order } ``` -### Get Orders By Two Assets [GET /v2/orders/{asset1}/{asset2}{?status}{&cursor}{&limit}{&offset}{&verbose}{&show_unconfirmed}] +### Get Orders By Two Assets [GET /v2/orders/{asset1}/{asset2}{?status}{&cursor}{&limit}{&offset}{&sort}{&verbose}{&show_unconfirmed}] Returns the orders to exchange two assets @@ -11481,6 +11860,8 @@ Returns the orders to exchange two assets + Default: `100` + offset (int, optional) - The number of lines to skip before returning results (overrides the `cursor` parameter) + Default: `None` + + sort: `expiration:desc` (str, optional) - The sort order of the orders to return (overrides the `cursor` parameter) + + Default: `None` + verbose: `true` (bool, optional) - Include asset and dispenser info and normalized quantities in the response. + Default: `false` + show_unconfirmed (bool, optional) - Include results from Mempool. @@ -11492,138 +11873,138 @@ Returns the orders to exchange two assets { "result": [ { - "tx_index": 57, - "tx_hash": "7b7048040c893c69892bd088ce48db79b96b9c1d7221b50d903064ff5a1ed232", - "block_index": 191, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "give_asset": "XCP", - "give_quantity": 1000, - "give_remaining": 1000, - "get_asset": "BTC", - "get_quantity": 1000, - "get_remaining": 1000, + "tx_index": 51, + "tx_hash": "e2f9612faf4a7e6249958ba9d24aaf9e3d7a70b0dafaa5fb94dc51a088e6cf63", + "block_index": 186, + "source": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", + "give_asset": "BTC", + "give_quantity": 2000, + "give_remaining": 0, + "get_asset": "XCP", + "get_quantity": 2000, + "get_remaining": 0, "expiration": 21, - "expire_index": 212, + "expire_index": 206, "fee_required": 0, "fee_required_remaining": 0, "fee_provided": 10000, "fee_provided_remaining": 10000, - "status": "open", + "status": "filled", "confirmed": true, "market_pair": "BTC/XCP", - "market_dir": "BUY", + "market_dir": "SELL", "market_price": "1.00000000", - "block_time": 1726509903, + "block_time": 1727200982, "give_asset_info": { "divisible": true, "asset_longname": null, - "description": "The Counterparty protocol native currency", - "locked": true, + "description": "The Bitcoin cryptocurrency", + "locked": false, "issuer": null }, "get_asset_info": { "divisible": true, "asset_longname": null, - "description": "The Bitcoin cryptocurrency", - "locked": false, + "description": "The Counterparty protocol native currency", + "locked": true, "issuer": null }, - "give_quantity_normalized": "0.00001000", - "get_quantity_normalized": "0.00001000", - "get_remaining_normalized": "0.00001000", - "give_remaining_normalized": "0.00001000", + "give_quantity_normalized": "0.00002000", + "get_quantity_normalized": "0.00002000", + "get_remaining_normalized": "0.00000000", + "give_remaining_normalized": "0.00000000", "fee_provided_normalized": "0.00010000", "fee_required_normalized": "0.00000000", "fee_required_remaining_normalized": "0.00000000", "fee_provided_remaining_normalized": "0.00010000" }, { - "tx_index": 55, - "tx_hash": "5e324d551a694d3f6ffc9c67b3db8817d470ba32257047ddee237d3d07c1a1e2", - "block_index": 190, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "give_asset": "XCP", - "give_quantity": 1000, - "give_remaining": 1000, - "get_asset": "BTC", - "get_quantity": 1000, - "get_remaining": 1000, + "tx_index": 53, + "tx_hash": "467f7e82754021f4a8a7e07800c1785d2619004c75fd9200884f7aa4def7caa7", + "block_index": 187, + "source": "bcrt1q9cf2ed4wk37qye08wlppw39l7prxws7afa3krk", + "give_asset": "BTC", + "give_quantity": 3000, + "give_remaining": 0, + "get_asset": "XCP", + "get_quantity": 3000, + "get_remaining": 0, "expiration": 21, - "expire_index": 210, + "expire_index": 208, "fee_required": 0, "fee_required_remaining": 0, "fee_provided": 10000, "fee_provided_remaining": 10000, - "status": "cancelled", + "status": "open", "confirmed": true, "market_pair": "BTC/XCP", - "market_dir": "BUY", + "market_dir": "SELL", "market_price": "1.00000000", - "block_time": 1726509899, + "block_time": 1727200986, "give_asset_info": { "divisible": true, "asset_longname": null, - "description": "The Counterparty protocol native currency", - "locked": true, + "description": "The Bitcoin cryptocurrency", + "locked": false, "issuer": null }, "get_asset_info": { "divisible": true, "asset_longname": null, - "description": "The Bitcoin cryptocurrency", - "locked": false, + "description": "The Counterparty protocol native currency", + "locked": true, "issuer": null }, - "give_quantity_normalized": "0.00001000", - "get_quantity_normalized": "0.00001000", - "get_remaining_normalized": "0.00001000", - "give_remaining_normalized": "0.00001000", + "give_quantity_normalized": "0.00003000", + "get_quantity_normalized": "0.00003000", + "get_remaining_normalized": "0.00000000", + "give_remaining_normalized": "0.00000000", "fee_provided_normalized": "0.00010000", "fee_required_normalized": "0.00000000", "fee_required_remaining_normalized": "0.00000000", "fee_provided_remaining_normalized": "0.00010000" }, { - "tx_index": 52, - "tx_hash": "d87f4afa605375256bce3dab7d014314a751d0d998cdc0842ac2dfc8c2fa2b21", - "block_index": 186, - "source": "bcrt1q3ds7n4l97tumdkgcr3vyhe04zaxce8ujr8fmr2", - "give_asset": "BTC", - "give_quantity": 3000, - "give_remaining": 0, - "get_asset": "XCP", - "get_quantity": 3000, - "get_remaining": 0, + "tx_index": 48, + "tx_hash": "f90bb3520b4cd8e8f43ae4a416ea102f6a45a4cfd10b4620066271057abde926", + "block_index": 183, + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "give_asset": "XCP", + "give_quantity": 1000, + "give_remaining": 1000, + "get_asset": "BTC", + "get_quantity": 1000, + "get_remaining": 1000, "expiration": 21, - "expire_index": 207, + "expire_index": 182, "fee_required": 0, "fee_required_remaining": 0, "fee_provided": 10000, "fee_provided_remaining": 10000, - "status": "open", + "status": "expired", "confirmed": true, "market_pair": "BTC/XCP", - "market_dir": "SELL", + "market_dir": "BUY", "market_price": "1.00000000", - "block_time": 1726509871, + "block_time": 1727200899, "give_asset_info": { "divisible": true, "asset_longname": null, - "description": "The Bitcoin cryptocurrency", - "locked": false, + "description": "The Counterparty protocol native currency", + "locked": true, "issuer": null }, "get_asset_info": { "divisible": true, "asset_longname": null, - "description": "The Counterparty protocol native currency", - "locked": true, + "description": "The Bitcoin cryptocurrency", + "locked": false, "issuer": null }, - "give_quantity_normalized": "0.00003000", - "get_quantity_normalized": "0.00003000", - "get_remaining_normalized": "0.00000000", - "give_remaining_normalized": "0.00000000", + "give_quantity_normalized": "0.00001000", + "get_quantity_normalized": "0.00001000", + "get_remaining_normalized": "0.00001000", + "give_remaining_normalized": "0.00001000", "fee_provided_normalized": "0.00010000", "fee_required_normalized": "0.00000000", "fee_required_remaining_normalized": "0.00000000", @@ -11631,73 +12012,73 @@ Returns the orders to exchange two assets }, { "tx_index": 50, - "tx_hash": "ebe20caac209f665277d0ac456ab451b4934a7d86529e24fd43b97535e62746a", - "block_index": 185, - "source": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", - "give_asset": "BTC", - "give_quantity": 2000, - "give_remaining": 0, - "get_asset": "XCP", - "get_quantity": 2000, - "get_remaining": 0, + "tx_hash": "4844c5f31805a95e25af849d3e888b41d4cba82846300010c82895f4072e57f6", + "block_index": 187, + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "give_asset": "XCP", + "give_quantity": 10000, + "give_remaining": 5000, + "get_asset": "BTC", + "get_quantity": 10000, + "get_remaining": 5000, "expiration": 21, "expire_index": 205, "fee_required": 0, "fee_required_remaining": 0, "fee_provided": 10000, "fee_provided_remaining": 10000, - "status": "filled", + "status": "open", "confirmed": true, "market_pair": "BTC/XCP", - "market_dir": "SELL", + "market_dir": "BUY", "market_price": "1.00000000", - "block_time": 1726509867, + "block_time": 1727200986, "give_asset_info": { "divisible": true, "asset_longname": null, - "description": "The Bitcoin cryptocurrency", - "locked": false, + "description": "The Counterparty protocol native currency", + "locked": true, "issuer": null }, "get_asset_info": { "divisible": true, "asset_longname": null, - "description": "The Counterparty protocol native currency", - "locked": true, + "description": "The Bitcoin cryptocurrency", + "locked": false, "issuer": null }, - "give_quantity_normalized": "0.00002000", - "get_quantity_normalized": "0.00002000", - "get_remaining_normalized": "0.00000000", - "give_remaining_normalized": "0.00000000", + "give_quantity_normalized": "0.00010000", + "get_quantity_normalized": "0.00010000", + "get_remaining_normalized": "0.00005000", + "give_remaining_normalized": "0.00005000", "fee_provided_normalized": "0.00010000", "fee_required_normalized": "0.00000000", "fee_required_remaining_normalized": "0.00000000", "fee_provided_remaining_normalized": "0.00010000" }, { - "tx_index": 49, - "tx_hash": "675f8dccad4bdcf4b54ce5aca7ddc442f642d63e518d64ad6068a264fb9894e1", - "block_index": 186, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "tx_index": 56, + "tx_hash": "83919cf82dd5eb1e2e1f6d3f3f752d34d41636ed00ab8ff78369eb81475b8e57", + "block_index": 191, + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "give_asset": "XCP", - "give_quantity": 10000, - "give_remaining": 5000, + "give_quantity": 1000, + "give_remaining": 1000, "get_asset": "BTC", - "get_quantity": 10000, - "get_remaining": 5000, + "get_quantity": 1000, + "get_remaining": 1000, "expiration": 21, - "expire_index": 204, + "expire_index": 211, "fee_required": 0, "fee_required_remaining": 0, "fee_provided": 10000, "fee_provided_remaining": 10000, - "status": "open", + "status": "cancelled", "confirmed": true, "market_pair": "BTC/XCP", "market_dir": "BUY", "market_price": "1.00000000", - "block_time": 1726509871, + "block_time": 1727201003, "give_asset_info": { "divisible": true, "asset_longname": null, @@ -11712,22 +12093,22 @@ Returns the orders to exchange two assets "locked": false, "issuer": null }, - "give_quantity_normalized": "0.00010000", - "get_quantity_normalized": "0.00010000", - "get_remaining_normalized": "0.00005000", - "give_remaining_normalized": "0.00005000", + "give_quantity_normalized": "0.00001000", + "get_quantity_normalized": "0.00001000", + "get_remaining_normalized": "0.00001000", + "give_remaining_normalized": "0.00001000", "fee_provided_normalized": "0.00010000", "fee_required_normalized": "0.00000000", "fee_required_remaining_normalized": "0.00000000", "fee_provided_remaining_normalized": "0.00010000" } ], - "next_cursor": 48, + "next_cursor": 58, "result_count": 7 } ``` -### Get Order Matches By Two Assets [GET /v2/orders/{asset1}/{asset2}/matches{?status}{&cursor}{&limit}{&offset}{&verbose}{&show_unconfirmed}] +### Get Order Matches By Two Assets [GET /v2/orders/{asset1}/{asset2}/matches{?status}{&cursor}{&limit}{&offset}{&sort}{&verbose}{&show_unconfirmed}] Returns the orders to exchange two assets @@ -11747,6 +12128,8 @@ Returns the orders to exchange two assets + Default: `100` + offset (int, optional) - The number of lines to skip before returning results (overrides the `cursor` parameter) + Default: `None` + + sort: `forward_quantity:desc` (str, optional) - The sort order of the order matches to return (overrides the `cursor` parameter) + + Default: `None` + verbose: `true` (bool, optional) - Include asset and dispenser info and normalized quantities in the response. + Default: `false` + show_unconfirmed (bool, optional) - Include results from Mempool. @@ -11758,30 +12141,30 @@ Returns the orders to exchange two assets { "result": [ { - "id": "675f8dccad4bdcf4b54ce5aca7ddc442f642d63e518d64ad6068a264fb9894e1_d87f4afa605375256bce3dab7d014314a751d0d998cdc0842ac2dfc8c2fa2b21", - "tx0_index": 49, - "tx0_hash": "675f8dccad4bdcf4b54ce5aca7ddc442f642d63e518d64ad6068a264fb9894e1", - "tx0_address": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "tx1_index": 52, - "tx1_hash": "d87f4afa605375256bce3dab7d014314a751d0d998cdc0842ac2dfc8c2fa2b21", - "tx1_address": "bcrt1q3ds7n4l97tumdkgcr3vyhe04zaxce8ujr8fmr2", + "id": "4844c5f31805a95e25af849d3e888b41d4cba82846300010c82895f4072e57f6_467f7e82754021f4a8a7e07800c1785d2619004c75fd9200884f7aa4def7caa7", + "tx0_index": 50, + "tx0_hash": "4844c5f31805a95e25af849d3e888b41d4cba82846300010c82895f4072e57f6", + "tx0_address": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "tx1_index": 53, + "tx1_hash": "467f7e82754021f4a8a7e07800c1785d2619004c75fd9200884f7aa4def7caa7", + "tx1_address": "bcrt1q9cf2ed4wk37qye08wlppw39l7prxws7afa3krk", "forward_asset": "XCP", "forward_quantity": 3000, "backward_asset": "BTC", "backward_quantity": 3000, - "tx0_block_index": 184, - "tx1_block_index": 186, - "block_index": 186, + "tx0_block_index": 185, + "tx1_block_index": 187, + "block_index": 187, "tx0_expiration": 21, "tx1_expiration": 21, - "match_expire_index": 206, + "match_expire_index": 207, "fee_paid": 0, "status": "pending", "confirmed": true, "market_pair": "BTC/XCP", "market_dir": "BUY", "market_price": "1.00000000", - "block_time": 1726509871, + "block_time": 1727200986, "forward_asset_info": { "divisible": true, "asset_longname": null, @@ -11801,30 +12184,30 @@ Returns the orders to exchange two assets "fee_paid_normalized": "0.00000000" }, { - "id": "675f8dccad4bdcf4b54ce5aca7ddc442f642d63e518d64ad6068a264fb9894e1_ebe20caac209f665277d0ac456ab451b4934a7d86529e24fd43b97535e62746a", - "tx0_index": 49, - "tx0_hash": "675f8dccad4bdcf4b54ce5aca7ddc442f642d63e518d64ad6068a264fb9894e1", - "tx0_address": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "tx1_index": 50, - "tx1_hash": "ebe20caac209f665277d0ac456ab451b4934a7d86529e24fd43b97535e62746a", - "tx1_address": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", + "id": "4844c5f31805a95e25af849d3e888b41d4cba82846300010c82895f4072e57f6_e2f9612faf4a7e6249958ba9d24aaf9e3d7a70b0dafaa5fb94dc51a088e6cf63", + "tx0_index": 50, + "tx0_hash": "4844c5f31805a95e25af849d3e888b41d4cba82846300010c82895f4072e57f6", + "tx0_address": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "tx1_index": 51, + "tx1_hash": "e2f9612faf4a7e6249958ba9d24aaf9e3d7a70b0dafaa5fb94dc51a088e6cf63", + "tx1_address": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", "forward_asset": "XCP", "forward_quantity": 2000, "backward_asset": "BTC", "backward_quantity": 2000, - "tx0_block_index": 183, - "tx1_block_index": 184, - "block_index": 185, + "tx0_block_index": 184, + "tx1_block_index": 185, + "block_index": 186, "tx0_expiration": 21, "tx1_expiration": 21, - "match_expire_index": 204, + "match_expire_index": 205, "fee_paid": 0, "status": "completed", "confirmed": true, "market_pair": "BTC/XCP", "market_dir": "BUY", "market_price": "1.00000000", - "block_time": 1726509867, + "block_time": 1727200982, "forward_asset_info": { "divisible": true, "asset_longname": null, @@ -11844,30 +12227,30 @@ Returns the orders to exchange two assets "fee_paid_normalized": "0.00000000" }, { - "id": "e2263719273ed7cbb5496ae9daff21e24a2899e76feea1abbd4e91fa72766b5d_afd6eab5bb50283dc170ad276157e78db2dc90cb330d559320b9adc3721a1fbc", - "tx0_index": 47, - "tx0_hash": "e2263719273ed7cbb5496ae9daff21e24a2899e76feea1abbd4e91fa72766b5d", - "tx0_address": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "tx1_index": 48, - "tx1_hash": "afd6eab5bb50283dc170ad276157e78db2dc90cb330d559320b9adc3721a1fbc", - "tx1_address": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", + "id": "f90bb3520b4cd8e8f43ae4a416ea102f6a45a4cfd10b4620066271057abde926_3a7ea4dc466a608d47050ca02aa94f8d84ae9ea60b94dcf727b3e6eb8728e8d8", + "tx0_index": 48, + "tx0_hash": "f90bb3520b4cd8e8f43ae4a416ea102f6a45a4cfd10b4620066271057abde926", + "tx0_address": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "tx1_index": 49, + "tx1_hash": "3a7ea4dc466a608d47050ca02aa94f8d84ae9ea60b94dcf727b3e6eb8728e8d8", + "tx1_address": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", "forward_asset": "XCP", "forward_quantity": 1000, "backward_asset": "BTC", "backward_quantity": 1000, - "tx0_block_index": 160, - "tx1_block_index": 161, - "block_index": 182, + "tx0_block_index": 161, + "tx1_block_index": 162, + "block_index": 183, "tx0_expiration": 21, "tx1_expiration": 20, - "match_expire_index": 181, + "match_expire_index": 182, "fee_paid": 0, "status": "expired", "confirmed": true, "market_pair": "BTC/XCP", "market_dir": "BUY", "market_price": "1.00000000", - "block_time": 1726509796, + "block_time": 1727200899, "forward_asset_info": { "divisible": true, "asset_longname": null, @@ -11894,7 +12277,7 @@ Returns the orders to exchange two assets ## Group Order_matches -### Get All Order Matches [GET /v2/order_matches{?status}{&cursor}{&limit}{&offset}{&verbose}{&show_unconfirmed}] +### Get All Order Matches [GET /v2/order_matches{?status}{&cursor}{&limit}{&offset}{&sort}{&verbose}{&show_unconfirmed}] Returns all the order matches @@ -11912,6 +12295,8 @@ Returns all the order matches + Default: `100` + offset (int, optional) - The number of lines to skip before returning results (overrides the `cursor` parameter) + Default: `None` + + sort: `forward_quantity:desc` (str, optional) - The sort order of the order matches to return (overrides the `cursor` parameter) + + Default: `None` + verbose: `true` (bool, optional) - Include asset and dispenser info and normalized quantities in the response. + Default: `false` + show_unconfirmed (bool, optional) - Include results from Mempool. @@ -11923,27 +12308,27 @@ Returns all the order matches { "result": [ { - "id": "675f8dccad4bdcf4b54ce5aca7ddc442f642d63e518d64ad6068a264fb9894e1_d87f4afa605375256bce3dab7d014314a751d0d998cdc0842ac2dfc8c2fa2b21", - "tx0_index": 49, - "tx0_hash": "675f8dccad4bdcf4b54ce5aca7ddc442f642d63e518d64ad6068a264fb9894e1", - "tx0_address": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "tx1_index": 52, - "tx1_hash": "d87f4afa605375256bce3dab7d014314a751d0d998cdc0842ac2dfc8c2fa2b21", - "tx1_address": "bcrt1q3ds7n4l97tumdkgcr3vyhe04zaxce8ujr8fmr2", + "id": "4844c5f31805a95e25af849d3e888b41d4cba82846300010c82895f4072e57f6_467f7e82754021f4a8a7e07800c1785d2619004c75fd9200884f7aa4def7caa7", + "tx0_index": 50, + "tx0_hash": "4844c5f31805a95e25af849d3e888b41d4cba82846300010c82895f4072e57f6", + "tx0_address": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "tx1_index": 53, + "tx1_hash": "467f7e82754021f4a8a7e07800c1785d2619004c75fd9200884f7aa4def7caa7", + "tx1_address": "bcrt1q9cf2ed4wk37qye08wlppw39l7prxws7afa3krk", "forward_asset": "XCP", "forward_quantity": 3000, "backward_asset": "BTC", "backward_quantity": 3000, - "tx0_block_index": 184, - "tx1_block_index": 186, - "block_index": 186, + "tx0_block_index": 185, + "tx1_block_index": 187, + "block_index": 187, "tx0_expiration": 21, "tx1_expiration": 21, - "match_expire_index": 206, + "match_expire_index": 207, "fee_paid": 0, "status": "pending", "confirmed": true, - "block_time": 1726509871, + "block_time": 1727200986, "forward_asset_info": { "divisible": true, "asset_longname": null, @@ -11963,27 +12348,27 @@ Returns all the order matches "fee_paid_normalized": "0.00000000" }, { - "id": "675f8dccad4bdcf4b54ce5aca7ddc442f642d63e518d64ad6068a264fb9894e1_ebe20caac209f665277d0ac456ab451b4934a7d86529e24fd43b97535e62746a", - "tx0_index": 49, - "tx0_hash": "675f8dccad4bdcf4b54ce5aca7ddc442f642d63e518d64ad6068a264fb9894e1", - "tx0_address": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "tx1_index": 50, - "tx1_hash": "ebe20caac209f665277d0ac456ab451b4934a7d86529e24fd43b97535e62746a", - "tx1_address": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", + "id": "4844c5f31805a95e25af849d3e888b41d4cba82846300010c82895f4072e57f6_e2f9612faf4a7e6249958ba9d24aaf9e3d7a70b0dafaa5fb94dc51a088e6cf63", + "tx0_index": 50, + "tx0_hash": "4844c5f31805a95e25af849d3e888b41d4cba82846300010c82895f4072e57f6", + "tx0_address": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "tx1_index": 51, + "tx1_hash": "e2f9612faf4a7e6249958ba9d24aaf9e3d7a70b0dafaa5fb94dc51a088e6cf63", + "tx1_address": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", "forward_asset": "XCP", "forward_quantity": 2000, "backward_asset": "BTC", "backward_quantity": 2000, - "tx0_block_index": 183, - "tx1_block_index": 184, - "block_index": 185, + "tx0_block_index": 184, + "tx1_block_index": 185, + "block_index": 186, "tx0_expiration": 21, "tx1_expiration": 21, - "match_expire_index": 204, + "match_expire_index": 205, "fee_paid": 0, "status": "completed", "confirmed": true, - "block_time": 1726509867, + "block_time": 1727200982, "forward_asset_info": { "divisible": true, "asset_longname": null, @@ -12003,27 +12388,27 @@ Returns all the order matches "fee_paid_normalized": "0.00000000" }, { - "id": "e2263719273ed7cbb5496ae9daff21e24a2899e76feea1abbd4e91fa72766b5d_afd6eab5bb50283dc170ad276157e78db2dc90cb330d559320b9adc3721a1fbc", - "tx0_index": 47, - "tx0_hash": "e2263719273ed7cbb5496ae9daff21e24a2899e76feea1abbd4e91fa72766b5d", - "tx0_address": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "tx1_index": 48, - "tx1_hash": "afd6eab5bb50283dc170ad276157e78db2dc90cb330d559320b9adc3721a1fbc", - "tx1_address": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", + "id": "f90bb3520b4cd8e8f43ae4a416ea102f6a45a4cfd10b4620066271057abde926_3a7ea4dc466a608d47050ca02aa94f8d84ae9ea60b94dcf727b3e6eb8728e8d8", + "tx0_index": 48, + "tx0_hash": "f90bb3520b4cd8e8f43ae4a416ea102f6a45a4cfd10b4620066271057abde926", + "tx0_address": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "tx1_index": 49, + "tx1_hash": "3a7ea4dc466a608d47050ca02aa94f8d84ae9ea60b94dcf727b3e6eb8728e8d8", + "tx1_address": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", "forward_asset": "XCP", "forward_quantity": 1000, "backward_asset": "BTC", "backward_quantity": 1000, - "tx0_block_index": 160, - "tx1_block_index": 161, - "block_index": 182, + "tx0_block_index": 161, + "tx1_block_index": 162, + "block_index": 183, "tx0_expiration": 21, "tx1_expiration": 20, - "match_expire_index": 181, + "match_expire_index": 182, "fee_paid": 0, "status": "expired", "confirmed": true, - "block_time": 1726509796, + "block_time": 1727200899, "forward_asset_info": { "divisible": true, "asset_longname": null, @@ -12191,66 +12576,66 @@ Returns the burns "result": [ { "tx_index": 9, - "tx_hash": "2504c4bdafa1c2cab23605685e6a8040748f7d6df91f857b42f1cb259d3a91e0", + "tx_hash": "bb35e686d434cae9951da80cf904917280d38b8251f1626625123d1a058d4a6d", "block_index": 121, - "source": "bcrt1qyzyw25seaw22494hrmtlwsm3d5mqyp93fd25da", + "source": "bcrt1quygvuzd7gsxym55nf7w85agucgajyp9p5jduqp", "burned": 50000000, "earned": 74999996667, "status": "valid", "confirmed": true, - "block_time": 1726509573, + "block_time": 1727200719, "burned_normalized": "0.50000000", "earned_normalized": "749.99997000" }, { "tx_index": 8, - "tx_hash": "6322f2e8e202acc14afc1b22b19ac8ab56b27f17712400d116568a1da72222cc", + "tx_hash": "b51b2867cf3c155fd34050bdca7366bee0cdec885a9d99baf3528307a7e27db6", "block_index": 120, - "source": "bcrt1qrqg60l5vguevyqtnw4ym5hdth8jm4zmk0fxn99", + "source": "bcrt1qtwywdknya042p0342nhnjk05557lxwysfw6vuj", "burned": 50000000, "earned": 74999996833, "status": "valid", "confirmed": true, - "block_time": 1726509569, + "block_time": 1727200715, "burned_normalized": "0.50000000", "earned_normalized": "749.99997000" }, { "tx_index": 7, - "tx_hash": "38fc46963011e93a419c7d62e149905064cd942d143e7452ee3a67a6183f9e98", + "tx_hash": "328eaf6b9d4677ede9e9e97effbd0d13104f5055317a9974961d8de95cba585c", "block_index": 119, - "source": "bcrt1qqt2dxp9pmcgvjrckeyuy29myfghay5le53hl0d", + "source": "bcrt1qtmd9xj5r7dlk044rn35kqqdmy62jpnf6u52x9z", "burned": 50000000, "earned": 74999997000, "status": "valid", "confirmed": true, - "block_time": 1726509565, + "block_time": 1727200710, "burned_normalized": "0.50000000", "earned_normalized": "749.99997000" }, { "tx_index": 6, - "tx_hash": "f8d15199587f10cbe7ee5233aba5c8fcc99d9ba2e1c6995360c80912f6eb2a6c", + "tx_hash": "3881d5577b826809c73539506d45d0ba91960069911a94563115003d1bd1427b", "block_index": 118, - "source": "bcrt1qlqcrlvw5t7cnj8r9hjl0qq67c2fyk5kvfra90p", + "source": "bcrt1qfvucymcd7u04hpd7eafsmxwnashcmaqs54q79p", "burned": 50000000, "earned": 74999997167, "status": "valid", "confirmed": true, - "block_time": 1726509560, + "block_time": 1727200706, "burned_normalized": "0.50000000", "earned_normalized": "749.99997000" }, { "tx_index": 5, - "tx_hash": "7b45fa1f2e5deab279659946a3af0948830f02d9df9dd929afc3d897f23384ef", + "tx_hash": "3a8d701d6ce7937fb5069dda57641ea7218382a8654ad0344f861e12ca6717d1", "block_index": 117, - "source": "bcrt1qlm44vh2ynrtqwh8j2mptwrzzfd04czsya4wxcd", + "source": "bcrt1qeshrsce6vyx833j2p85aesnx0aj9sxjtt79jak", "burned": 50000000, "earned": 74999997333, "status": "valid", "confirmed": true, - "block_time": 1726509556, + "block_time": 1727200702, "burned_normalized": "0.50000000", "earned_normalized": "749.99997000" } @@ -12262,7 +12647,7 @@ Returns the burns ## Group Dispensers -### Get Dispensers [GET /v2/dispensers{?status}{&cursor}{&limit}{&offset}{&verbose}{&show_unconfirmed}] +### Get Dispensers [GET /v2/dispensers{?status}{&cursor}{&limit}{&offset}{&sort}{&verbose}{&show_unconfirmed}] Returns all dispensers @@ -12281,6 +12666,8 @@ Returns all dispensers + Default: `100` + offset (int, optional) - The number of lines to skip before returning results (overrides the `cursor` parameter) + Default: `None` + + sort: `block_index:asc` (str, optional) - The sort order of the dispensers to return (overrides the `cursor` parameter) + + Default: `None` + verbose: `true` (bool, optional) - Include asset and dispenser info and normalized quantities in the response. + Default: `false` + show_unconfirmed (bool, optional) - Include results from Mempool. @@ -12292,29 +12679,29 @@ Returns all dispensers { "result": [ { - "tx_index": 32, - "tx_hash": "5c8374a3882f222038bbf9a0cce7589e84b790915b9228d66af1a5b0eb61ea2d", - "block_index": 146, - "source": "bcrt1qlm44vh2ynrtqwh8j2mptwrzzfd04czsya4wxcd", + "tx_index": 26, + "tx_hash": "3df6d90991175a0c2aabbe0dc87cacd5d92c90cb996ce5b1514492f2585c61fc", + "block_index": 141, + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "asset": "XCP", "give_quantity": 1, "escrow_quantity": 10000, "satoshirate": 1, - "status": 0, - "give_remaining": 9334, - "oracle_address": "bcrt1qlm44vh2ynrtqwh8j2mptwrzzfd04czsya4wxcd", + "status": 10, + "give_remaining": 0, + "oracle_address": null, "last_status_tx_hash": null, - "origin": "bcrt1qlm44vh2ynrtqwh8j2mptwrzzfd04czsya4wxcd", - "dispense_count": 1, + "origin": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "dispense_count": 2, "last_status_tx_source": null, "close_block_index": null, "confirmed": true, - "fiat_price": 0.01, - "oracle_price": 66600.0, - "fiat_unit": "USD", - "oracle_price_last_updated": 138, - "satoshi_price": 16, - "block_time": 1726509701, + "fiat_price": null, + "oracle_price": null, + "fiat_unit": null, + "oracle_price_last_updated": null, + "satoshi_price": 1, + "block_time": 1727200803, "asset_info": { "divisible": true, "asset_longname": null, @@ -12323,25 +12710,25 @@ Returns all dispensers "issuer": null }, "give_quantity_normalized": "0.00000001", - "give_remaining_normalized": "0.00009334", + "give_remaining_normalized": "0.00000000", "escrow_quantity_normalized": "0.00010000", "satoshirate_normalized": "0.00000001", - "satoshi_price_normalized": "0.00000016" + "satoshi_price_normalized": "0.00000001" }, { - "tx_index": 30, - "tx_hash": "d3713f7f4355cf95ddb00030d4c53655897b901d6827b640ee27cc83efaba2e6", - "block_index": 144, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "tx_index": 29, + "tx_hash": "aa785aa095076658df4575becc62c26d1e549a540599459cf332e9f44ae51019", + "block_index": 142, + "source": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "asset": "XCP", "give_quantity": 1, - "escrow_quantity": 10, + "escrow_quantity": 10000, "satoshirate": 1, "status": 0, - "give_remaining": 20, + "give_remaining": 10000, "oracle_address": null, "last_status_tx_hash": null, - "origin": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "origin": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "dispense_count": 0, "last_status_tx_source": null, "close_block_index": null, @@ -12351,7 +12738,7 @@ Returns all dispensers "fiat_unit": null, "oracle_price_last_updated": null, "satoshi_price": 1, - "block_time": 1726509693, + "block_time": 1727200806, "asset_info": { "divisible": true, "asset_longname": null, @@ -12360,35 +12747,35 @@ Returns all dispensers "issuer": null }, "give_quantity_normalized": "0.00000001", - "give_remaining_normalized": "0.00000020", - "escrow_quantity_normalized": "0.00000010", + "give_remaining_normalized": "0.00010000", + "escrow_quantity_normalized": "0.00010000", "satoshirate_normalized": "0.00000001", "satoshi_price_normalized": "0.00000001" }, { - "tx_index": 29, - "tx_hash": "ee65a85736487849d0d1ac06ea09424e477194edd27c7c31afbe06f4fbb6142c", - "block_index": 142, - "source": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "tx_index": 33, + "tx_hash": "1e7bea513de78cabf444b974fdb0efb4304b18bd990a889d7a0f8b0e3d21b6ea", + "block_index": 147, + "source": "bcrt1qeshrsce6vyx833j2p85aesnx0aj9sxjtt79jak", "asset": "XCP", "give_quantity": 1, "escrow_quantity": 10000, "satoshirate": 1, "status": 0, - "give_remaining": 10000, - "oracle_address": null, + "give_remaining": 9334, + "oracle_address": "bcrt1qeshrsce6vyx833j2p85aesnx0aj9sxjtt79jak", "last_status_tx_hash": null, - "origin": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", - "dispense_count": 0, + "origin": "bcrt1qeshrsce6vyx833j2p85aesnx0aj9sxjtt79jak", + "dispense_count": 1, "last_status_tx_source": null, "close_block_index": null, "confirmed": true, - "fiat_price": null, - "oracle_price": null, - "fiat_unit": null, - "oracle_price_last_updated": null, - "satoshi_price": 1, - "block_time": 1726509684, + "fiat_price": 0.01, + "oracle_price": 66600.0, + "fiat_unit": "USD", + "oracle_price_last_updated": 138, + "satoshi_price": 16, + "block_time": 1727200827, "asset_info": { "divisible": true, "asset_longname": null, @@ -12397,35 +12784,35 @@ Returns all dispensers "issuer": null }, "give_quantity_normalized": "0.00000001", - "give_remaining_normalized": "0.00010000", + "give_remaining_normalized": "0.00009334", "escrow_quantity_normalized": "0.00010000", "satoshirate_normalized": "0.00000001", - "satoshi_price_normalized": "0.00000001" + "satoshi_price_normalized": "0.00000016" }, { - "tx_index": 26, - "tx_hash": "e4fcdf91df3b0bbacb56d49f65bba5e59c88e92c829d7c8b3f251d5e20457f4e", - "block_index": 141, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "tx_index": 30, + "tx_hash": "e6a18e565cab14aec4ba641f48a311c8643793f8fa84b25141ced517eaefc6f9", + "block_index": 150, + "source": "mtFzzdWHLZqWVVMGKENQscisyMTejQamk6", "asset": "XCP", "give_quantity": 1, - "escrow_quantity": 10000, + "escrow_quantity": 10, "satoshirate": 1, "status": 10, "give_remaining": 0, "oracle_address": null, - "last_status_tx_hash": null, - "origin": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "dispense_count": 2, - "last_status_tx_source": null, - "close_block_index": null, + "last_status_tx_hash": "d2fb8bc72b0250cee9a35d9f657f0d4eb12286a93b930f502d166903f57fafb9", + "origin": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "dispense_count": 0, + "last_status_tx_source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "close_block_index": "150", "confirmed": true, "fiat_price": null, "oracle_price": null, "fiat_unit": null, "oracle_price_last_updated": null, "satoshi_price": 1, - "block_time": 1726509680, + "block_time": 1727200840, "asset_info": { "divisible": true, "asset_longname": null, @@ -12435,7 +12822,7 @@ Returns all dispensers }, "give_quantity_normalized": "0.00000001", "give_remaining_normalized": "0.00000000", - "escrow_quantity_normalized": "0.00010000", + "escrow_quantity_normalized": "0.00000010", "satoshirate_normalized": "0.00000001", "satoshi_price_normalized": "0.00000001" } @@ -12450,7 +12837,7 @@ Returns all dispensers Returns the dispenser information by tx_hash + Parameters - + dispenser_hash: `e4fcdf91df3b0bbacb56d49f65bba5e59c88e92c829d7c8b3f251d5e20457f4e` (str, required) - The hash of the dispenser to return + + dispenser_hash: `3df6d90991175a0c2aabbe0dc87cacd5d92c90cb996ce5b1514492f2585c61fc` (str, required) - The hash of the dispenser to return + verbose: `true` (bool, optional) - Include asset and dispenser info and normalized quantities in the response. + Default: `false` + show_unconfirmed (bool, optional) - Include results from Mempool. @@ -12462,9 +12849,9 @@ Returns the dispenser information by tx_hash { "result": { "tx_index": 26, - "tx_hash": "e4fcdf91df3b0bbacb56d49f65bba5e59c88e92c829d7c8b3f251d5e20457f4e", + "tx_hash": "3df6d90991175a0c2aabbe0dc87cacd5d92c90cb996ce5b1514492f2585c61fc", "block_index": 141, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "asset": "XCP", "give_quantity": 1, "escrow_quantity": 10000, @@ -12473,7 +12860,7 @@ Returns the dispenser information by tx_hash "give_remaining": 0, "oracle_address": null, "last_status_tx_hash": null, - "origin": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "origin": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "dispense_count": 2, "last_status_tx_source": null, "close_block_index": null, @@ -12483,7 +12870,7 @@ Returns the dispenser information by tx_hash "fiat_unit": null, "oracle_price_last_updated": null, "satoshi_price": 1, - "block_time": 1726509680, + "block_time": 1727200803, "asset_info": { "divisible": true, "asset_longname": null, @@ -12505,7 +12892,7 @@ Returns the dispenser information by tx_hash Returns the dispenses of a dispenser + Parameters - + dispenser_hash: `e4fcdf91df3b0bbacb56d49f65bba5e59c88e92c829d7c8b3f251d5e20457f4e` (str, required) - The hash of the dispenser to return + + dispenser_hash: `3df6d90991175a0c2aabbe0dc87cacd5d92c90cb996ce5b1514492f2585c61fc` (str, required) - The hash of the dispenser to return + cursor (str, optional) - The last index of the dispenses to return + Default: `None` + limit: `5` (int, optional) - The maximum number of dispenses to return @@ -12525,19 +12912,19 @@ Returns the dispenses of a dispenser { "tx_index": 28, "dispense_index": 0, - "tx_hash": "ab0fd3f5a4ce7ef637dfa113da8a1d7ca7f9b7b8ef7bea07721c55ef2aee9d2f", + "tx_hash": "6ae257db1a77e44eb808057e9944b6f6e15eebf699db2c77f3009100a550b7fa", "block_index": 141, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "destination": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "destination": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", "asset": "XCP", "dispense_quantity": 4000, - "dispenser_tx_hash": "e4fcdf91df3b0bbacb56d49f65bba5e59c88e92c829d7c8b3f251d5e20457f4e", + "dispenser_tx_hash": "3df6d90991175a0c2aabbe0dc87cacd5d92c90cb996ce5b1514492f2585c61fc", "btc_amount": 4000, "confirmed": true, "dispenser": { "tx_index": 26, "block_index": 141, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "give_quantity": 1, "escrow_quantity": 10000, "satoshirate": 1, @@ -12545,7 +12932,7 @@ Returns the dispenses of a dispenser "give_remaining": 0, "oracle_address": null, "last_status_tx_hash": null, - "origin": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "origin": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "dispense_count": 2, "last_status_tx_source": null, "close_block_index": null, @@ -12560,7 +12947,7 @@ Returns the dispenses of a dispenser "satoshirate_normalized": "0.00000001", "satoshi_price_normalized": "0.00000001" }, - "block_time": 1726509680, + "block_time": 1727200803, "asset_info": { "divisible": true, "asset_longname": null, @@ -12574,19 +12961,19 @@ Returns the dispenses of a dispenser { "tx_index": 27, "dispense_index": 0, - "tx_hash": "54eee03a80a18a6e816f27408ce071f7c7fefac72abc8ade14e835ad5f1563ce", + "tx_hash": "2a07cfa93bced14f59b80e10872f5fe4a406622078c0b85295c5c4149820d102", "block_index": 140, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "destination": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "destination": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", "asset": "XCP", "dispense_quantity": 6000, - "dispenser_tx_hash": "e4fcdf91df3b0bbacb56d49f65bba5e59c88e92c829d7c8b3f251d5e20457f4e", + "dispenser_tx_hash": "3df6d90991175a0c2aabbe0dc87cacd5d92c90cb996ce5b1514492f2585c61fc", "btc_amount": 6000, "confirmed": true, "dispenser": { "tx_index": 26, "block_index": 141, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "give_quantity": 1, "escrow_quantity": 10000, "satoshirate": 1, @@ -12594,7 +12981,7 @@ Returns the dispenses of a dispenser "give_remaining": 0, "oracle_address": null, "last_status_tx_hash": null, - "origin": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "origin": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "dispense_count": 2, "last_status_tx_source": null, "close_block_index": null, @@ -12609,7 +12996,7 @@ Returns the dispenses of a dispenser "satoshirate_normalized": "0.00000001", "satoshi_price_normalized": "0.00000001" }, - "block_time": 1726509665, + "block_time": 1727200798, "asset_info": { "divisible": true, "asset_longname": null, @@ -12650,21 +13037,21 @@ Returns all the dividends { "result": [ { - "tx_index": 40, - "tx_hash": "65e4ec441796883270c7bb0f18ca610e54b1ad0b3ae8a33e572bca985f65ee00", - "block_index": 153, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "tx_index": 41, + "tx_hash": "1b9303b3959067c0857fe1abb4fdd4b3684c7534c12691382004cc31a9afcca4", + "block_index": 154, + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "asset": "MYASSETA", "dividend_asset": "XCP", "quantity_per_unit": 100000000, "fee_paid": 40000, "status": "valid", "confirmed": true, - "block_time": 1726509732, + "block_time": 1727200857, "asset_info": { "asset_longname": null, "description": "My super asset A", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, @@ -12689,7 +13076,7 @@ Returns all the dividends Returns a dividend by its hash + Parameters - + dividend_hash: `65e4ec441796883270c7bb0f18ca610e54b1ad0b3ae8a33e572bca985f65ee00` (str, required) - The hash of the dividend to return + + dividend_hash: `1b9303b3959067c0857fe1abb4fdd4b3684c7534c12691382004cc31a9afcca4` (str, required) - The hash of the dividend to return + verbose: `true` (bool, optional) - Include asset and dispenser info and normalized quantities in the response. + Default: `false` + show_unconfirmed (bool, optional) - Include results from Mempool. @@ -12700,21 +13087,21 @@ Returns a dividend by its hash ``` { "result": { - "tx_index": 40, - "tx_hash": "65e4ec441796883270c7bb0f18ca610e54b1ad0b3ae8a33e572bca985f65ee00", - "block_index": 153, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "tx_index": 41, + "tx_hash": "1b9303b3959067c0857fe1abb4fdd4b3684c7534c12691382004cc31a9afcca4", + "block_index": 154, + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "asset": "MYASSETA", "dividend_asset": "XCP", "quantity_per_unit": 100000000, "fee_paid": 40000, "status": "valid", "confirmed": true, - "block_time": 1726509732, + "block_time": 1727200857, "asset_info": { "asset_longname": null, "description": "My super asset A", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, @@ -12736,7 +13123,7 @@ Returns a dividend by its hash Returns a dividend distribution by its hash + Parameters - + dividend_hash: `65e4ec441796883270c7bb0f18ca610e54b1ad0b3ae8a33e572bca985f65ee00` (str, required) - The hash of the dividend distribution to return + + dividend_hash: `1b9303b3959067c0857fe1abb4fdd4b3684c7534c12691382004cc31a9afcca4` (str, required) - The hash of the dividend distribution to return + cursor (str, optional) - The last index of the credit to return + Default: `None` + limit: `5` (int, optional) - The maximum number of credit to return @@ -12754,17 +13141,17 @@ Returns a dividend distribution by its hash { "result": [ { - "block_index": 153, + "block_index": 154, "address": null, "asset": "XCP", "quantity": 1500000000, "calling_function": "dividend", - "event": "65e4ec441796883270c7bb0f18ca610e54b1ad0b3ae8a33e572bca985f65ee00", - "tx_index": 40, - "utxo": "9d34a868637906281a292d50facdb8551872a2d08cd28cf7a895f10f80cb0b32:0", - "utxo_address": "bcrt1qlm44vh2ynrtqwh8j2mptwrzzfd04czsya4wxcd", + "event": "1b9303b3959067c0857fe1abb4fdd4b3684c7534c12691382004cc31a9afcca4", + "tx_index": 41, + "utxo": "99ac4db802d5262ae35de8b542d298d4a28719ccffb6ffd8d462f40e8435bdd8:0", + "utxo_address": "bcrt1qeshrsce6vyx833j2p85aesnx0aj9sxjtt79jak", "confirmed": true, - "block_time": 1726509732, + "block_time": 1727200857, "asset_info": { "divisible": true, "asset_longname": null, @@ -12775,17 +13162,17 @@ Returns a dividend distribution by its hash "quantity_normalized": "15.00000000" }, { - "block_index": 153, - "address": "bcrt1qghqkpk28xhsruvxjphq0ecx2ec35v90uksf2j0", + "block_index": 154, + "address": "bcrt1qe4v63z8qa2kvy5yzt4ssr8zhwxgqw84j8nmhvg", "asset": "XCP", "quantity": 500000000, "calling_function": "dividend", - "event": "65e4ec441796883270c7bb0f18ca610e54b1ad0b3ae8a33e572bca985f65ee00", - "tx_index": 40, + "event": "1b9303b3959067c0857fe1abb4fdd4b3684c7534c12691382004cc31a9afcca4", + "tx_index": 41, "utxo": null, "utxo_address": null, "confirmed": true, - "block_time": 1726509732, + "block_time": 1727200857, "asset_info": { "divisible": true, "asset_longname": null, @@ -12810,7 +13197,7 @@ Returns all events + Parameters + event_name (str, optional) - Comma separated list of events to return + Default: `None` - + cursor: `535` (str, optional) - The last event index to return + + cursor: `542` (str, optional) - The last event index to return + Default: `None` + limit: `5` (int, optional) - The maximum number of events to return + Default: `100` @@ -12827,45 +13214,45 @@ Returns all events { "result": [ { - "event_index": 535, + "event_index": 542, "event": "BLOCK_PARSED", "params": { - "block_index": 193, - "ledger_hash": "260bca5241d162936ae20e643b78cd69f7c3d74370745be7447cbaae1dde9a9c", - "messages_hash": "a5b39b3745218a45506fcbd2397ab67628c6263f2173159bdf4b259978114bde", + "block_index": 194, + "ledger_hash": "d16329e826a589a6af06767a820f5914ee69e22398c8612ed0c73909a1ab9b1f", + "messages_hash": "1bc8906db34e5bf45f47eca127e2b4cc60e46bbc8cf4301617e02c6f29b32301", "transaction_count": 1, - "txlist_hash": "1ecd81dbebae4723fab572ad7f59f8712a540b524662de521ea50631e83b7e7b", - "block_time": 1726509912 + "txlist_hash": "555a7b8103a776f23b649ec297d2177fe885443dc976750a259547be47cd26e7", + "block_time": 1727201016 }, "tx_hash": null, - "block_index": 193, - "block_time": 1726509912 + "block_index": 194, + "block_time": 1727201016 }, { - "event_index": 534, + "event_index": 541, "event": "TRANSACTION_PARSED", "params": { "supported": true, - "tx_hash": "f79c39d2a2896a86ef0bb2370101c664b69f2b9387afcd377d8226b839d419ce", - "tx_index": 59 + "tx_hash": "da0a0e76bfc982e2bbed2679a71f4e2d3ebc01140b448f430bb01b50f7ceaabb", + "tx_index": 60 }, - "tx_hash": "f79c39d2a2896a86ef0bb2370101c664b69f2b9387afcd377d8226b839d419ce", - "block_index": 193, - "block_time": 1726509912 + "tx_hash": "da0a0e76bfc982e2bbed2679a71f4e2d3ebc01140b448f430bb01b50f7ceaabb", + "block_index": 194, + "block_time": 1727201016 }, { - "event_index": 533, + "event_index": 540, "event": "ASSET_DESTRUCTION", "params": { "asset": "XCP", - "block_index": 193, + "block_index": 194, "quantity": 1, - "source": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "source": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "status": "valid", "tag": "64657374726f79", - "tx_hash": "f79c39d2a2896a86ef0bb2370101c664b69f2b9387afcd377d8226b839d419ce", - "tx_index": 59, - "block_time": 1726509912, + "tx_hash": "da0a0e76bfc982e2bbed2679a71f4e2d3ebc01140b448f430bb01b50f7ceaabb", + "tx_index": 60, + "block_time": 1727201016, "asset_info": { "divisible": true, "asset_longname": null, @@ -12875,24 +13262,24 @@ Returns all events }, "quantity_normalized": "0.00000001" }, - "tx_hash": "f79c39d2a2896a86ef0bb2370101c664b69f2b9387afcd377d8226b839d419ce", - "block_index": 193, - "block_time": 1726509912 + "tx_hash": "da0a0e76bfc982e2bbed2679a71f4e2d3ebc01140b448f430bb01b50f7ceaabb", + "block_index": 194, + "block_time": 1727201016 }, { - "event_index": 532, + "event_index": 539, "event": "DEBIT", "params": { "action": "destroy", - "address": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "address": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "asset": "XCP", - "block_index": 193, - "event": "f79c39d2a2896a86ef0bb2370101c664b69f2b9387afcd377d8226b839d419ce", + "block_index": 194, + "event": "da0a0e76bfc982e2bbed2679a71f4e2d3ebc01140b448f430bb01b50f7ceaabb", "quantity": 1, - "tx_index": 59, + "tx_index": 60, "utxo": null, "utxo_address": null, - "block_time": 1726509912, + "block_time": 1727201016, "asset_info": { "divisible": true, "asset_longname": null, @@ -12902,25 +13289,25 @@ Returns all events }, "quantity_normalized": "0.00000001" }, - "tx_hash": "f79c39d2a2896a86ef0bb2370101c664b69f2b9387afcd377d8226b839d419ce", - "block_index": 193, - "block_time": 1726509912 + "tx_hash": "da0a0e76bfc982e2bbed2679a71f4e2d3ebc01140b448f430bb01b50f7ceaabb", + "block_index": 194, + "block_time": 1727201016 }, { - "event_index": 531, + "event_index": 538, "event": "NEW_TRANSACTION", "params": { - "block_hash": "0c078dccb9971fd739e4646df2613ddf86bea7f006a0ec0aabf2253f9f835f58", - "block_index": 193, - "block_time": 1726509912, + "block_hash": "52ace614bdf700970fae116cbd930af95fe09c4faee117d3d3c0c24860eedf93", + "block_index": 194, + "block_time": 1727201016, "btc_amount": 0, "data": "6e0000000000000001000000000000000164657374726f79", "destination": "", "fee": 10000, - "source": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", - "tx_hash": "f79c39d2a2896a86ef0bb2370101c664b69f2b9387afcd377d8226b839d419ce", - "tx_index": 59, - "utxos_info": "f79c39d2a2896a86ef0bb2370101c664b69f2b9387afcd377d8226b839d419ce:1", + "source": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", + "tx_hash": "da0a0e76bfc982e2bbed2679a71f4e2d3ebc01140b448f430bb01b50f7ceaabb", + "tx_index": 60, + "utxos_info": "da0a0e76bfc982e2bbed2679a71f4e2d3ebc01140b448f430bb01b50f7ceaabb:1", "unpacked_data": { "message_type": "destroy", "message_type_id": 110, @@ -12940,13 +13327,13 @@ Returns all events }, "btc_amount_normalized": "0.00000000" }, - "tx_hash": "f79c39d2a2896a86ef0bb2370101c664b69f2b9387afcd377d8226b839d419ce", - "block_index": 193, - "block_time": 1726509912 + "tx_hash": "da0a0e76bfc982e2bbed2679a71f4e2d3ebc01140b448f430bb01b50f7ceaabb", + "block_index": 194, + "block_time": 1727201016 } ], - "next_cursor": 530, - "result_count": 536 + "next_cursor": 537, + "result_count": 543 } ``` @@ -12955,7 +13342,7 @@ Returns all events Returns the event of an index + Parameters - + event_index: `535` (int, required) - The index of the event to return + + event_index: `542` (int, required) - The index of the event to return + verbose: `true` (bool, optional) - Include asset and dispenser info and normalized quantities in the response. + Default: `false` + show_unconfirmed (bool, optional) - Include results from Mempool. @@ -12966,19 +13353,19 @@ Returns the event of an index ``` { "result": { - "event_index": 535, + "event_index": 542, "event": "BLOCK_PARSED", "params": { - "block_index": 193, - "ledger_hash": "260bca5241d162936ae20e643b78cd69f7c3d74370745be7447cbaae1dde9a9c", - "messages_hash": "a5b39b3745218a45506fcbd2397ab67628c6263f2173159bdf4b259978114bde", + "block_index": 194, + "ledger_hash": "d16329e826a589a6af06767a820f5914ee69e22398c8612ed0c73909a1ab9b1f", + "messages_hash": "1bc8906db34e5bf45f47eca127e2b4cc60e46bbc8cf4301617e02c6f29b32301", "transaction_count": 1, - "txlist_hash": "1ecd81dbebae4723fab572ad7f59f8712a540b524662de521ea50631e83b7e7b", - "block_time": 1726509912 + "txlist_hash": "555a7b8103a776f23b649ec297d2177fe885443dc976750a259547be47cd26e7", + "block_time": 1727201016 }, "tx_hash": null, - "block_index": 193, - "block_time": 1726509912 + "block_index": 194, + "block_time": 1727201016 } } ``` @@ -13010,7 +13397,7 @@ Returns the event counts of all blocks }, { "event": "TRANSACTION_PARSED", - "event_count": 47 + "event_count": 48 }, { "event": "SWEEP", @@ -13036,7 +13423,7 @@ Returns the events filtered by event name + Parameters + event: `CREDIT` (str, required) - The event to return - + cursor: `535` (str, optional) - The last event index to return + + cursor: `542` (str, optional) - The last event index to return + Default: `None` + limit: `5` (int, optional) - The maximum number of events to return + Default: `100` @@ -13053,19 +13440,19 @@ Returns the events filtered by event name { "result": [ { - "event_index": 526, + "event_index": 533, "event": "CREDIT", "params": { - "address": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "address": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "asset": "XCP", - "block_index": 192, + "block_index": 193, "calling_function": "sweep", - "event": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", + "event": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", "quantity": 74499387833, - "tx_index": 58, + "tx_index": 59, "utxo": null, "utxo_address": null, - "block_time": 1726509908, + "block_time": 1727201012, "asset_info": { "divisible": true, "asset_longname": null, @@ -13075,78 +13462,78 @@ Returns the events filtered by event name }, "quantity_normalized": "744.99388000" }, - "tx_hash": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", - "block_index": 192, - "block_time": 1726509908 + "tx_hash": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", + "block_index": 193, + "block_time": 1727201012 }, { - "event_index": 524, + "event_index": 531, "event": "CREDIT", "params": { - "address": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "address": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "asset": "MYASSETA", - "block_index": 192, + "block_index": 193, "calling_function": "sweep", - "event": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", + "event": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", "quantity": 10, - "tx_index": 58, + "tx_index": 59, "utxo": null, "utxo_address": null, - "block_time": 1726509908, + "block_time": 1727201012, "asset_info": { "asset_longname": null, "description": "My super asset A", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, "quantity_normalized": "0.00000010" }, - "tx_hash": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", - "block_index": 192, - "block_time": 1726509908 + "tx_hash": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", + "block_index": 193, + "block_time": 1727201012 }, { - "event_index": 522, + "event_index": 529, "event": "CREDIT", "params": { - "address": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "address": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "asset": "FAIRMINTA", - "block_index": 192, + "block_index": 193, "calling_function": "sweep", - "event": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", + "event": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", "quantity": 500000000, - "tx_index": 58, + "tx_index": 59, "utxo": null, "utxo_address": null, - "block_time": 1726509908, + "block_time": 1727201012, "asset_info": { "asset_longname": "", "description": "", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, "quantity_normalized": "5.00000000" }, - "tx_hash": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", - "block_index": 192, - "block_time": 1726509908 + "tx_hash": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", + "block_index": 193, + "block_time": 1727201012 }, { - "event_index": 508, + "event_index": 515, "event": "CREDIT", "params": { - "address": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "address": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "asset": "XCP", - "block_index": 190, + "block_index": 191, "calling_function": "cancel order", - "event": "5e324d551a694d3f6ffc9c67b3db8817d470ba32257047ddee237d3d07c1a1e2", + "event": "83919cf82dd5eb1e2e1f6d3f3f752d34d41636ed00ab8ff78369eb81475b8e57", "quantity": 1000, - "tx_index": 56, + "tx_index": 57, "utxo": null, "utxo_address": null, - "block_time": 1726509899, + "block_time": 1727201003, "asset_info": { "divisible": true, "asset_longname": null, @@ -13156,24 +13543,24 @@ Returns the events filtered by event name }, "quantity_normalized": "0.00001000" }, - "tx_hash": "18a9b72fc9e67470cff556297fa5f3dd95ea7d472693f42d597db7ad598c05ec", - "block_index": 190, - "block_time": 1726509899 + "tx_hash": "1d314894d90254c43598647c4ebca9b8f3f0d20a522eb8130d9955e95ea1c197", + "block_index": 191, + "block_time": 1727201003 }, { - "event_index": 491, + "event_index": 498, "event": "CREDIT", "params": { - "address": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", + "address": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", "asset": "XCP", - "block_index": 188, + "block_index": 189, "calling_function": "mpma send", - "event": "e8fda956958ed7de0a98e42d8d28349b9c7b5e20da375c185c5830526df6594f", + "event": "4cd813fae2558e89f2f9411f38daa7d4c10c94a267daa38155cf18fb4d9fd055", "quantity": 10, - "tx_index": 54, + "tx_index": 55, "utxo": null, "utxo_address": null, - "block_time": 1726509890, + "block_time": 1727200995, "asset_info": { "divisible": true, "asset_longname": null, @@ -13183,13 +13570,13 @@ Returns the events filtered by event name }, "quantity_normalized": "0.00000010" }, - "tx_hash": "e8fda956958ed7de0a98e42d8d28349b9c7b5e20da375c185c5830526df6594f", - "block_index": 188, - "block_time": 1726509890 + "tx_hash": "4cd813fae2558e89f2f9411f38daa7d4c10c94a267daa38155cf18fb4d9fd055", + "block_index": 189, + "block_time": 1727200995 } ], - "next_cursor": 490, - "result_count": 67 + "next_cursor": 497, + "result_count": 68 } ``` @@ -13210,7 +13597,7 @@ Returns the number of events { "result": { "event": "CREDIT", - "event_count": 67 + "event_count": 68 } } ``` @@ -13239,29 +13626,29 @@ Returns all the dispenses { "result": [ { - "tx_index": 33, + "tx_index": 34, "dispense_index": 0, - "tx_hash": "516159be9547a87a0ab0ce652ce9daebb10796eb67509fa50780dca28d813535", - "block_index": 146, - "source": "bcrt1qlm44vh2ynrtqwh8j2mptwrzzfd04czsya4wxcd", - "destination": "bcrt1qlqcrlvw5t7cnj8r9hjl0qq67c2fyk5kvfra90p", + "tx_hash": "6b21482e6e461d42ded8e74826ff88a8b23621baaa45e714c7c2a20457bd6c12", + "block_index": 147, + "source": "bcrt1qeshrsce6vyx833j2p85aesnx0aj9sxjtt79jak", + "destination": "bcrt1qfvucymcd7u04hpd7eafsmxwnashcmaqs54q79p", "asset": "XCP", "dispense_quantity": 666, - "dispenser_tx_hash": "5c8374a3882f222038bbf9a0cce7589e84b790915b9228d66af1a5b0eb61ea2d", + "dispenser_tx_hash": "1e7bea513de78cabf444b974fdb0efb4304b18bd990a889d7a0f8b0e3d21b6ea", "btc_amount": 10000, "confirmed": true, "dispenser": { - "tx_index": 32, - "block_index": 146, - "source": "bcrt1qlm44vh2ynrtqwh8j2mptwrzzfd04czsya4wxcd", + "tx_index": 33, + "block_index": 147, + "source": "bcrt1qeshrsce6vyx833j2p85aesnx0aj9sxjtt79jak", "give_quantity": 1, "escrow_quantity": 10000, "satoshirate": 1, "status": 0, "give_remaining": 9334, - "oracle_address": "bcrt1qlm44vh2ynrtqwh8j2mptwrzzfd04czsya4wxcd", + "oracle_address": "bcrt1qeshrsce6vyx833j2p85aesnx0aj9sxjtt79jak", "last_status_tx_hash": null, - "origin": "bcrt1qlm44vh2ynrtqwh8j2mptwrzzfd04czsya4wxcd", + "origin": "bcrt1qeshrsce6vyx833j2p85aesnx0aj9sxjtt79jak", "dispense_count": 1, "last_status_tx_source": null, "close_block_index": null, @@ -13276,7 +13663,7 @@ Returns all the dispenses "satoshirate_normalized": "0.00000001", "satoshi_price_normalized": "0.00000016" }, - "block_time": 1726509701, + "block_time": 1727200827, "asset_info": { "divisible": true, "asset_longname": null, @@ -13290,19 +13677,19 @@ Returns all the dispenses { "tx_index": 28, "dispense_index": 0, - "tx_hash": "ab0fd3f5a4ce7ef637dfa113da8a1d7ca7f9b7b8ef7bea07721c55ef2aee9d2f", + "tx_hash": "6ae257db1a77e44eb808057e9944b6f6e15eebf699db2c77f3009100a550b7fa", "block_index": 141, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "destination": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "destination": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", "asset": "XCP", "dispense_quantity": 4000, - "dispenser_tx_hash": "e4fcdf91df3b0bbacb56d49f65bba5e59c88e92c829d7c8b3f251d5e20457f4e", + "dispenser_tx_hash": "3df6d90991175a0c2aabbe0dc87cacd5d92c90cb996ce5b1514492f2585c61fc", "btc_amount": 4000, "confirmed": true, "dispenser": { "tx_index": 26, "block_index": 141, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "give_quantity": 1, "escrow_quantity": 10000, "satoshirate": 1, @@ -13310,7 +13697,7 @@ Returns all the dispenses "give_remaining": 0, "oracle_address": null, "last_status_tx_hash": null, - "origin": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "origin": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "dispense_count": 2, "last_status_tx_source": null, "close_block_index": null, @@ -13325,7 +13712,7 @@ Returns all the dispenses "satoshirate_normalized": "0.00000001", "satoshi_price_normalized": "0.00000001" }, - "block_time": 1726509680, + "block_time": 1727200803, "asset_info": { "divisible": true, "asset_longname": null, @@ -13339,19 +13726,19 @@ Returns all the dispenses { "tx_index": 27, "dispense_index": 0, - "tx_hash": "54eee03a80a18a6e816f27408ce071f7c7fefac72abc8ade14e835ad5f1563ce", + "tx_hash": "2a07cfa93bced14f59b80e10872f5fe4a406622078c0b85295c5c4149820d102", "block_index": 140, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "destination": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "destination": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", "asset": "XCP", "dispense_quantity": 6000, - "dispenser_tx_hash": "e4fcdf91df3b0bbacb56d49f65bba5e59c88e92c829d7c8b3f251d5e20457f4e", + "dispenser_tx_hash": "3df6d90991175a0c2aabbe0dc87cacd5d92c90cb996ce5b1514492f2585c61fc", "btc_amount": 6000, "confirmed": true, "dispenser": { "tx_index": 26, "block_index": 141, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "give_quantity": 1, "escrow_quantity": 10000, "satoshirate": 1, @@ -13359,7 +13746,7 @@ Returns all the dispenses "give_remaining": 0, "oracle_address": null, "last_status_tx_hash": null, - "origin": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "origin": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "dispense_count": 2, "last_status_tx_source": null, "close_block_index": null, @@ -13374,7 +13761,7 @@ Returns all the dispenses "satoshirate_normalized": "0.00000001", "satoshi_price_normalized": "0.00000001" }, - "block_time": 1726509665, + "block_time": 1727200798, "asset_info": { "divisible": true, "asset_longname": null, @@ -13415,11 +13802,11 @@ Returns all the sends include Enhanced and MPMA sends { "result": [ { - "tx_index": 54, - "tx_hash": "e8fda956958ed7de0a98e42d8d28349b9c7b5e20da375c185c5830526df6594f", - "block_index": 188, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "destination": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", + "tx_index": 55, + "tx_hash": "4cd813fae2558e89f2f9411f38daa7d4c10c94a267daa38155cf18fb4d9fd055", + "block_index": 189, + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "destination": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", "asset": "XCP", "quantity": 10, "status": "valid", @@ -13427,7 +13814,7 @@ Returns all the sends include Enhanced and MPMA sends "memo": null, "fee_paid": 0, "confirmed": true, - "block_time": 1726509890, + "block_time": 1727200995, "asset_info": { "divisible": true, "asset_longname": null, @@ -13439,11 +13826,11 @@ Returns all the sends include Enhanced and MPMA sends "fee_paid_normalized": "0.00000000" }, { - "tx_index": 54, - "tx_hash": "e8fda956958ed7de0a98e42d8d28349b9c7b5e20da375c185c5830526df6594f", - "block_index": 188, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "destination": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "tx_index": 55, + "tx_hash": "4cd813fae2558e89f2f9411f38daa7d4c10c94a267daa38155cf18fb4d9fd055", + "block_index": 189, + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "destination": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "asset": "MYASSETA", "quantity": 10, "status": "valid", @@ -13451,11 +13838,11 @@ Returns all the sends include Enhanced and MPMA sends "memo": null, "fee_paid": 0, "confirmed": true, - "block_time": 1726509890, + "block_time": 1727200995, "asset_info": { "asset_longname": null, "description": "My super asset A", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, @@ -13463,11 +13850,11 @@ Returns all the sends include Enhanced and MPMA sends "fee_paid_normalized": "0.00000000" }, { - "tx_index": 54, - "tx_hash": "e8fda956958ed7de0a98e42d8d28349b9c7b5e20da375c185c5830526df6594f", - "block_index": 188, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "destination": "bcrt1q3ds7n4l97tumdkgcr3vyhe04zaxce8ujr8fmr2", + "tx_index": 55, + "tx_hash": "4cd813fae2558e89f2f9411f38daa7d4c10c94a267daa38155cf18fb4d9fd055", + "block_index": 189, + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "destination": "bcrt1q9cf2ed4wk37qye08wlppw39l7prxws7afa3krk", "asset": "MYASSETA", "quantity": 10, "status": "valid", @@ -13475,11 +13862,11 @@ Returns all the sends include Enhanced and MPMA sends "memo": null, "fee_paid": 0, "confirmed": true, - "block_time": 1726509890, + "block_time": 1727200995, "asset_info": { "asset_longname": null, "description": "My super asset A", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, @@ -13487,11 +13874,11 @@ Returns all the sends include Enhanced and MPMA sends "fee_paid_normalized": "0.00000000" }, { - "tx_index": 53, - "tx_hash": "f96235259f9722ca1558a6601a39e235c6a60fa33d67cc9e5039890d0ab2fe03", - "block_index": 187, - "source": "bcrt1q3ds7n4l97tumdkgcr3vyhe04zaxce8ujr8fmr2", - "destination": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "tx_index": 54, + "tx_hash": "e7989369eefaec09cec5770c6128eb548023225e666d57bbed74b3d03240e9c3", + "block_index": 188, + "source": "bcrt1q9cf2ed4wk37qye08wlppw39l7prxws7afa3krk", + "destination": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "asset": "XCP", "quantity": 10000, "status": "valid", @@ -13499,7 +13886,7 @@ Returns all the sends include Enhanced and MPMA sends "memo": null, "fee_paid": 0, "confirmed": true, - "block_time": 1726509886, + "block_time": 1727200991, "asset_info": { "divisible": true, "asset_longname": null, @@ -13511,11 +13898,11 @@ Returns all the sends include Enhanced and MPMA sends "fee_paid_normalized": "0.00000000" }, { - "tx_index": 42, - "tx_hash": "f48f32cde583a1233260e9d07c858726031b0aadb7550a061602ad6cffd5f3a7", - "block_index": 155, - "source": "3f0027dbe860c95e4cea6d1c83db0d8ea3acf7adbeacefd7e8eb56e9399d879b:0", - "destination": "f48f32cde583a1233260e9d07c858726031b0aadb7550a061602ad6cffd5f3a7:1", + "tx_index": 43, + "tx_hash": "ca11a87b6b09143626cafffbc32be68d26d43df5facbb48aa919ce857c1aa739", + "block_index": 156, + "source": "9d347b5453e8bf2608768d2b109367ce3aaf5a12d4bc63526fa6fb59eab1901d:0", + "destination": "ca11a87b6b09143626cafffbc32be68d26d43df5facbb48aa919ce857c1aa739:1", "asset": "XCP", "quantity": 1500000000, "status": "valid", @@ -13523,7 +13910,7 @@ Returns all the sends include Enhanced and MPMA sends "memo": null, "fee_paid": 0, "confirmed": true, - "block_time": 1726509741, + "block_time": 1727200867, "asset_info": { "divisible": true, "asset_longname": null, @@ -13564,15 +13951,15 @@ Returns all the issuances { "result": [ { - "tx_index": 46, - "tx_hash": "3f80ba6dc66be4e5b604bbf8e1e2007161960069d871f7cb00b1d24f9f090491", + "tx_index": 47, + "tx_hash": "efd20bb15eb6a7ce22645a0fb33b1873d00dc0cdeb9533d37037e0fd6a63f512", "msg_index": 0, - "block_index": 159, + "block_index": 160, "asset": "A95428956980101314", "quantity": 100000000000, "divisible": true, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "transfer": false, "callable": false, "call_date": 0, @@ -13587,20 +13974,20 @@ Returns all the issuances "fair_minting": false, "asset_events": "creation", "confirmed": true, - "block_time": 1726509780, + "block_time": 1727200884, "quantity_normalized": "1000.00000000", "fee_paid_normalized": "0.00000000" }, { - "tx_index": 45, - "tx_hash": "99d6840da9077ad147d3cb8e3a527ebcb05445b5e72d0fa4f9429f91a2ed5f9f", + "tx_index": 46, + "tx_hash": "af9f8fab45dd2130f26f25edacaa4de3e37feaa202ad6a578e5a60d0aa935b46", "msg_index": 0, - "block_index": 158, + "block_index": 159, "asset": "TESTLOCKDESC", "quantity": 0, "divisible": true, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "transfer": false, "callable": false, "call_date": 0, @@ -13615,20 +14002,20 @@ Returns all the issuances "fair_minting": false, "asset_events": "lock_description reissuance", "confirmed": true, - "block_time": 1726509775, + "block_time": 1727200880, "quantity_normalized": "0.00000000", "fee_paid_normalized": "0.00000000" }, { - "tx_index": 44, - "tx_hash": "edf7eb0a60e46ad53360d769c00fbd350628dff893bb6f1869570c9fdcfc71af", + "tx_index": 45, + "tx_hash": "54776b690fc35e38368ab8ddb01f39437d6ad2177f025473e278802b9748e23c", "msg_index": 0, - "block_index": 157, + "block_index": 158, "asset": "A95428959745315388", "quantity": 0, "divisible": true, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "transfer": false, "callable": false, "call_date": 0, @@ -13643,20 +14030,20 @@ Returns all the issuances "fair_minting": false, "asset_events": "creation", "confirmed": true, - "block_time": 1726509760, + "block_time": 1727200875, "quantity_normalized": "0.00000000", "fee_paid_normalized": "0.00000000" }, { - "tx_index": 43, - "tx_hash": "23d681cb0c9d9310fd8150fcabf440c84cae363db926d0fcde70cbe12373f96f", + "tx_index": 44, + "tx_hash": "e12a079169fa7227aca6b168eafdf85cc67738b746b00fb0efa698d2c977b8f1", "msg_index": 0, - "block_index": 156, + "block_index": 157, "asset": "TESTLOCKDESC", "quantity": 10000000000, "divisible": true, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "transfer": false, "callable": false, "call_date": 0, @@ -13671,20 +14058,20 @@ Returns all the issuances "fair_minting": false, "asset_events": "creation", "confirmed": true, - "block_time": 1726509746, + "block_time": 1727200871, "quantity_normalized": "100.00000000", "fee_paid_normalized": "0.50000000" }, { - "tx_index": 42, - "tx_hash": "f48f32cde583a1233260e9d07c858726031b0aadb7550a061602ad6cffd5f3a7", + "tx_index": 43, + "tx_hash": "ca11a87b6b09143626cafffbc32be68d26d43df5facbb48aa919ce857c1aa739", "msg_index": 0, - "block_index": 155, + "block_index": 156, "asset": "MYASSETB", "quantity": 100000000000, "divisible": true, - "source": "bcrt1qrqg60l5vguevyqtnw4ym5hdth8jm4zmk0fxn99", - "issuer": "bcrt1qrqg60l5vguevyqtnw4ym5hdth8jm4zmk0fxn99", + "source": "bcrt1qtwywdknya042p0342nhnjk05557lxwysfw6vuj", + "issuer": "bcrt1qtwywdknya042p0342nhnjk05557lxwysfw6vuj", "transfer": false, "callable": false, "call_date": 0, @@ -13699,7 +14086,7 @@ Returns all the issuances "fair_minting": false, "asset_events": "creation", "confirmed": true, - "block_time": 1726509741, + "block_time": 1727200867, "quantity_normalized": "1000.00000000", "fee_paid_normalized": "0.50000000" } @@ -13714,7 +14101,7 @@ Returns all the issuances Returns the issuances of a block + Parameters - + tx_hash: `3f80ba6dc66be4e5b604bbf8e1e2007161960069d871f7cb00b1d24f9f090491` (str, required) - The hash of the transaction to return + + tx_hash: `efd20bb15eb6a7ce22645a0fb33b1873d00dc0cdeb9533d37037e0fd6a63f512` (str, required) - The hash of the transaction to return + verbose: `true` (bool, optional) - Include asset and dispenser info and normalized quantities in the response. + Default: `false` + show_unconfirmed (bool, optional) - Include results from Mempool. @@ -13725,15 +14112,15 @@ Returns the issuances of a block ``` { "result": { - "tx_index": 46, - "tx_hash": "3f80ba6dc66be4e5b604bbf8e1e2007161960069d871f7cb00b1d24f9f090491", + "tx_index": 47, + "tx_hash": "efd20bb15eb6a7ce22645a0fb33b1873d00dc0cdeb9533d37037e0fd6a63f512", "msg_index": 0, - "block_index": 159, + "block_index": 160, "asset": "A95428956980101314", "quantity": 100000000000, "divisible": true, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "transfer": false, "callable": false, "call_date": 0, @@ -13748,7 +14135,7 @@ Returns the issuances of a block "fair_minting": false, "asset_events": "creation", "confirmed": true, - "block_time": 1726509780, + "block_time": 1727200884, "quantity_normalized": "1000.00000000", "fee_paid_normalized": "0.00000000" } @@ -13779,17 +14166,17 @@ Returns all sweeps { "result": [ { - "tx_index": 58, - "tx_hash": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", - "block_index": 192, - "source": "bcrt1q3ds7n4l97tumdkgcr3vyhe04zaxce8ujr8fmr2", - "destination": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "tx_index": 59, + "tx_hash": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", + "block_index": 193, + "source": "bcrt1q9cf2ed4wk37qye08wlppw39l7prxws7afa3krk", + "destination": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "flags": 1, "status": "valid", "memo": "sweep my assets", "fee_paid": 600000, "confirmed": true, - "block_time": 1726509908, + "block_time": 1727201012, "fee_paid_normalized": "0.00600000" } ], @@ -13803,7 +14190,7 @@ Returns all sweeps Returns the sweeps of a transaction + Parameters - + tx_hash: `dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b` (str, required) - The hash of the transaction to return + + tx_hash: `ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774` (str, required) - The hash of the transaction to return + verbose: `true` (bool, optional) - Include asset and dispenser info and normalized quantities in the response. + Default: `false` + show_unconfirmed (bool, optional) - Include results from Mempool. @@ -13815,17 +14202,17 @@ Returns the sweeps of a transaction { "result": [ { - "tx_index": 58, - "tx_hash": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", - "block_index": 192, - "source": "bcrt1q3ds7n4l97tumdkgcr3vyhe04zaxce8ujr8fmr2", - "destination": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "tx_index": 59, + "tx_hash": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", + "block_index": 193, + "source": "bcrt1q9cf2ed4wk37qye08wlppw39l7prxws7afa3krk", + "destination": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "flags": 1, "status": "valid", "memo": "sweep my assets", "fee_paid": 600000, "confirmed": true, - "block_time": 1726509908, + "block_time": 1727201012, "fee_paid_normalized": "0.00600000" } ], @@ -13859,9 +14246,9 @@ Returns all valid broadcasts "result": [ { "tx_index": 25, - "tx_hash": "0b3452fcb5ee0a881ba450a768e89de4e0c89e297785e478dd6fc844975bec3a", + "tx_hash": "28499c6a50363ce063ee5e7f5de4d43ea5bf86a19dc05ea650443b343c00e258", "block_index": 138, - "source": "bcrt1qlm44vh2ynrtqwh8j2mptwrzzfd04czsya4wxcd", + "source": "bcrt1qeshrsce6vyx833j2p85aesnx0aj9sxjtt79jak", "timestamp": 4003903983, "value": 66600.0, "fee_fraction_int": 0, @@ -13869,14 +14256,14 @@ Returns all valid broadcasts "locked": false, "status": "valid", "confirmed": true, - "block_time": 1726509656, + "block_time": 1727200790, "fee_fraction_int_normalized": "0.00000000" }, { "tx_index": 24, - "tx_hash": "1629a61f230d38e661231eeaac724d9336e9413ce0a9f145c49d57030ae05b8d", + "tx_hash": "929b85b0f022a54c6904a36e51da0339ca9b0583ac7d003a91cd601964f53da5", "block_index": 137, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "timestamp": 4003903983, "value": 999.0, "fee_fraction_int": 0, @@ -13884,7 +14271,7 @@ Returns all valid broadcasts "locked": false, "status": "valid", "confirmed": true, - "block_time": 1726509652, + "block_time": 1727200786, "fee_fraction_int_normalized": "0.00000000" } ], @@ -13898,7 +14285,7 @@ Returns all valid broadcasts Returns the broadcast of a transaction + Parameters - + tx_hash: `0b3452fcb5ee0a881ba450a768e89de4e0c89e297785e478dd6fc844975bec3a` (str, required) - The hash of the transaction to return + + tx_hash: `28499c6a50363ce063ee5e7f5de4d43ea5bf86a19dc05ea650443b343c00e258` (str, required) - The hash of the transaction to return + verbose: `true` (bool, optional) - Include asset and dispenser info and normalized quantities in the response. + Default: `false` + show_unconfirmed (bool, optional) - Include results from Mempool. @@ -13910,9 +14297,9 @@ Returns the broadcast of a transaction { "result": { "tx_index": 25, - "tx_hash": "0b3452fcb5ee0a881ba450a768e89de4e0c89e297785e478dd6fc844975bec3a", + "tx_hash": "28499c6a50363ce063ee5e7f5de4d43ea5bf86a19dc05ea650443b343c00e258", "block_index": 138, - "source": "bcrt1qlm44vh2ynrtqwh8j2mptwrzzfd04czsya4wxcd", + "source": "bcrt1qeshrsce6vyx833j2p85aesnx0aj9sxjtt79jak", "timestamp": 4003903983, "value": 66600.0, "fee_fraction_int": 0, @@ -13920,7 +14307,7 @@ Returns the broadcast of a transaction "locked": false, "status": "valid", "confirmed": true, - "block_time": 1726509656, + "block_time": 1727200790, "fee_fraction_int_normalized": "0.00000000" } } @@ -13950,10 +14337,10 @@ Returns all fairminters { "result": [ { - "tx_hash": "d91c1e127adf6010f11ee5d04a4cd804ece0ff8087b450f307ae85b6f5f83137", + "tx_hash": "5f1bb112a42ace59fa09d6a6fc1916eec2a940d44682b160c97bbae14494b127", "tx_index": 22, "block_index": 135, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "asset": "FAIRMINTD", "asset_parent": "", "asset_longname": "", @@ -13978,13 +14365,13 @@ Returns all fairminters "commission": null, "paid_quantity": null, "confirmed": true, - "block_time": 1726509644 + "block_time": 1727200777 }, { - "tx_hash": "b8787fa4e26710112ef68030beafe12d09ec601552f130e5f37da63ba73eec12", + "tx_hash": "bf4d673a1117a0391adcac895de8ac4f234e093b9257df4ce473fe1e01bebf8b", "tx_index": 18, "block_index": 131, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "asset": "FAIRMINTC", "asset_parent": "", "asset_longname": "", @@ -14009,13 +14396,13 @@ Returns all fairminters "commission": null, "paid_quantity": null, "confirmed": true, - "block_time": 1726509617 + "block_time": 1727200760 }, { - "tx_hash": "536537382f35f3fc4bf3bcb4f6957228528eaa802dc49361f6339cd575de0a16", + "tx_hash": "ef8994a7c4750636583ff8d92fe09ac8c38d280813f2e2e923e07c9b9a3d9cda", "tx_index": 14, "block_index": 130, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "asset": "FAIRMINTB", "asset_parent": "", "asset_longname": "", @@ -14040,13 +14427,13 @@ Returns all fairminters "commission": null, "paid_quantity": null, "confirmed": true, - "block_time": 1726509613 + "block_time": 1727200756 }, { - "tx_hash": "7ae7bb5d540de02fd2b97d7234b6c87c925d0b6b3eac5a55e5ced650ce49eed1", + "tx_hash": "15f8f2368ab00936a53063e0f92508f82a1d6018e7495426e7dc81fc02f6d6f1", "tx_index": 10, "block_index": 125, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "asset": "FAIRMINTA", "asset_parent": "", "asset_longname": "", @@ -14071,7 +14458,7 @@ Returns all fairminters "commission": null, "paid_quantity": null, "confirmed": true, - "block_time": 1726509592 + "block_time": 1727200736 } ], "next_cursor": null, @@ -14114,7 +14501,7 @@ Returns the mints by fairminter Returns a list of unspent outputs for a list of addresses + Parameters - + addresses: `bcrt1qlqcrlvw5t7cnj8r9hjl0qq67c2fyk5kvfra90p,bcrt1qqt2dxp9pmcgvjrckeyuy29myfghay5le53hl0d` (str, required) - The addresses to search for + + addresses: `bcrt1qfvucymcd7u04hpd7eafsmxwnashcmaqs54q79p,bcrt1qtmd9xj5r7dlk044rn35kqqdmy62jpnf6u52x9z` (str, required) - The addresses to search for + unconfirmed (bool, optional) - Include unconfirmed transactions + Default: `False` + verbose: `true` (bool, optional) - Include asset and dispenser info and normalized quantities in the response. @@ -14129,21 +14516,21 @@ Returns a list of unspent outputs for a list of addresses "result": [ { "vout": 2, - "height": 146, + "height": 147, "value": 4949970000, "confirmations": 48, "amount": 49.4997, - "txid": "516159be9547a87a0ab0ce652ce9daebb10796eb67509fa50780dca28d813535", - "address": "bcrt1qlqcrlvw5t7cnj8r9hjl0qq67c2fyk5kvfra90p" + "txid": "6b21482e6e461d42ded8e74826ff88a8b23621baaa45e714c7c2a20457bd6c12", + "address": "bcrt1qfvucymcd7u04hpd7eafsmxwnashcmaqs54q79p" }, { "vout": 2, - "height": 155, + "height": 156, "value": 100000, "confirmations": 39, "amount": 0.001, - "txid": "f48f32cde583a1233260e9d07c858726031b0aadb7550a061602ad6cffd5f3a7", - "address": "bcrt1qqt2dxp9pmcgvjrckeyuy29myfghay5le53hl0d" + "txid": "ca11a87b6b09143626cafffbc32be68d26d43df5facbb48aa919ce857c1aa739", + "address": "bcrt1qtmd9xj5r7dlk044rn35kqqdmy62jpnf6u52x9z" } ], "next_cursor": null, @@ -14156,7 +14543,7 @@ Returns a list of unspent outputs for a list of addresses Returns all transactions involving a given address + Parameters - + address: `bcrt1q3ds7n4l97tumdkgcr3vyhe04zaxce8ujr8fmr2` (str, required) - The address to search for + + address: `bcrt1q9cf2ed4wk37qye08wlppw39l7prxws7afa3krk` (str, required) - The address to search for + unconfirmed: `True` (bool, optional) - Include unconfirmed transactions + Default: `True` + only_tx_hashes: `True` (bool, optional) - Return only the tx hashes @@ -14172,28 +14559,28 @@ Returns all transactions involving a given address { "result": [ { - "tx_hash": "f96235259f9722ca1558a6601a39e235c6a60fa33d67cc9e5039890d0ab2fe03" + "tx_hash": "1e3535ba7d55784565a1ebd370a14fdde23ba46de1398689d8e4dd3886a34714" }, { - "tx_hash": "efce747367cf4f6f269d55f239087910bc90dcb738205d57146a4a5b537dad17" + "tx_hash": "2e8af63264d4d2130abba102b9d8a867d2b35b41e878e037f328cb46b727a415" }, { - "tx_hash": "d87f4afa605375256bce3dab7d014314a751d0d998cdc0842ac2dfc8c2fa2b21" + "tx_hash": "664b33a2858e0961f08c6a45f5ec6b98042d62a4f4e98faf6862f374be802724" }, { - "tx_hash": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b" + "tx_hash": "601d3f3304f74f8dd7dce71bd22011f57da8c83a23e9ae8bb8b30b2f9a202338" }, { - "tx_hash": "d2f3afeb63580aa006eee4e055138c2903f7e8172876f688b7241e2ebbe5f172" + "tx_hash": "c7de2f976583158832e195c5e06c91be234ea8f11f3dec44a14e41ee44e25238" }, { - "tx_hash": "9d48ae21a1caed318e44591060a2d5873ed0ef5b403a5447046052a111c7dd88" + "tx_hash": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774" }, { - "tx_hash": "58f41fb8b8ec22f12daa5aad5a4f72194f54f652542abd409766afe4de2798b9" + "tx_hash": "467f7e82754021f4a8a7e07800c1785d2619004c75fd9200884f7aa4def7caa7" }, { - "tx_hash": "cd209fe04d43a38dcf842ad0d74fd71e123c66549db03f3650099a7e5f0297be" + "tx_hash": "e7989369eefaec09cec5770c6128eb548023225e666d57bbed74b3d03240e9c3" } ], "next_cursor": null, @@ -14206,7 +14593,7 @@ Returns all transactions involving a given address Get the oldest transaction for an address. + Parameters - + address: `bcrt1qrqg60l5vguevyqtnw4ym5hdth8jm4zmk0fxn99` (str, required) - The address to search for. + + address: `bcrt1qtwywdknya042p0342nhnjk05557lxwysfw6vuj` (str, required) - The address to search for. + block_index (int, optional) - The block index to search from. + Default: `None` + verbose: `true` (bool, optional) - Include asset and dispenser info and normalized quantities in the response. @@ -14219,8 +14606,8 @@ Get the oldest transaction for an address. ``` { "result": { - "block_index": 1, - "tx_hash": "39808e5b91587a72ae37c23d618a8526cf4c292592c2681dd3400837654b0786" + "block_index": 2, + "tx_hash": "ef65836cc15a965615ff2edb77455cb8b91b9db8494c794f96d2652c7f1f5a21" } } ``` @@ -14230,7 +14617,7 @@ Get the oldest transaction for an address. Returns a list of unspent outputs for a specific address + Parameters - + address: `bcrt1qlqcrlvw5t7cnj8r9hjl0qq67c2fyk5kvfra90p` (str, required) - The address to search for + + address: `bcrt1qfvucymcd7u04hpd7eafsmxwnashcmaqs54q79p` (str, required) - The address to search for + unconfirmed (bool, optional) - Include unconfirmed transactions + Default: `False` + unspent_tx_hash (str, optional) - Filter by unspent_tx_hash @@ -14247,11 +14634,11 @@ Returns a list of unspent outputs for a specific address "result": [ { "vout": 2, - "height": 146, + "height": 147, "value": 4949970000, "confirmations": 48, "amount": 49.4997, - "txid": "516159be9547a87a0ab0ce652ce9daebb10796eb67509fa50780dca28d813535" + "txid": "6b21482e6e461d42ded8e74826ff88a8b23621baaa45e714c7c2a20457bd6c12" } ], "next_cursor": null, @@ -14264,7 +14651,7 @@ Returns a list of unspent outputs for a specific address Get pubkey for an address. + Parameters - + address: `bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj` (str, required) - Address to get pubkey for. + + address: `bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs` (str, required) - Address to get pubkey for. + provided_pubkeys (str, optional) - Comma separated list of provided pubkeys. + Default: `None` + verbose: `true` (bool, optional) - Include asset and dispenser info and normalized quantities in the response. @@ -14276,7 +14663,7 @@ Get pubkey for an address. ``` { - "result": "038cf659b1eef29fa8241c63dfa9eab3e1ef4f14fd7d99ee18746a9a9387076169" + "result": "03e9ae92eabb90ca74fe993bac25a34afb53dbfd9ee15d1434f46704cbef38ec97" } ``` @@ -14285,7 +14672,7 @@ Get pubkey for an address. Get a transaction from the blockchain + Parameters - + tx_hash: `f79c39d2a2896a86ef0bb2370101c664b69f2b9387afcd377d8226b839d419ce` (str, required) - The transaction hash + + tx_hash: `da0a0e76bfc982e2bbed2679a71f4e2d3ebc01140b448f430bb01b50f7ceaabb` (str, required) - The transaction hash + format: `hex` (str, optional) - Whether to return JSON output or raw hex + Default: `json` + verbose: `true` (bool, optional) - Include asset and dispenser info and normalized quantities in the response. @@ -14297,7 +14684,7 @@ Get a transaction from the blockchain ``` { - "result": "02000000000101ba21bea38dc876b1215be6872f0c75a77328eb90aea0f5e5f5d687b38e7ca5050300000000ffffffff020000000000000000226a20e661db2d032f2a3e7844cfb698121f85b2b30cced7b8b215b0e8fe1f5fd1a779680b0a2701000000160014ae2b0c1095bbdf23747f76b242be716817701b780247304402205f232b082605ae63445a865c556deef60158bbdf42b4ac8953b712ef33fe80a202203c7aebb1b51e30698a54c8e0177213dcbcd480529ede188b0a18129a80637fef0121035352a3478786437bb2f973478638b43a6bee4a925c1b0efd94dc193e94b198b500000000" + "result": "02000000000101b6d782df6b5c2f06c0c7af0c8c4d60f0aa556ff6f727703a94f74ba118e609f40300000000ffffffff020000000000000000226a20bdb345b43fda7b9a18a9666a3c0969176fba41ebfa02e4533597d73786663d8e680b0a27010000001600146c45b04730370dc7e778ed200c19f22a08c064a90247304402203d873dec7dfcb9e89aa9e315200792e26864340166149cab6836a7546859a72902206bc567bc0d510087b95dbc9fc763e9058df75cad340b8deba4aab9186e73d92b012103b5e165703c3ef7b3eb8feb32c82da0679166b81eae0830c1d0d0803fe78048b000000000" } ``` @@ -14319,7 +14706,7 @@ Get the fee per kilobyte for a transaction to be confirmed in `conf_target` bloc ``` { - "result": 68546 + "result": 58603 } ``` @@ -14390,27 +14777,27 @@ Returns all mempool events { "result": [ { - "tx_hash": "adc699f3b9af2a586a913343701a26c494a8fd637e66e50840936b8ef7bf10b6", + "tx_hash": "044206e67491ff5d4c325bca6bbf5704dfbc3794e8948a39aae3ab0e11b23e2a", "event": "TRANSACTION_PARSED", "params": { "supported": true, - "tx_hash": "adc699f3b9af2a586a913343701a26c494a8fd637e66e50840936b8ef7bf10b6", - "tx_index": 60 + "tx_hash": "044206e67491ff5d4c325bca6bbf5704dfbc3794e8948a39aae3ab0e11b23e2a", + "tx_index": 61 } }, { - "tx_hash": "adc699f3b9af2a586a913343701a26c494a8fd637e66e50840936b8ef7bf10b6", + "tx_hash": "044206e67491ff5d4c325bca6bbf5704dfbc3794e8948a39aae3ab0e11b23e2a", "event": "ENHANCED_SEND", "params": { "asset": "XCP", "block_index": 9999999, - "destination": "bcrt1q3ds7n4l97tumdkgcr3vyhe04zaxce8ujr8fmr2", + "destination": "bcrt1q9cf2ed4wk37qye08wlppw39l7prxws7afa3krk", "memo": null, "quantity": 10000, - "source": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "source": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "status": "valid", - "tx_hash": "adc699f3b9af2a586a913343701a26c494a8fd637e66e50840936b8ef7bf10b6", - "tx_index": 60, + "tx_hash": "044206e67491ff5d4c325bca6bbf5704dfbc3794e8948a39aae3ab0e11b23e2a", + "tx_index": 61, "asset_info": { "divisible": true, "asset_longname": null, @@ -14422,19 +14809,19 @@ Returns all mempool events } }, { - "tx_hash": "adc699f3b9af2a586a913343701a26c494a8fd637e66e50840936b8ef7bf10b6", + "tx_hash": "044206e67491ff5d4c325bca6bbf5704dfbc3794e8948a39aae3ab0e11b23e2a", "event": "CREDIT", "params": { - "address": "bcrt1q3ds7n4l97tumdkgcr3vyhe04zaxce8ujr8fmr2", + "address": "bcrt1q9cf2ed4wk37qye08wlppw39l7prxws7afa3krk", "asset": "XCP", - "block_index": 193, + "block_index": 194, "calling_function": "send", - "event": "adc699f3b9af2a586a913343701a26c494a8fd637e66e50840936b8ef7bf10b6", + "event": "044206e67491ff5d4c325bca6bbf5704dfbc3794e8948a39aae3ab0e11b23e2a", "quantity": 10000, - "tx_index": 60, + "tx_index": 61, "utxo": null, "utxo_address": null, - "block_time": 1726509912, + "block_time": 1727201016, "asset_info": { "divisible": true, "asset_longname": null, @@ -14446,19 +14833,19 @@ Returns all mempool events } }, { - "tx_hash": "adc699f3b9af2a586a913343701a26c494a8fd637e66e50840936b8ef7bf10b6", + "tx_hash": "044206e67491ff5d4c325bca6bbf5704dfbc3794e8948a39aae3ab0e11b23e2a", "event": "DEBIT", "params": { "action": "send", - "address": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "address": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "asset": "XCP", - "block_index": 193, - "event": "adc699f3b9af2a586a913343701a26c494a8fd637e66e50840936b8ef7bf10b6", + "block_index": 194, + "event": "044206e67491ff5d4c325bca6bbf5704dfbc3794e8948a39aae3ab0e11b23e2a", "quantity": 10000, - "tx_index": 60, + "tx_index": 61, "utxo": null, "utxo_address": null, - "block_time": 1726509912, + "block_time": 1727201016, "asset_info": { "divisible": true, "asset_longname": null, @@ -14470,27 +14857,27 @@ Returns all mempool events } }, { - "tx_hash": "adc699f3b9af2a586a913343701a26c494a8fd637e66e50840936b8ef7bf10b6", + "tx_hash": "044206e67491ff5d4c325bca6bbf5704dfbc3794e8948a39aae3ab0e11b23e2a", "event": "NEW_TRANSACTION", "params": { "block_hash": "mempool", "block_index": 9999999, - "block_time": 1726509917.0831685, + "block_time": 1727201019.8965485, "btc_amount": 0, - "data": "0200000000000000010000000000002710808b61e9d7e5f2f9b6d9181c584be5f5174d8c9f92", + "data": "0200000000000000010000000000002710802e12acb6aeb47c0265e777c21744bff0466743dd", "destination": "", "fee": 10000, - "source": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", - "tx_hash": "adc699f3b9af2a586a913343701a26c494a8fd637e66e50840936b8ef7bf10b6", - "tx_index": 60, - "utxos_info": "adc699f3b9af2a586a913343701a26c494a8fd637e66e50840936b8ef7bf10b6:1", + "source": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", + "tx_hash": "044206e67491ff5d4c325bca6bbf5704dfbc3794e8948a39aae3ab0e11b23e2a", + "tx_index": 61, + "utxos_info": "044206e67491ff5d4c325bca6bbf5704dfbc3794e8948a39aae3ab0e11b23e2a:1", "unpacked_data": { "message_type": "enhanced_send", "message_type_id": 2, "message_data": { "asset": "XCP", "quantity": 10000, - "address": "bcrt1q3ds7n4l97tumdkgcr3vyhe04zaxce8ujr8fmr2", + "address": "bcrt1q9cf2ed4wk37qye08wlppw39l7prxws7afa3krk", "memo": null, "asset_info": { "divisible": true, @@ -14534,19 +14921,19 @@ Returns the mempool events filtered by event name { "result": [ { - "tx_hash": "adc699f3b9af2a586a913343701a26c494a8fd637e66e50840936b8ef7bf10b6", + "tx_hash": "044206e67491ff5d4c325bca6bbf5704dfbc3794e8948a39aae3ab0e11b23e2a", "event": "CREDIT", "params": { - "address": "bcrt1q3ds7n4l97tumdkgcr3vyhe04zaxce8ujr8fmr2", + "address": "bcrt1q9cf2ed4wk37qye08wlppw39l7prxws7afa3krk", "asset": "XCP", - "block_index": 193, + "block_index": 194, "calling_function": "send", - "event": "adc699f3b9af2a586a913343701a26c494a8fd637e66e50840936b8ef7bf10b6", + "event": "044206e67491ff5d4c325bca6bbf5704dfbc3794e8948a39aae3ab0e11b23e2a", "quantity": 10000, - "tx_index": 60, + "tx_index": 61, "utxo": null, "utxo_address": null, - "block_time": 1726509912, + "block_time": 1727201016, "asset_info": { "divisible": true, "asset_longname": null, @@ -14568,7 +14955,7 @@ Returns the mempool events filtered by event name Returns the mempool events filtered by transaction hash + Parameters - + tx_hash: `adc699f3b9af2a586a913343701a26c494a8fd637e66e50840936b8ef7bf10b6` (str, required) - The hash of the transaction to return + + tx_hash: `044206e67491ff5d4c325bca6bbf5704dfbc3794e8948a39aae3ab0e11b23e2a` (str, required) - The hash of the transaction to return + event_name (str, optional) - Comma separated list of events to return + Default: `None` + cursor (str, optional) - The last event index to return @@ -14588,27 +14975,27 @@ Returns the mempool events filtered by transaction hash { "result": [ { - "tx_hash": "adc699f3b9af2a586a913343701a26c494a8fd637e66e50840936b8ef7bf10b6", + "tx_hash": "044206e67491ff5d4c325bca6bbf5704dfbc3794e8948a39aae3ab0e11b23e2a", "event": "TRANSACTION_PARSED", "params": { "supported": true, - "tx_hash": "adc699f3b9af2a586a913343701a26c494a8fd637e66e50840936b8ef7bf10b6", - "tx_index": 60 + "tx_hash": "044206e67491ff5d4c325bca6bbf5704dfbc3794e8948a39aae3ab0e11b23e2a", + "tx_index": 61 } }, { - "tx_hash": "adc699f3b9af2a586a913343701a26c494a8fd637e66e50840936b8ef7bf10b6", + "tx_hash": "044206e67491ff5d4c325bca6bbf5704dfbc3794e8948a39aae3ab0e11b23e2a", "event": "ENHANCED_SEND", "params": { "asset": "XCP", "block_index": 9999999, - "destination": "bcrt1q3ds7n4l97tumdkgcr3vyhe04zaxce8ujr8fmr2", + "destination": "bcrt1q9cf2ed4wk37qye08wlppw39l7prxws7afa3krk", "memo": null, "quantity": 10000, - "source": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "source": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "status": "valid", - "tx_hash": "adc699f3b9af2a586a913343701a26c494a8fd637e66e50840936b8ef7bf10b6", - "tx_index": 60, + "tx_hash": "044206e67491ff5d4c325bca6bbf5704dfbc3794e8948a39aae3ab0e11b23e2a", + "tx_index": 61, "asset_info": { "divisible": true, "asset_longname": null, @@ -14620,19 +15007,19 @@ Returns the mempool events filtered by transaction hash } }, { - "tx_hash": "adc699f3b9af2a586a913343701a26c494a8fd637e66e50840936b8ef7bf10b6", + "tx_hash": "044206e67491ff5d4c325bca6bbf5704dfbc3794e8948a39aae3ab0e11b23e2a", "event": "CREDIT", "params": { - "address": "bcrt1q3ds7n4l97tumdkgcr3vyhe04zaxce8ujr8fmr2", + "address": "bcrt1q9cf2ed4wk37qye08wlppw39l7prxws7afa3krk", "asset": "XCP", - "block_index": 193, + "block_index": 194, "calling_function": "send", - "event": "adc699f3b9af2a586a913343701a26c494a8fd637e66e50840936b8ef7bf10b6", + "event": "044206e67491ff5d4c325bca6bbf5704dfbc3794e8948a39aae3ab0e11b23e2a", "quantity": 10000, - "tx_index": 60, + "tx_index": 61, "utxo": null, "utxo_address": null, - "block_time": 1726509912, + "block_time": 1727201016, "asset_info": { "divisible": true, "asset_longname": null, @@ -14644,19 +15031,19 @@ Returns the mempool events filtered by transaction hash } }, { - "tx_hash": "adc699f3b9af2a586a913343701a26c494a8fd637e66e50840936b8ef7bf10b6", + "tx_hash": "044206e67491ff5d4c325bca6bbf5704dfbc3794e8948a39aae3ab0e11b23e2a", "event": "DEBIT", "params": { "action": "send", - "address": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "address": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "asset": "XCP", - "block_index": 193, - "event": "adc699f3b9af2a586a913343701a26c494a8fd637e66e50840936b8ef7bf10b6", + "block_index": 194, + "event": "044206e67491ff5d4c325bca6bbf5704dfbc3794e8948a39aae3ab0e11b23e2a", "quantity": 10000, - "tx_index": 60, + "tx_index": 61, "utxo": null, "utxo_address": null, - "block_time": 1726509912, + "block_time": 1727201016, "asset_info": { "divisible": true, "asset_longname": null, @@ -14668,27 +15055,27 @@ Returns the mempool events filtered by transaction hash } }, { - "tx_hash": "adc699f3b9af2a586a913343701a26c494a8fd637e66e50840936b8ef7bf10b6", + "tx_hash": "044206e67491ff5d4c325bca6bbf5704dfbc3794e8948a39aae3ab0e11b23e2a", "event": "NEW_TRANSACTION", "params": { "block_hash": "mempool", "block_index": 9999999, - "block_time": 1726509917.0831685, + "block_time": 1727201019.8965485, "btc_amount": 0, - "data": "0200000000000000010000000000002710808b61e9d7e5f2f9b6d9181c584be5f5174d8c9f92", + "data": "0200000000000000010000000000002710802e12acb6aeb47c0265e777c21744bff0466743dd", "destination": "", "fee": 10000, - "source": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", - "tx_hash": "adc699f3b9af2a586a913343701a26c494a8fd637e66e50840936b8ef7bf10b6", - "tx_index": 60, - "utxos_info": "adc699f3b9af2a586a913343701a26c494a8fd637e66e50840936b8ef7bf10b6:1", + "source": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", + "tx_hash": "044206e67491ff5d4c325bca6bbf5704dfbc3794e8948a39aae3ab0e11b23e2a", + "tx_index": 61, + "utxos_info": "044206e67491ff5d4c325bca6bbf5704dfbc3794e8948a39aae3ab0e11b23e2a:1", "unpacked_data": { "message_type": "enhanced_send", "message_type_id": 2, "message_data": { "asset": "XCP", "quantity": 10000, - "address": "bcrt1q3ds7n4l97tumdkgcr3vyhe04zaxce8ujr8fmr2", + "address": "bcrt1q9cf2ed4wk37qye08wlppw39l7prxws7afa3krk", "memo": null, "asset_info": { "divisible": true, diff --git a/counterparty-core/counterpartycore/lib/api/api_server.py b/counterparty-core/counterpartycore/lib/api/api_server.py index cd122bab0b..c7a1be351f 100644 --- a/counterparty-core/counterpartycore/lib/api/api_server.py +++ b/counterparty-core/counterpartycore/lib/api/api_server.py @@ -17,7 +17,6 @@ exceptions, ledger, sentry, - transaction, util, ) from counterpartycore.lib.api import api_watcher, queries @@ -381,7 +380,6 @@ def run_api_server(args, interruped_value, server_ready_value): logger.info("Starting API Server...") app = Flask(config.APP_NAME) - transaction.initialise() with app.app_context(): # Initialise the API access log init_api_access_log(app) diff --git a/counterparty-core/counterpartycore/lib/api/api_v1.py b/counterparty-core/counterpartycore/lib/api/api_v1.py index eccdaaa2a4..48cacb25f5 100644 --- a/counterparty-core/counterpartycore/lib/api/api_v1.py +++ b/counterparty-core/counterpartycore/lib/api/api_v1.py @@ -29,8 +29,10 @@ message_type, script, transaction, + transaction_helper, util, ) +from counterpartycore.lib.api import compose as api_compose from counterpartycore.lib.api import util as api_util from counterpartycore.lib.database import APIDBConnectionPool from counterpartycore.lib.messages import ( @@ -60,7 +62,6 @@ from flask_httpauth import HTTPBasicAuth from jsonrpc import dispatcher from jsonrpc.exceptions import JSONRPCDispatchException -from sentry_sdk import capture_exception from sentry_sdk import configure_scope as configure_sentry_scope from werkzeug.serving import make_server from xmltodict import unparse as serialize_to_xml @@ -561,14 +562,49 @@ def sql(query, bindings=None): # Generate dynamically create_{transaction} methods def generate_create_method(tx): def create_method(**kwargs): + transaction_args, common_args, private_key_wif = api_compose.split_compose_params( + **kwargs + ) + extended_tx_info = old_style_api = False + if "extended_tx_info" in common_args: + extended_tx_info = common_args["extended_tx_info"] + del common_args["extended_tx_info"] + if "old_style_api" in common_args: + old_style_api = common_args["old_style_api"] + del common_args["old_style_api"] + for v2_arg in ["return_only_data", "return_psbt"]: + common_args.pop(v2_arg, None) + if "fee" in transaction_args and "exact_fee" not in common_args: + common_args["exact_fee"] = transaction_args.pop("fee") try: - transaction_args, common_args, private_key_wif = ( - transaction.split_compose_params(**kwargs) - ) with self.connection_pool.connection() as db: - return transaction.compose_transaction( - db, name=tx, params=transaction_args, api_v1=True, **common_args + transaction_info = transaction.compose_transaction( + db, + name=tx, + params=transaction_args, + accept_missing_params=True, + **common_args, ) + if extended_tx_info: + return transaction_info + tx_hexes = list( + filter( + None, + [ + transaction_info["unsigned_tx_hex"], + transaction_info["unsigned_pretx_hex"], + ], + ) + ) # filter out None + if old_style_api: + if len(tx_hexes) != 1: + raise Exception("Can't do 2 TXs with old_style_api") + return tx_hexes[0] + else: + if len(tx_hexes) == 1: + return tx_hexes[0] + else: + return tx_hexes except ( TypeError, script.AddressError, @@ -585,7 +621,7 @@ def create_method(**kwargs): return create_method - for tx in transaction.COMPOSABLE_TRANSACTIONS: + for tx in api_compose.COMPOSABLE_TRANSACTIONS: create_method = generate_create_method(tx) create_method.__name__ = f"create_{tx}" dispatcher.add_method(create_method) @@ -970,7 +1006,9 @@ def unpack(data_hex): @dispatcher.add_method # TODO: Rename this method. def search_pubkey(pubkeyhash, provided_pubkeys=None): - return transaction.pubkeyhash_to_pubkey(pubkeyhash, provided_pubkeys=provided_pubkeys) + return transaction_helper.transaction_outputs.pubkeyhash_to_pubkey( + pubkeyhash, provided_pubkeys=provided_pubkeys + ) @dispatcher.add_method def get_dispenser_info(tx_hash=None, tx_index=None): @@ -1105,8 +1143,7 @@ def handle_rpc_post(request_json): and request_data["method"] ) # params may be omitted - except Exception as error: # noqa: E722 - capture_exception(error) + except Exception: # noqa: E722 obj_error = jsonrpc.exceptions.JSONRPCInvalidRequest( data="Invalid JSON-RPC 2.0 request format" ) @@ -1163,7 +1200,7 @@ def handle_rest(path_args, flask_request): error = "No query_type provided." return flask.Response(error, 400, mimetype="application/json") # Check if message type or table name are valid. - if (compose and query_type not in transaction.COMPOSABLE_TRANSACTIONS) or ( + if (compose and query_type not in api_compose.COMPOSABLE_TRANSACTIONS) or ( not compose and query_type not in API_TABLES ): error = f'No such query type in supported queries: "{query_type}".' @@ -1174,7 +1211,7 @@ def handle_rest(path_args, flask_request): query_data = {} if compose: - transaction_args, common_args, private_key_wif = transaction.split_compose_params( + transaction_args, common_args, private_key_wif = api_compose.split_compose_params( **extra_args ) @@ -1186,7 +1223,7 @@ def handle_rest(path_args, flask_request): # Compose the transaction. try: with self.connection_pool.connection() as db: - query_data = transaction.compose_transaction( + query_data, data = transaction.compose_transaction( db, name=query_type, params=transaction_args, **common_args ) except ( diff --git a/counterparty-core/counterpartycore/lib/api/api_watcher.py b/counterparty-core/counterpartycore/lib/api/api_watcher.py index e13bebdd98..276cf38504 100644 --- a/counterparty-core/counterpartycore/lib/api/api_watcher.py +++ b/counterparty-core/counterpartycore/lib/api/api_watcher.py @@ -693,7 +693,7 @@ def apply_migration(): # Apply any outstanding migrations backend.apply_migrations(backend.to_apply(migrations)) except LockTimeout: - logger.error("API Watcher - Migration lock timeout. Breaking lock and retrying...") + logger.debug("API Watcher - Migration lock timeout. Breaking lock and retrying...") backend.break_lock() backend.apply_migrations(backend.to_apply(migrations)) backend.connection.close() diff --git a/counterparty-core/counterpartycore/lib/api/compose.py b/counterparty-core/counterpartycore/lib/api/compose.py new file mode 100644 index 0000000000..902583bee5 --- /dev/null +++ b/counterparty-core/counterpartycore/lib/api/compose.py @@ -0,0 +1,889 @@ +import binascii +import decimal + +from counterpartycore.lib import ( + backend, + config, + deserialize, + exceptions, + gettxinfo, + message_type, + messages, + script, + transaction, + util, +) + +D = decimal.Decimal + +COMPOSABLE_TRANSACTIONS = [ + "bet", + "broadcast", + "btcpay", + "burn", + "cancel", + "destroy", + "dispenser", + "dispense", + "dividend", + "issuance", + "versions.mpma", + "order", + "send", + "sweep", + "utxo", + "fairminter", + "fairmint", +] + +COMPOSE_COMMONS_ARGS = { + "encoding": (str, "auto", "The encoding method to use"), + "fee_per_kb": ( + int, + None, + "The fee per kilobyte of transaction data constant that the server uses when deciding on the dynamic fee to use (in satoshis)", + ), + "regular_dust_size": ( + int, + config.DEFAULT_REGULAR_DUST_SIZE, + "Specify (in satoshis) to override the (dust) amount of BTC used for each non-(bare) multisig output.", + ), + "multisig_dust_size": ( + int, + config.DEFAULT_MULTISIG_DUST_SIZE, + "Specify (in satoshis) to override the (dust) amount of BTC used for each (bare) multisig output", + ), + "pubkeys": ( + str, + None, + "The hexadecimal public key of the source address (or a comma separated list of keys, if multi-sig). Required when using encoding parameter values of multisig or pubkeyhash.", + ), + "allow_unconfirmed_inputs": ( + bool, + False, + "Set to true to allow this transaction to utilize unconfirmed UTXOs as inputs", + ), + "exact_fee": ( + int, + None, + "If you'd like to specify a custom miners' fee, specify it here (in satoshis). Leave as default for the server to automatically choose", + ), + "fee_provided": ( + int, + 0, + "If you would like to specify a maximum fee (up to and including which may be used as the transaction fee), specify it here (in satoshis). This differs from fee in that this is an upper bound value, which fee is an exact value", + ), + "unspent_tx_hash": ( + str, + None, + "When compiling the UTXOs to use as inputs for the transaction being created, only consider unspent outputs from this specific transaction hash. Defaults to null to consider all UTXOs for the address. Do not use this parameter if you are specifying inputs_set", + ), + "dust_return_pubkey": ( + str, + None, + "The dust return pubkey is used in multi-sig data outputs (as the only real pubkey) to make those the outputs spendable. By default, this pubkey is taken from the pubkey used in the first transaction input. However, it can be overridden here (and is required to be specified if a P2SH input is used and multisig is used as the data output encoding.) If specified, specify the public key (in hex format) where dust will be returned to so that it can be reclaimed. Only valid/useful when used with transactions that utilize multisig data encoding. Note that if this value is set to false, this instructs counterparty-server to use the default dust return pubkey configured at the node level. If this default is not set at the node level, the call will generate an exception", + ), + "disable_utxo_locks": ( + bool, + False, + "By default, UTXOs utilized when creating a transaction are 'locked' for a few seconds, to prevent a case where rapidly generating create_ calls reuse UTXOs due to their spent status not being updated in bitcoind yet. Specify true for this parameter to disable this behavior, and not temporarily lock UTXOs", + ), + "p2sh_pretx_txid": ( + str, + None, + "The previous transaction txid for a two part P2SH message. This txid must be taken from the signed transaction", + ), + "segwit": (bool, False, "Use segwit"), + "confirmation_target": ( + int, + config.ESTIMATE_FEE_CONF_TARGET, + "The number of blocks to target for confirmation", + ), + "exclude_utxos": ( + str, + None, + "A comma-separated list of UTXO txids to exclude when selecting UTXOs to use as inputs for the transaction being created", + ), + "inputs_set": ( + str, + None, + "A comma-separated list of UTXOs (`:`) to use as inputs for the transaction being created", + ), + "return_psbt": ( + bool, + False, + "(API v2 only) Construct a PSBT instead of a raw transaction hex", + ), + "return_only_data": ( + bool, + False, + "(API v2 only) Return only the data part of the transaction", + ), + "extended_tx_info": ( + bool, + False, + "(API v1 only) When this is not specified or false, the create_ calls return only a hex-encoded string. If this is true, the create_ calls return a data object with the following keys: tx_hex, btc_in, btc_out, btc_change, and btc_fee", + ), + "old_style_api": ( + bool, + False, + "(API v1 only) Returns a single hex-encoded string instead of an array", + ), +} + + +def split_compose_params(**kwargs): + transaction_args = {} + common_args = {} + private_key_wif = None + for key, value in kwargs.items(): + if key in COMPOSE_COMMONS_ARGS: + common_args[key] = value + elif key == "privkey": + private_key_wif = value + else: + transaction_args[key] = value + return transaction_args, common_args, private_key_wif + + +def compose(db, name, params, **construct_args): + if name not in COMPOSABLE_TRANSACTIONS: + raise exceptions.TransactionError("Transaction type not composable.") + return_only_data = construct_args.pop("return_only_data", False) + return_psbt = construct_args.pop("return_psbt", False) + for v1_args in ["extended_tx_info", "old_style_api"]: + construct_args.pop(v1_args) + transaction_info = transaction.compose_transaction( + db, + name=name, + params=params, + **construct_args, + ) + if return_only_data: + return {"data": transaction_info["data"]} + result = { + "params": params, + "name": name.split(".")[-1], + "data": transaction_info["data"], + "btc_in": transaction_info["btc_in"], + "btc_out": transaction_info["btc_out"], + "btc_change": transaction_info["btc_change"], + "btc_fee": transaction_info["btc_fee"], + } + if return_psbt: + result["psbt"] = backend.bitcoind.convert_to_psbt(transaction_info["unsigned_tx_hex"]) + else: + result["rawtransaction"] = transaction_info["unsigned_tx_hex"] + if transaction_info.get("unsigned_pretx_hex"): + result["unsigned_pretx_hex"] = transaction_info["unsigned_pretx_hex"] + return result + + +def compose_bet( + db, + address: str, + feed_address: str, + bet_type: int, + deadline: int, + wager_quantity: int, + counterwager_quantity: int, + expiration: int, + leverage: int = 5040, + target_value: int = None, + **construct_args, +): + """ + Composes a transaction to issue a bet against a feed. + :param address: The address that will make the bet (e.g. $ADDRESS_1) + :param feed_address: The address that hosts the feed to be bet on (e.g. $ADDRESS_2) + :param bet_type: Bet 0 for Bullish CFD (deprecated), 1 for Bearish CFD (deprecated), 2 for Equal, 3 for NotEqual (e.g. 2) + :param deadline: The time at which the bet should be decided/settled, in Unix time (seconds since epoch) (e.g. 3000000000) + :param wager_quantity: The quantities of XCP to wager (in satoshis, hence integer) (e.g. 1000) + :param counterwager_quantity: The minimum quantities of XCP to be wagered against, for the bets to match (in satoshis, hence integer) (e.g. 1000) + :param expiration: The number of blocks after which the bet expires if it remains unmatched (e.g. 100) + :param leverage: Leverage, as a fraction of 5040 + :param target_value: Target value for Equal/NotEqual bet (e.g. 1000) + """ + params = { + "source": address, + "feed_address": feed_address, + "bet_type": bet_type, + "deadline": deadline, + "wager_quantity": wager_quantity, + "counterwager_quantity": counterwager_quantity, + "target_value": target_value, + "leverage": leverage, + "expiration": expiration, + } + return compose(db, "bet", params, **construct_args) + + +def compose_broadcast( + db, address: str, timestamp: int, value: float, fee_fraction: float, text: str, **construct_args +): + """ + Composes a transaction to broadcast textual and numerical information to the network. + :param address: The address that will be sending (must have the necessary quantity of the specified asset) (e.g. $ADDRESS_1) + :param timestamp: The timestamp of the broadcast, in Unix time (e.g. 4003903985) + :param value: Numerical value of the broadcast (e.g. 100) + :param fee_fraction: How much of every bet on this feed should go to its operator; a fraction of 1, (i.e. 0.05 is five percent) (e.g. 0.05) + :param text: The textual part of the broadcast (e.g. "Hello, world!") + """ + params = { + "source": address, + "timestamp": timestamp, + "value": value, + "fee_fraction": fee_fraction, + "text": text, + } + return compose(db, "broadcast", params, **construct_args) + + +def compose_btcpay(db, address: str, order_match_id: str, **construct_args): + """ + Composes a transaction to pay for a BTC order match. + :param address: The address that will be sending the payment (e.g. $ADDRESS_1) + :param order_match_id: The ID of the order match to pay for (e.g. $LAST_ORDER_MATCH_ID) + """ + params = {"source": address, "order_match_id": order_match_id} + return compose(db, "btcpay", params, **construct_args) + + +def compose_burn(db, address: str, quantity: int, overburn: bool = False, **construct_args): + """ + Composes a transaction to burn a given quantity of BTC for XCP (on mainnet, possible between blocks 278310 and 283810; on testnet it is still available). + :param address: The address with the BTC to burn (e.g. $ADDRESS_1) + :param quantity: The quantities of BTC to burn (in satoshis, hence integer) (1 BTC maximum burn per address) (e.g. 1000) + :param overburn: Whether to allow the burn to exceed 1 BTC for the address + """ + params = {"source": address, "quantity": quantity, "overburn": overburn} + return compose(db, "burn", params, **construct_args) + + +def compose_cancel(db, address: str, offer_hash: str, **construct_args): + """ + Composes a transaction to cancel an open order or bet. + :param address: The address that placed the order/bet to be cancelled (e.g. $ADDRESS_1) + :param offer_hash: The hash of the order/bet to be cancelled (e.g. $LAST_ORDER_TX_HASH) + """ + params = {"source": address, "offer_hash": offer_hash} + return compose(db, "cancel", params, **construct_args) + + +def compose_destroy(db, address: str, asset: str, quantity: int, tag: str, **construct_args): + """ + Composes a transaction to destroy a quantity of an asset. + :param address: The address that will be sending the asset to be destroyed (e.g. $ADDRESS_1) + :param asset: The asset to be destroyed (e.g. XCP) + :param quantity: The quantity of the asset to be destroyed (in satoshis, hence integer) (e.g. 1000) + :param tag: A tag for the destruction (e.g. "bugs!") + """ + params = {"source": address, "asset": asset, "quantity": quantity, "tag": tag} + return compose(db, "destroy", params, **construct_args) + + +def compose_dispenser( + db, + address: str, + asset: str, + give_quantity: int, + escrow_quantity: int, + mainchainrate: int, + status: int, + open_address: str = None, + oracle_address: str = None, + **construct_args, +): + """ + Composes a transaction to opens or closes a dispenser for a given asset at a given rate of main chain asset (BTC). Escrowed quantity on open must be equal or greater than give_quantity. It is suggested that you escrow multiples of give_quantity to ease dispenser operation. + :param address: The address that will be dispensing (must have the necessary escrow_quantity of the specified asset) (e.g. $ADDRESS_7) + :param asset: The asset or subasset to dispense (e.g. XCP) + :param give_quantity: The quantity of the asset to dispense (in satoshis, hence integer) (e.g. 1000) + :param escrow_quantity: The quantity of the asset to reserve for this dispenser (in satoshis, hence integer) (e.g. 1000) + :param mainchainrate: The quantity of the main chain asset (BTC) per dispensed portion (in satoshis, hence integer) (e.g. 100) + :param status: The state of the dispenser. 0 for open, 1 for open using open_address, 10 for closed (e.g. 0) + :param open_address: The address that you would like to open the dispenser on; MUST be equal to `address` from block 900000 onwards + :param oracle_address: The address that you would like to use as a price oracle for this dispenser + """ + params = { + "source": address, + "asset": asset, + "give_quantity": give_quantity, + "escrow_quantity": escrow_quantity, + "mainchainrate": mainchainrate, + "status": status, + "open_address": open_address, + "oracle_address": oracle_address, + } + return compose(db, "dispenser", params, **construct_args) + + +def compose_dividend( + db, address: str, quantity_per_unit: int, asset: str, dividend_asset: str, **construct_args +): + """ + Composes a transaction to issue a dividend to holders of a given asset. + :param address: The address that will be issuing the dividend (must have the ownership of the asset which the dividend is being issued on) (e.g. $ADDRESS_1) + :param quantity_per_unit: The amount of dividend_asset rewarded (in satoshis, hence integer) (e.g. 1) + :param asset: The asset or subasset that the dividends are being rewarded on (e.g. $ASSET_1) + :param dividend_asset: The asset or subasset that the dividends are paid in (e.g. XCP) + """ + params = { + "source": address, + "quantity_per_unit": quantity_per_unit, + "asset": asset, + "dividend_asset": dividend_asset, + } + return compose(db, "dividend", params, **construct_args) + + +def compose_issuance( + db, + address: str, + asset: str, + quantity: int, + transfer_destination: str = None, + divisible: bool = True, + lock: bool = False, + reset: bool = False, + description: str = None, + **construct_args, +): + """ + Composes a transaction to Issue a new asset, issue more of an existing asset, lock an asset, reset existing supply, or transfer the ownership of an asset. + :param address: The address that will be issuing or transfering the asset (e.g. $ADDRESS_1) + :param asset: The assets to issue or transfer. This can also be a subasset longname for new subasset issuances (e.g. XCPTEST) + :param quantity: The quantity of the asset to issue (set to 0 if transferring an asset) (in satoshis, hence integer) (e.g. 1000) + :param transfer_destination: The address to receive the asset (e.g. $ADDRESS_1) + :param divisible: Whether this asset is divisible or not (if a transfer, this value must match the value specified when the asset was originally issued) + :param lock: Whether this issuance should lock supply of this asset forever + :param reset: Wether this issuance should reset any existing supply + :param description: A textual description for the asset + """ + params = { + "source": address, + "asset": asset, + "quantity": quantity, + "transfer_destination": transfer_destination, + "divisible": divisible, + "lock": lock, + "reset": reset, + "description": description, + } + return compose(db, "issuance", params, **construct_args) + + +def compose_mpma( + db, + address: str, + assets: str, + destinations: str, + quantities: str, + memo: str = None, + memo_is_hex: bool = False, + **construct_args, +): + """ + Composes a transaction to send multiple payments to multiple addresses. + :param address: The address that will be sending (must have the necessary quantity of the specified asset) (e.g. $ADDRESS_1) + :param assets: comma-separated list of assets to send (e.g. XCP,$ASSET_5) + :param destinations: comma-separated list of addresses to send to (e.g. $ADDRESS_1,$ADDRESS_2) + :param quantities: comma-separated list of quantities to send (in satoshis, hence integer) (e.g. 1,2) + :param memo: The Memo associated with this transaction (e.g. "Hello, world!") + :param memo_is_hex: Whether the memo field is a hexadecimal string (e.g. False) + """ + asset_list = assets.split(",") + destination_list = destinations.split(",") + quantity_list = quantities.split(",") + if len(asset_list) != len(destination_list) or len(asset_list) != len(quantity_list): + raise exceptions.ComposeError( + "The number of assets, destinations, and quantities must be equal" + ) + for quantity in quantity_list: + if not quantity.isdigit(): + raise exceptions.ComposeError("Quantity must be an integer") + quantity_list = [int(quantity) for quantity in quantity_list] + asset_dest_quant_list = list(zip(asset_list, destination_list, quantity_list)) + + params = { + "source": address, + "asset_dest_quant_list": asset_dest_quant_list, + "memo": memo, + "memo_is_hex": memo_is_hex, + } + return compose(db, "versions.mpma", params, **construct_args) + + +def compose_order( + db, + address: str, + give_asset: str, + give_quantity: int, + get_asset: str, + get_quantity: int, + expiration: int, + fee_required: int, + **construct_args, +): + """ + Composes a transaction to place an order on the distributed exchange. + :param address: The address that will be issuing the order request (must have the necessary quantity of the specified asset to give) (e.g. $ADDRESS_1) + :param give_asset: The asset that will be given in the trade (e.g. XCP) + :param give_quantity: The quantity of the asset that will be given (in satoshis, hence integer) (e.g. 1000) + :param get_asset: The asset that will be received in the trade (e.g. $ASSET_1) + :param get_quantity: The quantity of the asset that will be received (in satoshis, hence integer) (e.g. 1000) + :param expiration: The number of blocks for which the order should be valid (e.g. 100) + :param fee_required: The miners’ fee required to be paid by orders for them to match this one; in BTC; required only if buying BTC (may be zero, though) (e.g. 100) + """ + params = { + "source": address, + "give_asset": give_asset, + "give_quantity": give_quantity, + "get_asset": get_asset, + "get_quantity": get_quantity, + "expiration": expiration, + "fee_required": fee_required, + } + return compose(db, "order", params, **construct_args) + + +def compose_send( + db, + address: str, + destination: str, + asset: str, + quantity: int, + memo: str = None, + memo_is_hex: bool = False, + use_enhanced_send: bool = True, + **construct_args, +): + """ + Composes a transaction to send a quantity of an asset to another address. + :param address: The address that will be sending (must have the necessary quantity of the specified asset) (e.g. $ADDRESS_1) + :param destination: The address that will be receiving the asset (e.g. $ADDRESS_2) + :param asset: The asset or subasset to send (e.g. XCP) + :param quantity: The quantity of the asset to send (in satoshis, hence integer) (e.g. 1000) + :param memo: The Memo associated with this transaction + :param memo_is_hex: Whether the memo field is a hexadecimal string + :param use_enhanced_send: If this is false, the construct a legacy transaction sending bitcoin dust + """ + params = { + "source": address, + "destination": destination, + "asset": asset, + "quantity": quantity, + "memo": memo, + "memo_is_hex": memo_is_hex, + "use_enhanced_send": use_enhanced_send, + } + return compose(db, "send", params, **construct_args) + + +def compose_dispense( + db, + address: str, + dispenser: str, + quantity: int, + **construct_args, +): + """ + Composes a transaction to send BTC to a dispenser. + :param address: The address that will be sending (must have the necessary quantity of BTC) (e.g. $ADDRESS_2) + :param dispenser: The dispenser that will be receiving the asset (e.g. $ADDRESS_4) + :param quantity: The quantity of BTC to send (in satoshis, hence integer) (e.g. 1000) + """ + params = { + "source": address, + "destination": dispenser, + "quantity": quantity, + } + return compose(db, "dispense", params, **construct_args) + + +def compose_sweep(db, address: str, destination: str, flags: int, memo: str, **construct_args): + """ + Composes a transaction to Sends all assets and/or transfer ownerships to a destination address. + :param address: The address that will be sending (e.g. $ADDRESS_1) + :param destination: The address to receive the assets and/or ownerships (e.g. $ADDRESS_2) + :param flags: An OR mask of flags indicating how the sweep should be processed. Possible flags are: + - FLAG_BALANCES: (integer) 1, specifies that all balances should be transferred. + - FLAG_OWNERSHIP: (integer) 2, specifies that all ownerships should be transferred. + - FLAG_BINARY_MEMO: (integer) 4, specifies that the memo is in binary/hex form. + (e.g. 7) + :param memo: The Memo associated with this transaction in hex format (e.g. FFFF) + """ + params = { + "source": address, + "destination": destination, + "flags": flags, + "memo": memo, + } + return compose(db, "sweep", params, **construct_args) + + +def compose_fairminter( + db, + address: str, + asset: str, + asset_parent: str = "", + price: int = 0, + quantity_by_price: int = 1, + max_mint_per_tx: int = 0, + hard_cap: int = 0, + premint_quantity: int = 0, + start_block: int = 0, + end_block: int = 0, + soft_cap: int = 0, + soft_cap_deadline_block: int = 0, + minted_asset_commission: float = 0.0, + burn_payment: bool = False, + lock_description: bool = False, + lock_quantity: bool = False, + divisible: bool = True, + description: str = "", + **construct_args, +): + """ + Composes a transaction to issue a new asset using the FairMinter protocol. + :param address: The address that will be issuing the asset (e.g. $ADDRESS_1) + :param asset: The asset to issue (e.g. MYASSET) + :param asset_parent: The parent asset of the asset to issue + :param price: The price in XCP of the asset to issue (e.g. 10) + :param quantity_by_price: The quantity of asset to mint per `price` paid + :param max_mint_per_tx: Amount minted if price is equal to 0; otherwise, maximum amount of asset that can be minted in a single transaction; if 0, there is no limit + :param hard_cap: The maximum amount of asset that can be minted; if 0 there is no limit + :param premint_quantity: Amount of asset to be minted when the sale starts, if 0, no premint; preminted assets are sent to the source of the transaction + :param start_block: The block at which the sale starts + :param end_block: The block at which the sale ends + :param soft_cap: Minimum amount of asset to be minted, if None, no minimum; if the soft cap is not reached by the soft_cap_deadline_block, the sale is canceled, asset is revoked from all minters and all payments are refunded + :param soft_cap_deadline_block: The block at which the soft cap must be reached + :param minted_asset_commission: Commission to be paid in minted asset, a fraction of 1 (i.e., 0.05 is five percent); the commission is deducted from the asset received by the minter and sent to the Fair Minter owner + :param burn_payment: If True, the payment asset is burned, otherwise it is sent to the source + :param lock_description: If True, the description of the asset is locked + :param lock_quantity: If True, the quantity of the asset cannot be changed after the minting + :param divisible: If True, the asset is divisible + :param description: The description of the asset + """ + params = { + "source": address, + "asset": asset, + "asset_parent": asset_parent, + "price": price, + "quantity_by_price": quantity_by_price, + "max_mint_per_tx": max_mint_per_tx, + "hard_cap": hard_cap, + "premint_quantity": premint_quantity, + "start_block": start_block, + "end_block": end_block, + "soft_cap": soft_cap, + "soft_cap_deadline_block": soft_cap_deadline_block, + "minted_asset_commission": minted_asset_commission, + "burn_payment": burn_payment, + "lock_description": lock_description, + "lock_quantity": lock_quantity, + "divisible": divisible, + "description": description, + } + return compose(db, "fairminter", params, **construct_args) + + +def compose_fairmint(db, address: str, asset: str, quantity: int = 0, **construct_args): + """ + Composes a transaction to mint a quantity of an asset using the FairMinter protocol. + :param address: The address that will be minting the asset (e.g. $ADDRESS_1) + :param asset: The asset to mint (e.g. $ASSET_3) + :param quantity: The quantity of the asset to mint (in satoshis, hence integer) (e.g. 1) + """ + params = {"source": address, "asset": asset, "quantity": quantity} + return compose(db, "fairmint", params, **construct_args) + + +def compose_utxo( + db, + source: str, + destination: str, + asset: str, + quantity: int, + **construct_args, +): + params = { + "source": source, + "destination": destination, + "asset": asset, + "quantity": quantity, + } + return compose(db, "utxo", params, **construct_args) + + +def compose_attach( + db, + address: str, + asset: str, + quantity: int, + destination: str = None, + **construct_args, +): + """ + Composes a transaction to attach assets from an address to UTXO. + :param address: The address from which the assets are attached (e.g. $ADDRESS_1) + :param destination: The utxo to attach the assets to (e.g. $UTXO_1_ADDRESS_1) + :param asset: The asset or subasset to attach (e.g. XCP) + :param quantity: The quantity of the asset to attach (in satoshis, hence integer) (e.g. 1000) + """ + return compose_utxo( + db, + source=address, + destination=destination, + asset=asset, + quantity=quantity, + **construct_args, + ) + + +def compose_detach( + db, + utxo: str, + destination: str, + asset: str, + quantity: int, + **construct_args, +): + """ + Composes a transaction to detach assets from UTXO to an address. + :param utxo: The utxo from which the assets are detached (e.g. $UTXO_WITH_BALANCE) + :param destination: The address to detach the assets to (e.g. $ADDRESS_1) + :param asset: The asset or subasset to detach (e.g. XCP) + :param quantity: The quantity of the asset to detach (in satoshis, hence integer) (e.g. 1000) + """ + return compose_utxo( + db, + source=utxo, + destination=destination, + asset=asset, + quantity=quantity, + **construct_args, + ) + + +def compose_movetoutxo(db, utxo: str, destination: str, more_utxos: str = ""): + """ + Composes a transaction to move assets from UTXO to another UTXO. + :param utxo: The utxo from which the assets are moved + :param destination: The address to move the assets to + :param more_utxos: The additional utxos to fund the transaction + """ + decimal.getcontext().prec = 8 + + more_utxos_list = [] + input_count = 1 + total_value = D("0") + try: + source_address, source_value = backend.bitcoind.get_utxo_address_and_value(utxo) + total_value += D(source_value) + for more_utxo in more_utxos.split(","): + if more_utxo == "": + continue + _more_utxo_address, more_utxo_value = backend.bitcoind.get_utxo_address_and_value( + more_utxo + ) + more_utxo_tx_hash, more_utxo_vout = more_utxo.split(":") + more_utxos_list.append({"txid": more_utxo_tx_hash, "vout": int(more_utxo_vout)}) + input_count += 1 + total_value += D(more_utxo_value) + except exceptions.InvalidUTXOError as e: + raise exceptions.ComposeError("Invalid UTXO for source") from e + + try: + script.validate(destination) + except Exception as e: + raise exceptions.ComposeError("Invalid address for destination") from e + + tx_hash, vout = utxo.split(":") + + fee_per_kb = backend.bitcoind.fee_per_kb() + # Transaction Size (in bytes) = (Number of Inputs x 148) + (Number of Outputs x 34) + 10 + tx_size = (input_count * 148) + (2 * 34) + 10 + fee = (D(fee_per_kb) / config.UNIT) * (D(tx_size) / 1024) + + dust = D("0.0000546") + change = D(total_value) - dust - fee + + if change < 0: + raise exceptions.ComposeError("Insufficient funds for fee") + + inputs = [{"txid": tx_hash, "vout": int(vout)}] + more_utxos_list + outputs = [{destination: str(dust)}, {source_address: str(change)}] + rawtransaction = backend.bitcoind.createrawtransaction(inputs, outputs) + + return { + "rawtransaction": rawtransaction, + "params": { + "source": utxo, + "destination": destination, + }, + "name": "movetoutxo", + "data": None, + } + + +def info_by_tx_hash(db, tx_hash: str): + """ + Returns Counterparty information from a transaction hash. + :param tx_hash: Transaction hash (e.g. $LAST_MEMPOOL_TX_HASH) + """ + try: + rawtransaction = backend.bitcoind.getrawtransaction(tx_hash) + except Exception as e: + raise exceptions.ComposeError("Invalid transaction") from e + return info(db, rawtransaction) + + +def info(db, rawtransaction: str, block_index: int = None): + """ + Returns Counterparty information from a raw transaction in hex format. + :param rawtransaction: Raw transaction in hex format (e.g. $RAW_TRANSACTION_1) + :param block_index: Block index mandatory for transactions before block 335000 + """ + try: + decoded_tx = deserialize.deserialize_tx( + rawtransaction, use_txid=util.enabled("correct_segwit_txids", block_index) + ) + except Exception as e: + raise exceptions.ComposeError("Invalid rawtransaction") from e + + source, destination, btc_amount, fee, data, _dispensers_outs, _utxos_info = ( + gettxinfo.get_tx_info( + db, + decoded_tx, + block_index=block_index, + ) + ) + del decoded_tx["__data__"] + result = { + "source": source, + "destination": destination if destination else None, + "btc_amount": btc_amount, + "fee": fee, + "data": util.hexlify(data) if data else "", + "decoded_tx": decoded_tx, + } + if data: + result["data"] = util.hexlify(data) + result["unpacked_data"] = unpack(db, result["data"], block_index) + return result + + +def unpack(db, datahex: str, block_index: int = None): + """ + Unpacks Counterparty data in hex format and returns the message type and data. + :param datahex: Data in hex format (e.g. 020000000001016a65c1624e53f4d33ce02e726a6606faed60cc014d5b1a578ba3e09b4b3f8f890100000000ffffffff020000000000000000176a150d55e8b6118808b7b663b365473f142274028b8af60245092701000000160014a3df8a5a83d4e2827b59b43f5ce6ce5d2e52093f0247304402204b7a2859cbce34e725a1132fec2dd4b075503dadff0a0c407ae7c22a7712fe4d0220563ceb2ceebdf649343bb24819fc808639cce7781305b4588ffbe4a20390d2780121020ace9adf60fe4ec05dab922ccdc5727cbf664cafc7cdb845de534855266314c800000000) + :param block_index: Block index of the transaction containing this data + """ + data = binascii.unhexlify(datahex) + message_type_id, message = message_type.unpack(data) + block_index = block_index or util.CURRENT_BLOCK_INDEX + + issuance_ids = [ + messages.issuance.ID, + messages.issuance.LR_ISSUANCE_ID, + messages.issuance.SUBASSET_ID, + messages.issuance.LR_SUBASSET_ID, + ] + + # Unknown message type + message_data = {"error": "Unknown message type"} + message_type_name = "unknown" + try: + # Bet + if message_type_id == messages.bet.ID: + message_type_name = "bet" + message_data = messages.bet.unpack(message, return_dict=True) + # Broadcast + elif message_type_id == messages.broadcast.ID: + message_type_name = "broadcast" + message_data = messages.broadcast.unpack(message, block_index, return_dict=True) + # BTCPay + elif message_type_id == messages.btcpay.ID: + message_type_name = "btcpay" + message_data = messages.btcpay.unpack(message, return_dict=True) + # Cancel + elif message_type_id == messages.cancel.ID: + message_type_name = "cancel" + message_data = messages.cancel.unpack(message, return_dict=True) + # Destroy + elif message_type_id == messages.destroy.ID: + message_type_name = "destroy" + message_data = messages.destroy.unpack(db, message, return_dict=True) + # Dispenser + elif message_type_id == messages.dispenser.ID: + message_type_name = "dispenser" + message_data = messages.dispenser.unpack(message, return_dict=True) + elif message_type_id == messages.dispenser.DISPENSE_ID: + message_type_name = "dispense" + message_data = messages.dispense.unpack(message, return_dict=True) + # Dividend + elif message_type_id == messages.dividend.ID: + message_type_name = "dividend" + message_data = messages.dividend.unpack(db, message, block_index, return_dict=True) + # Issuance + elif message_type_id in issuance_ids: + message_type_name = "issuance" + message_data = messages.issuance.unpack( + db, message, message_type_id, block_index, return_dict=True + ) + # Order + elif message_type_id == messages.order.ID: + message_type_name = "order" + message_data = messages.order.unpack(db, message, block_index, return_dict=True) + # Send + elif message_type_id == messages.send.ID: + message_type_name = "send" + message_data = messages.send.unpack(db, message, block_index) + # Enhanced send + elif message_type_id == messages.versions.enhanced_send.ID: + message_type_name = "enhanced_send" + message_data = messages.versions.enhanced_send.unpack(message, block_index) + # MPMA send + elif message_type_id == messages.versions.mpma.ID: + message_type_name = "mpma_send" + mpma_message_data = messages.versions.mpma.unpack(message, block_index) + message_data = [] + for asset_name, send_info in mpma_message_data.items(): + message_data.append( + { + "asset": asset_name, + "destination": send_info[0][0], + "quantity": send_info[0][1], + "memo": send_info[0][2] if len(send_info[0]) > 2 else None, + "memo_is_hex": send_info[0][3] if len(send_info[0]) > 3 else None, + } + ) + # RPS + elif message_type_id == messages.rps.ID: + message_type_name = "rps" + message_data = messages.rps.unpack(message, return_dict=True) + # RPS Resolve + elif message_type_id == messages.rpsresolve.ID: + message_type_name = "rpsresolve" + message_data = messages.rpsresolve.unpack(message, return_dict=True) + # Sweep + elif message_type_id == messages.sweep.ID: + message_type_name = "sweep" + message_data = messages.sweep.unpack(message) + # Fair Minter + elif message_type_id == messages.fairminter.ID: + message_type_name = "fairminter" + message_data = messages.fairminter.unpack(message) + # Fair Mint + elif message_type_id == messages.fairmint.ID: + message_type_name = "fairmint" + message_data = messages.fairmint.unpack(message) + except (exceptions.UnpackError, UnicodeDecodeError) as e: + message_data = {"error": str(e)} + + return { + "message_type": message_type_name, + "message_type_id": message_type_id, + "message_data": message_data, + } diff --git a/counterparty-core/counterpartycore/lib/api/queries.py b/counterparty-core/counterpartycore/lib/api/queries.py index 7bbd7506c8..581fb0a333 100644 --- a/counterparty-core/counterpartycore/lib/api/queries.py +++ b/counterparty-core/counterpartycore/lib/api/queries.py @@ -73,6 +73,30 @@ SUPPORTED_SORT_FIELDS = { "balances": ["address", "asset", "quantity"], + "order_matches": [ + "block_index", + "forward_asset", + "forward_quantity", + "backward_asset", + "backward_quantity", + "match_expire_index", + ], + "orders": [ + "block_index", + "give_asset", + "give_quantity", + "get_asset", + "get_quantity", + "expiration", + ], + "dispensers": [ + "block_index", + "asset", + "give_quantity", + "give_remaining", + "dispense_count", + "satoshirate", + ], } ADDRESS_FIELDS = ["source", "address", "issuer", "destination"] @@ -1527,6 +1551,15 @@ def get_balance_by_address_and_asset(db, address: str, asset: str): ) +def get_balance_by_asset_and_address(db, asset: str, address: str): + """ + Returns the balance of an address and asset + :param str address: The address to return (e.g. $ADDRESS_1) + :param str asset: The asset to return (e.g. XCP) + """ + return get_balance_by_address_and_asset(db, address, asset) + + def get_bets( db, status: BetStatus = "open", cursor: str = None, limit: int = 100, offset: int = None ): @@ -1742,7 +1775,12 @@ def prepare_dispenser_where(status, other_conditions=None): def get_dispensers( - db, status: DispenserStatus = "all", cursor: str = None, limit: int = 100, offset: int = None + db, + status: DispenserStatus = "all", + cursor: str = None, + limit: int = 100, + offset: int = None, + sort: str = None, ): """ Returns all dispensers @@ -1750,6 +1788,7 @@ def get_dispensers( :param str cursor: The last index of the dispensers to return :param int limit: The maximum number of dispensers to return (e.g. 5) :param int offset: The number of lines to skip before returning results (overrides the `cursor` parameter) + :param str sort: The sort order of the dispensers to return (overrides the `cursor` parameter) (e.g. block_index:asc) """ return select_rows( @@ -1759,6 +1798,7 @@ def get_dispensers( last_cursor=cursor, limit=limit, offset=offset, + sort=sort, ) @@ -1769,6 +1809,7 @@ def get_dispensers_by_address( cursor: str = None, limit: int = 100, offset: int = None, + sort: str = None, ): """ Returns the dispensers of an address @@ -1777,6 +1818,7 @@ def get_dispensers_by_address( :param str cursor: The last index of the dispensers to return :param int limit: The maximum number of dispensers to return (e.g. 5) :param int offset: The number of lines to skip before returning results (overrides the `cursor` parameter) + :param str sort: The sort order of the dispensers to return (overrides the `cursor` parameter) (e.g. give_quantity:desc) """ return select_rows( db, @@ -1785,6 +1827,7 @@ def get_dispensers_by_address( last_cursor=cursor, limit=limit, offset=offset, + sort=sort, ) @@ -1795,6 +1838,7 @@ def get_dispensers_by_asset( cursor: str = None, limit: int = 100, offset: int = None, + sort: str = None, ): """ Returns the dispensers of an asset @@ -1803,6 +1847,7 @@ def get_dispensers_by_asset( :param str cursor: The last index of the dispensers to return :param int limit: The maximum number of dispensers to return (e.g. 5) :param int offset: The number of lines to skip before returning results (overrides the `cursor` parameter) + :param str sort: The sort order of the dispensers to return (overrides the `cursor` parameter) (e.g. give_quantity:desc) """ return select_rows( db, @@ -1811,6 +1856,7 @@ def get_dispensers_by_asset( last_cursor=cursor, limit=limit, offset=offset, + sort=sort, ) @@ -2058,7 +2104,12 @@ def prepare_order_matches_where(status, other_conditions=None): def get_orders( - db, status: OrderStatus = "all", cursor: str = None, limit: int = 100, offset: int = None + db, + status: OrderStatus = "all", + cursor: str = None, + limit: int = 100, + offset: int = None, + sort: str = None, ): """ Returns all the orders @@ -2066,6 +2117,7 @@ def get_orders( :param str cursor: The last index of the orders to return :param int limit: The maximum number of orders to return (e.g. 5) :param int offset: The number of lines to skip before returning results (overrides the `cursor` parameter) + :param str sort: The sort order of the orders to return (overrides the `cursor` parameter) (e.g. expiration:desc) """ return select_rows( db, @@ -2075,6 +2127,7 @@ def get_orders( last_cursor=cursor, limit=limit, offset=offset, + sort=sort, ) @@ -2085,6 +2138,7 @@ def get_orders_by_asset( cursor: str = None, limit: int = 100, offset: int = None, + sort: str = None, ): """ Returns the orders of an asset @@ -2093,6 +2147,7 @@ def get_orders_by_asset( :param str cursor: The last index of the orders to return :param int limit: The maximum number of orders to return (e.g. 5) :param int offset: The number of lines to skip before returning results (overrides the `cursor` parameter) + :param str sort: The sort order of the orders to return (overrides the `cursor` parameter) (e.g. expiration:desc) """ where = prepare_order_where(status, {"give_asset": asset.upper()}) + prepare_order_where( status, {"get_asset": asset.upper()} @@ -2106,6 +2161,7 @@ def get_orders_by_asset( last_cursor=cursor, limit=limit, offset=offset, + sort=sort, ) @@ -2116,6 +2172,7 @@ def get_orders_by_address( cursor: str = None, limit: int = 100, offset: int = None, + sort: str = None, ): """ Returns the orders of an address @@ -2124,6 +2181,7 @@ def get_orders_by_address( :param str cursor: The last index of the orders to return :param int limit: The maximum number of orders to return (e.g. 5) :param int offset: The number of lines to skip before returning results (overrides the `cursor` parameter) + :param str sort: The sort order of the orders to return (overrides the `cursor` parameter) (e.g. expiration:desc) """ return select_rows( db, @@ -2133,6 +2191,7 @@ def get_orders_by_address( last_cursor=cursor, limit=limit, offset=offset, + sort=sort, ) @@ -2144,6 +2203,7 @@ def get_orders_by_two_assets( cursor: str = None, limit: int = 100, offset: int = None, + sort: str = None, ): """ Returns the orders to exchange two assets @@ -2153,6 +2213,7 @@ def get_orders_by_two_assets( :param str cursor: The last index of the orders to return :param int limit: The maximum number of orders to return (e.g. 5) :param int offset: The number of lines to skip before returning results (overrides the `cursor` parameter) + :param str sort: The sort order of the orders to return (overrides the `cursor` parameter) (e.g. expiration:desc) """ where = prepare_order_where( status, {"give_asset": asset1.upper(), "get_asset": asset2.upper()} @@ -2165,6 +2226,7 @@ def get_orders_by_two_assets( last_cursor=cursor, limit=limit, offset=offset, + sort=sort, ) for order in query_result.result: order["market_pair"] = f"{asset1}/{asset2}" @@ -2211,7 +2273,12 @@ def get_order(db, order_hash: str): def get_all_order_matches( - db, status: OrderMatchesStatus = "all", cursor: str = None, limit: int = 100, offset: int = None + db, + status: OrderMatchesStatus = "all", + cursor: str = None, + limit: int = 100, + offset: int = None, + sort: str = None, ): """ Returns all the order matches @@ -2219,6 +2286,7 @@ def get_all_order_matches( :param str cursor: The last index of the order matches to return :param int limit: The maximum number of order matches to return (e.g. 5) :param int offset: The number of lines to skip before returning results (overrides the `cursor` parameter) + :param str sort: The sort order of the order matches to return (overrides the `cursor` parameter) (e.g. forward_quantity:desc) """ return select_rows( db, @@ -2227,6 +2295,7 @@ def get_all_order_matches( last_cursor=cursor, limit=limit, offset=offset, + sort=sort, ) @@ -2237,6 +2306,7 @@ def get_order_matches_by_order( cursor: str = None, limit: int = 100, offset: int = None, + sort: str = None, ): """ Returns the order matches of an order @@ -2245,6 +2315,7 @@ def get_order_matches_by_order( :param str cursor: The last index of the order matches to return :param int limit: The maximum number of order matches to return (e.g. 5) :param int offset: The number of lines to skip before returning results (overrides the `cursor` parameter) + :param str sort: The sort order of the order matches to return (overrides the `cursor` parameter) (e.g. forward_quantity:desc) """ where = prepare_order_matches_where( status, {"tx0_hash": order_hash} @@ -2256,6 +2327,7 @@ def get_order_matches_by_order( last_cursor=cursor, limit=limit, offset=offset, + sort=sort, ) @@ -2266,6 +2338,7 @@ def get_order_matches_by_asset( cursor: str = None, limit: int = 100, offset: int = None, + sort: str = None, ): """ Returns the orders of an asset @@ -2274,6 +2347,7 @@ def get_order_matches_by_asset( :param str cursor: The last index of the order matches to return :param int limit: The maximum number of order matches to return (e.g. 5) :param int offset: The number of lines to skip before returning results (overrides the `cursor` parameter) + :param str sort: The sort order of the order matches to return (overrides the `cursor` parameter) (e.g. forward_quantity:desc) """ where = prepare_order_matches_where( status, {"forward_asset": asset.upper()} @@ -2286,6 +2360,7 @@ def get_order_matches_by_asset( last_cursor=cursor, limit=limit, offset=offset, + sort=sort, ) @@ -2297,6 +2372,7 @@ def get_order_matches_by_two_assets( cursor: str = None, limit: int = 100, offset: int = None, + sort: str = None, ): """ Returns the orders to exchange two assets @@ -2306,6 +2382,7 @@ def get_order_matches_by_two_assets( :param str cursor: The last index of the order matches to return :param int limit: The maximum number of order matches to return (e.g. 5) :param int offset: The number of lines to skip before returning results (overrides the `cursor` parameter) + :param str sort: The sort order of the order matches to return (overrides the `cursor` parameter) (e.g. forward_quantity:desc) """ where = prepare_order_matches_where( status, {"forward_asset": asset1.upper(), "backward_asset": asset2.upper()} @@ -2319,6 +2396,7 @@ def get_order_matches_by_two_assets( last_cursor=cursor, limit=limit, offset=offset, + sort=sort, ) for order in query_result.result: order["market_pair"] = f"{asset1}/{asset2}" diff --git a/counterparty-core/counterpartycore/lib/api/routes.py b/counterparty-core/counterpartycore/lib/api/routes.py index ec79b1b1c7..bdf0172943 100644 --- a/counterparty-core/counterpartycore/lib/api/routes.py +++ b/counterparty-core/counterpartycore/lib/api/routes.py @@ -1,5 +1,4 @@ -from counterpartycore.lib import transaction -from counterpartycore.lib.api import queries, util +from counterpartycore.lib.api import compose, queries, util from counterpartycore.lib.backend import addrindexrs, bitcoind @@ -31,8 +30,9 @@ def get_routes(): "/v2/blocks//sweeps": queries.get_sweeps_by_block, ### /transactions ### "/v2/transactions": queries.get_transactions, - "/v2/transactions/info": transaction.info, - "/v2/transactions/unpack": transaction.unpack, + "/v2/transactions/info": compose.info, + "/v2/transactions//info": compose.info_by_tx_hash, + "/v2/transactions/unpack": compose.unpack, "/v2/transactions/": queries.get_transaction_by_tx_index, "/v2/transactions/": queries.get_transaction_by_hash, "/v2/transactions//events": queries.get_events_by_transaction_index, @@ -73,30 +73,30 @@ def get_routes(): "/v2/addresses/
/fairmints": queries.get_fairmints_by_address, "/v2/addresses/
/fairmints/": queries.get_fairmints_by_address_and_asset, ### /addresses/
/compose/ ### - "/v2/addresses/
/compose/bet": transaction.compose_bet, - "/v2/addresses/
/compose/broadcast": transaction.compose_broadcast, - "/v2/addresses/
/compose/btcpay": transaction.compose_btcpay, - "/v2/addresses/
/compose/burn": transaction.compose_burn, - "/v2/addresses/
/compose/cancel": transaction.compose_cancel, - "/v2/addresses/
/compose/destroy": transaction.compose_destroy, - "/v2/addresses/
/compose/dispenser": transaction.compose_dispenser, - "/v2/addresses/
/compose/dividend": transaction.compose_dividend, - "/v2/addresses/
/compose/issuance": transaction.compose_issuance, - "/v2/addresses/
/compose/mpma": transaction.compose_mpma, - "/v2/addresses/
/compose/order": transaction.compose_order, - "/v2/addresses/
/compose/send": transaction.compose_send, - "/v2/addresses/
/compose/sweep": transaction.compose_sweep, - "/v2/addresses/
/compose/dispense": transaction.compose_dispense, - "/v2/addresses/
/compose/fairminter": transaction.compose_fairminter, - "/v2/addresses/
/compose/fairmint": transaction.compose_fairmint, - "/v2/addresses/
/compose/attach": transaction.compose_attach, - "/v2/utxos//compose/detach": transaction.compose_detach, - "/v2/utxos//compose/movetoutxo": transaction.compose_movetoutxo, + "/v2/addresses/
/compose/bet": compose.compose_bet, + "/v2/addresses/
/compose/broadcast": compose.compose_broadcast, + "/v2/addresses/
/compose/btcpay": compose.compose_btcpay, + "/v2/addresses/
/compose/burn": compose.compose_burn, + "/v2/addresses/
/compose/cancel": compose.compose_cancel, + "/v2/addresses/
/compose/destroy": compose.compose_destroy, + "/v2/addresses/
/compose/dispenser": compose.compose_dispenser, + "/v2/addresses/
/compose/dividend": compose.compose_dividend, + "/v2/addresses/
/compose/issuance": compose.compose_issuance, + "/v2/addresses/
/compose/mpma": compose.compose_mpma, + "/v2/addresses/
/compose/order": compose.compose_order, + "/v2/addresses/
/compose/send": compose.compose_send, + "/v2/addresses/
/compose/sweep": compose.compose_sweep, + "/v2/addresses/
/compose/dispense": compose.compose_dispense, + "/v2/addresses/
/compose/fairminter": compose.compose_fairminter, + "/v2/addresses/
/compose/fairmint": compose.compose_fairmint, + "/v2/addresses/
/compose/attach": compose.compose_attach, + "/v2/utxos//compose/detach": compose.compose_detach, + "/v2/utxos//compose/movetoutxo": compose.compose_movetoutxo, ### /assets ### "/v2/assets": queries.get_valid_assets, "/v2/assets/": queries.get_asset, "/v2/assets//balances": queries.get_asset_balances, - "/v2/assets//balances/
": queries.get_balance_by_address_and_asset, + "/v2/assets//balances/
": queries.get_balance_by_asset_and_address, "/v2/assets//orders": queries.get_orders_by_asset, "/v2/assets//matches": queries.get_order_matches_by_asset, "/v2/assets//credits": queries.get_credits_by_asset, diff --git a/counterparty-core/counterpartycore/lib/api/util.py b/counterparty-core/counterpartycore/lib/api/util.py index e83d2922a3..61db1f1979 100644 --- a/counterparty-core/counterpartycore/lib/api/util.py +++ b/counterparty-core/counterpartycore/lib/api/util.py @@ -11,7 +11,16 @@ import flask import requests import werkzeug -from counterpartycore.lib import backend, config, exceptions, ledger, transaction, util +from counterpartycore.lib import ( + backend, + config, + exceptions, + ledger, + transaction, + transaction_helper, + util, +) +from counterpartycore.lib.api import compose from docstring_parser import parse as parse_docstring D = decimal.Decimal @@ -136,7 +145,9 @@ def pubkeyhash_to_pubkey(address: str, provided_pubkeys: str = None): provided_pubkeys_list = provided_pubkeys.split(",") else: provided_pubkeys_list = None - return transaction.pubkeyhash_to_pubkey(address, provided_pubkeys=provided_pubkeys_list) + return transaction_helper.transaction_outputs.pubkeyhash_to_pubkey( + address, provided_pubkeys=provided_pubkeys_list + ) def get_transaction(tx_hash: str, format: str = "json"): @@ -204,7 +215,7 @@ def prepare_route_args(function): args_description = get_args_description(function) for arg_name, arg in function_args.items(): if arg_name == "construct_args": - for carg_name, carg_info in transaction.COMPOSE_COMMONS_ARGS.items(): + for carg_name, carg_info in compose.COMPOSE_COMMONS_ARGS.items(): args.append( { "name": carg_name, @@ -287,7 +298,7 @@ def to_json(obj, indent=None): def divide(value1, value2): decimal.getcontext().prec = 8 - if value2 == 0: + if value2 == 0 or value1 == 0: return D(0) return D(value1) / D(value2) @@ -660,8 +671,9 @@ def inject_dispensers(db, result_list): def inject_unpacked_data_in_dict(db, item): if "data" in item: data = binascii.hexlify(item["data"]) if isinstance(item["data"], bytes) else item["data"] - block_index = item.get("block_index") - item["unpacked_data"] = transaction.unpack(db, data, block_index=block_index) + if data: + block_index = item.get("block_index") + item["unpacked_data"] = compose.unpack(db, data, block_index=block_index) return item diff --git a/counterparty-core/counterpartycore/lib/backend/bitcoind.py b/counterparty-core/counterpartycore/lib/backend/bitcoind.py index e09839fa82..cf4be0e896 100644 --- a/counterparty-core/counterpartycore/lib/backend/bitcoind.py +++ b/counterparty-core/counterpartycore/lib/backend/bitcoind.py @@ -272,6 +272,11 @@ def get_decoded_transaction(tx_hash, block_index=None): return tx +def get_tx_out_amount(tx_hash, vout): + raw_tx = getrawtransaction(tx_hash, True) + return raw_tx["vout"][vout]["value"] + + class BlockFetcher: def __init__(self, first_block) -> None: self.current_block = first_block diff --git a/counterparty-core/counterpartycore/lib/backend/rsfetcher.py b/counterparty-core/counterpartycore/lib/backend/rsfetcher.py index 056a67bf6b..7fd4937a46 100644 --- a/counterparty-core/counterpartycore/lib/backend/rsfetcher.py +++ b/counterparty-core/counterpartycore/lib/backend/rsfetcher.py @@ -88,7 +88,7 @@ def get_prefetched_block(self, height): logger.debug(f"Looking for Block {height} in prefetch queue...") while height not in self.prefetch_queue: if self.prefetch_queue_size == 0 and self.prefetch_queue_initialized: - logger.warning("Prefetch queue is empty.") + logger.trace("Prefetch queue is empty.") logger.debug(f"Block {height} not found in prefetch queue. Waiting...") time.sleep(0.1) block = self.prefetch_queue.pop(height) diff --git a/counterparty-core/counterpartycore/lib/config.py b/counterparty-core/counterpartycore/lib/config.py index 8ba23c9916..f5e38bed65 100644 --- a/counterparty-core/counterpartycore/lib/config.py +++ b/counterparty-core/counterpartycore/lib/config.py @@ -5,7 +5,7 @@ # Semantic Version -__version__ = "10.4.0" # for hatch +__version__ = "10.4.1" # for hatch VERSION_STRING = __version__ version = VERSION_STRING.split("-")[0].split(".") VERSION_MAJOR = int(version[0]) diff --git a/counterparty-core/counterpartycore/lib/gettxinfo.py b/counterparty-core/counterpartycore/lib/gettxinfo.py index 88a6b6b33b..b7faf496b2 100644 --- a/counterparty-core/counterpartycore/lib/gettxinfo.py +++ b/counterparty-core/counterpartycore/lib/gettxinfo.py @@ -6,7 +6,7 @@ from counterpartycore.lib.exceptions import BTCOnlyError, DecodeError from counterpartycore.lib.messages import dispenser from counterpartycore.lib.opcodes import * # noqa: F403 -from counterpartycore.lib.transaction_helper import p2sh_encoding +from counterpartycore.lib.transaction_helper import p2sh_serializer from counterpartycore.lib.util import inverse_hash logger = logging.getLogger(config.LOGGER_NAME) @@ -213,7 +213,7 @@ def get_transaction_source_from_p2sh(decoded_tx, p2sh_is_segwit): # Ignore transactions with invalid script. asm = script.script_to_asm(vin["script_sig"]) - new_source, new_destination, new_data = p2sh_encoding.decode_p2sh_input( + new_source, new_destination, new_data = p2sh_serializer.decode_p2sh_input( asm, p2sh_is_segwit=prevout_is_segwit ) # this could be a p2sh source address with no encoded data diff --git a/counterparty-core/counterpartycore/lib/ledger.py b/counterparty-core/counterpartycore/lib/ledger.py index def083436a..299439c230 100644 --- a/counterparty-core/counterpartycore/lib/ledger.py +++ b/counterparty-core/counterpartycore/lib/ledger.py @@ -1879,6 +1879,8 @@ def mark_order_as_filled(db, tx0_hash, tx1_hash, source=None): "ORDER_FILLED", {"tx_hash": order["tx_hash"]}, ) + if not util.PARSING_MEMPOOL: + OrdersCache(db).update_order(order["tx_hash"], update_data) def update_order_match_status(db, id, status): diff --git a/counterparty-core/counterpartycore/lib/messages/dispenser.py b/counterparty-core/counterpartycore/lib/messages/dispenser.py index 59ca8593f8..69c4810931 100644 --- a/counterparty-core/counterpartycore/lib/messages/dispenser.py +++ b/counterparty-core/counterpartycore/lib/messages/dispenser.py @@ -708,7 +708,12 @@ def parse(db, tx, message): existing[0]["rowid"], set_data, { - "source": tx["source"], + "source": tx["source"] + if not util.enabled( + "dispenser_origin_permission_extended", + tx["block_index"], + ) + else action_address, "asset": asset, "status": STATUS_OPEN, "tx_hash": existing[0]["tx_hash"], diff --git a/counterparty-core/counterpartycore/lib/transaction.py b/counterparty-core/counterpartycore/lib/transaction.py index 73ec26d68c..0376da8d07 100644 --- a/counterparty-core/counterpartycore/lib/transaction.py +++ b/counterparty-core/counterpartycore/lib/transaction.py @@ -6,1135 +6,289 @@ import binascii import decimal -import hashlib import inspect -import io import logging import sys -import threading - -import bitcoin as bitcoinlib -import cachetools -from bitcoin.core import CTransaction from counterpartycore.lib import ( arc4, # noqa: F401 # TODO: need for test: clean that up - backend, config, deserialize, exceptions, gettxinfo, - message_type, - messages, script, util, ) -from counterpartycore.lib.backend import addrindexrs -from counterpartycore.lib.messages import dispense # noqa: F401 -from counterpartycore.lib.transaction_helper import p2sh_encoding, serializer +from counterpartycore.lib.transaction_helper import ( + common_serializer, + p2sh_serializer, + transaction_inputs, + transaction_outputs, +) + +logger = logging.getLogger(config.LOGGER_NAME) -# Constants -OP_RETURN = b"\x6a" -OP_PUSHDATA1 = b"\x4c" -OP_DUP = b"\x76" -OP_HASH160 = b"\xa9" -OP_EQUALVERIFY = b"\x88" -OP_CHECKSIG = b"\xac" -OP_0 = b"\x00" -OP_1 = b"\x51" -OP_2 = b"\x52" -OP_3 = b"\x53" -OP_CHECKMULTISIG = b"\xae" -OP_EQUAL = b"\x87" D = decimal.Decimal -# FILE AS SINGLETON API -# -# We eventually neet to rip this out and just instantiate the TransactionService -# when we explcitly build up a dependency tree. +def collect_public_keys(pubkeys): + # Get provided pubkeys. + if isinstance(pubkeys, str): + provided_pubkeys = pubkeys.split(",") + elif isinstance(pubkeys, list): + provided_pubkeys = pubkeys + elif pubkeys is None: + provided_pubkeys = [] + else: + raise exceptions.TransactionError("Invalid pubkeys.") -TRANSACTION_SERVICE_SINGLETON = None + for pubkey in provided_pubkeys: + if not script.is_fully_valid(binascii.unhexlify(pubkey)): + raise exceptions.ComposeError(f"invalid public key: {pubkey}") + return provided_pubkeys -def initialise(force=False): - global TRANSACTION_SERVICE_SINGLETON # noqa: PLW0603 +def determine_encoding( + data, + desired_encoding="auto", + op_return_max_size=config.OP_RETURN_MAX_SIZE, +): + # Data encoding methods (choose and validate). + if not data: + return None + + if desired_encoding == "auto": + if len(data) + len(config.PREFIX) <= op_return_max_size: + encoding = "opreturn" + else: + encoding = "multisig" + else: + encoding = desired_encoding - if not force and TRANSACTION_SERVICE_SINGLETON: - return TRANSACTION_SERVICE_SINGLETON + if encoding == "p2sh" and not util.enabled("p2sh_encoding"): + raise exceptions.TransactionError("P2SH encoding not enabled yet") - utxo_locks = None - if config.UTXO_LOCKS_MAX_ADDRESSES > 0: - utxo_locks = util.DictCache(size=config.UTXO_LOCKS_MAX_ADDRESSES) + elif encoding not in ("pubkeyhash", "multisig", "opreturn", "p2sh"): + raise exceptions.TransactionError("Unknown encoding‐scheme.") - TRANSACTION_SERVICE_SINGLETON = TransactionService( - backend=backend, - prefix=config.PREFIX, - ps2h_dust_return_pubkey=config.P2SH_DUST_RETURN_PUBKEY, - utxo_locks_max_age=config.UTXO_LOCKS_MAX_AGE, - utxo_locks_max_addresses=config.UTXO_LOCKS_MAX_ADDRESSES, - default_regular_dust_size=config.DEFAULT_REGULAR_DUST_SIZE, - default_multisig_dust_size=config.DEFAULT_MULTISIG_DUST_SIZE, - estimate_fee_mode=config.ESTIMATE_FEE_MODE, - op_return_max_size=config.OP_RETURN_MAX_SIZE, - utxo_locks=utxo_locks, - utxo_p2sh_encoding_locks=ThreadSafeTTLCache(10000, 180), - utxo_p2sh_encoding_locks_cache=ThreadSafeTTLCache(1000, 600), + return encoding + + +def check_transaction_sanity(db, source, tx_info, unsigned_tx_hex, encoding, inputs): + (desired_source, desired_destination_outputs, desired_data) = tx_info + desired_source = script.make_canonical(desired_source) + desired_destination = ( + script.make_canonical(desired_destination_outputs[0][0]) + if desired_destination_outputs + else "" ) + if desired_data == None: # noqa: E711 + desired_data = b"" + + # Parsed transaction info. + try: + parsed_source, parsed_destination, x, y, parsed_data, extra = ( + # TODO: inject + gettxinfo.get_tx_info_new( + db, + deserialize.deserialize_tx(unsigned_tx_hex, use_txid=True), + util.CURRENT_BLOCK_INDEX, + p2sh_is_segwit=script.is_bech32(desired_source), + composing=True, + ) + ) + + if encoding == "p2sh": + # make_canonical can't determine the address, so we blindly change the desired to the parsed + desired_source = parsed_source + except exceptions.BTCOnlyError: + # Skip BTC‐only transactions. + return + + desired_source = script.make_canonical(desired_source) + + # Check desired info against parsed info. + desired = (desired_source, desired_destination, desired_data) + parsed = (parsed_source, parsed_destination, parsed_data) + if desired != parsed: + transaction_inputs.UTXOLocks().unlock_utxos(source, inputs) + + raise exceptions.TransactionError( + f"Constructed transaction does not parse correctly: {desired} ≠ {parsed}" + ) + + +def serialize_transaction( + inputs, + source, + provided_pubkeys, + destination_outputs, + data_output, + change_output, + encoding, + dust_return_pubkey, + p2sh_source_multisig_pubkeys, + p2sh_source_multisig_pubkeys_required, + p2sh_pretx_txid, + segwit, + exclude_utxos, +): + pretx_txid = unsigned_pretx_hex = unsigned_tx_hex = None + + if encoding == "p2sh": + pretx_txid, unsigned_pretx_hex, unsigned_tx_hex = p2sh_serializer.serialize_p2sh( + inputs, + source, + provided_pubkeys, + destination_outputs, + data_output, + change_output, + dust_return_pubkey, + p2sh_source_multisig_pubkeys, + p2sh_source_multisig_pubkeys_required, + p2sh_pretx_txid, + segwit, + exclude_utxos, + ) + else: + unsigned_tx = common_serializer.serialise( + encoding, + inputs, + destination_outputs, + data_output, + change_output, + dust_return_pubkey=dust_return_pubkey, + ) + unsigned_tx_hex = binascii.hexlify(unsigned_tx).decode("utf-8") + + return unsigned_pretx_hex, unsigned_tx_hex, pretx_txid def construct( db, tx_info, + pubkeys=None, encoding="auto", - fee_per_kb=config.DEFAULT_FEE_PER_KB, - estimate_fee_per_kb=None, - estimate_fee_per_kb_nblocks=config.ESTIMATE_FEE_CONF_TARGET, + fee_per_kb=None, + exact_fee=None, + fee_provided=0, + confirmation_target=config.ESTIMATE_FEE_CONF_TARGET, regular_dust_size=config.DEFAULT_REGULAR_DUST_SIZE, multisig_dust_size=config.DEFAULT_MULTISIG_DUST_SIZE, op_return_value=config.DEFAULT_OP_RETURN_VALUE, - exact_fee=None, - fee_provided=0, - provided_pubkeys=None, - dust_return_pubkey=None, + op_return_max_size=config.OP_RETURN_MAX_SIZE, allow_unconfirmed_inputs=False, unspent_tx_hash=None, - custom_inputs=None, + exclude_utxos=None, + inputs_set=None, disable_utxo_locks=False, - extended_tx_info=False, - old_style_api=None, segwit=False, + dust_return_pubkey=None, p2sh_source_multisig_pubkeys=None, p2sh_source_multisig_pubkeys_required=None, p2sh_pretx_txid=None, - exclude_utxos="", ): - if TRANSACTION_SERVICE_SINGLETON is None: - raise Exception("Transaction not initialized") - - return TRANSACTION_SERVICE_SINGLETON.construct( - db, - tx_info, - encoding, - fee_per_kb, - estimate_fee_per_kb, - estimate_fee_per_kb_nblocks, - regular_dust_size, - multisig_dust_size, - op_return_value, - exact_fee, - fee_provided, - provided_pubkeys, - dust_return_pubkey, - allow_unconfirmed_inputs, - unspent_tx_hash, - custom_inputs, - disable_utxo_locks, - extended_tx_info, - old_style_api, - segwit, - p2sh_source_multisig_pubkeys, - p2sh_source_multisig_pubkeys_required, - p2sh_pretx_txid, - exclude_utxos, - ) - - -class BaseThreadSafeCache: - def __init__(self, *args, **kwargs): - # Note: reading is thread safe out of the box - self.lock = threading.Lock() - self.__cache = self.create_cache(*args, **kwargs) - - def create_cache(self, *args, **kwargs): - raise NotImplementedError + # Extract tx_info + (source, destinations, data) = tx_info - def get(self, key, default=None): - return self.__cache.get(key, default) + # Collect pubkeys + provided_pubkeys = collect_public_keys(pubkeys) - def pop(self, key, default=None): - with self.lock: - return self.__cache.pop(key, default) + # Sanity checks. + if source: + script.validate(source) + if exact_fee and not isinstance(exact_fee, int): + raise exceptions.TransactionError("Exact fees must be in satoshis.") + if not isinstance(fee_provided, int): + raise exceptions.TransactionError("Fee provided must be in satoshis.") - def delete(self, key): - with self.lock: - try: - del self.__cache[key] - except KeyError: - pass + """Determine encoding method""" - def _get_cache(self): - return self.__cache + encoding = determine_encoding(data, encoding, op_return_max_size) - def set(self, key, value): - with self.lock: - try: - self.__cache[key] = value - except KeyError: - pass + """Outputs""" - def keys(self): - return self.__cache.keys() - - def __len__(self): - return len(self.__cache) - - def __iter__(self): - return iter(self.__cache) - - def __contains__(self, key): - return key in self.__cache - - -class ThreadSafeTTLCache(BaseThreadSafeCache): - def create_cache(self, *args, **kwargs): - return cachetools.TTLCache(*args, **kwargs) - - -def sort_unspent_txouts(unspent, dust_size=config.DEFAULT_REGULAR_DUST_SIZE): - # Filter out all dust amounts to avoid bloating the resultant transaction - unspent = list(filter(lambda x: x["value"] > dust_size, unspent)) - # Sort by amount, using the largest UTXOs available - if config.REGTEST: - # REGTEST has a lot of coinbase inputs that can't be spent due to maturity - # this doesn't usually happens on mainnet or testnet because most fednodes aren't mining - unspent = sorted(unspent, key=lambda x: (x["confirmations"], x["value"]), reverse=True) - else: - unspent = sorted(unspent, key=lambda x: x["value"], reverse=True) - - return unspent - - -def pubkeyhash_to_pubkey(pubkeyhash, provided_pubkeys=None): - # Search provided pubkeys. - if provided_pubkeys: - if type(provided_pubkeys) != list: # noqa: E721 - provided_pubkeys = [provided_pubkeys] - for pubkey in provided_pubkeys: - if pubkeyhash == script.pubkey_to_pubkeyhash(util.unhexlify(pubkey)): - return pubkey - elif pubkeyhash == script.pubkey_to_p2whash(util.unhexlify(pubkey)): - return pubkey - - # Search blockchain. - raw_transactions = addrindexrs.search_raw_transactions(pubkeyhash, unconfirmed=True) - for tx_id in raw_transactions: - tx = raw_transactions[tx_id] - for vin in tx["vin"]: - if "txinwitness" in vin: - if len(vin["txinwitness"]) >= 2: - # catch unhexlify errs for when txinwitness[1] isn't a witness program (eg; for P2W) - try: - pubkey = vin["txinwitness"][1] - if pubkeyhash == script.pubkey_to_p2whash(util.unhexlify(pubkey)): - return pubkey - except binascii.Error: - pass - elif "coinbase" not in vin: - scriptsig = vin["scriptSig"] - asm = scriptsig["asm"].split(" ") - if len(asm) >= 2: - # catch unhexlify errs for when asm[1] isn't a pubkey (eg; for P2SH) - try: - pubkey = asm[1] - if pubkeyhash == script.pubkey_to_pubkeyhash(util.unhexlify(pubkey)): - return pubkey - except binascii.Error: - pass - - raise exceptions.UnknownPubKeyError( - "Public key was neither provided nor published in blockchain." + ( + destination_outputs, + destination_btc_out, + data_array, + data_btc_out, + data_output, + dust_return_pubkey, + ) = transaction_outputs.prepare_outputs( + data, + source, + destinations, + provided_pubkeys, + encoding, + multisig_dust_size, + regular_dust_size, + dust_return_pubkey, + op_return_value, + exact_fee, + fee_per_kb, ) + """Inputs""" -def multisig_pubkeyhashes_to_pubkeys(address, provided_pubkeys=None): - signatures_required, pubkeyhashes, signatures_possible = script.extract_array(address) - pubkeys = [pubkeyhash_to_pubkey(pubkeyhash, provided_pubkeys) for pubkeyhash in pubkeyhashes] - return script.construct_array(signatures_required, pubkeys, signatures_possible) - - -# set higher than the max number of UTXOs we should expect to -# manage in an aging cache for any one source address, at any one period -# UTXO_P2SH_ENCODING_LOCKS is TTLCache for UTXOs that are used for chaining p2sh encoding -# instead of a simple (txid, vout) key we use [(vin.prevout.hash, vin.prevout.n) for vin tx1.vin] -# we cache the make_outkey_vin to avoid having to fetch raw txs too often - - -class TransactionService: - def __init__( - self, - backend, - prefix, - ps2h_dust_return_pubkey, - utxo_locks_max_age=3.0, - utxo_locks_max_addresses=1000, - utxo_locks_per_address_maxsize=5000, - default_regular_dust_size=config.DEFAULT_REGULAR_DUST_SIZE, - default_multisig_dust_size=config.DEFAULT_MULTISIG_DUST_SIZE, - estimate_fee_mode=config.ESTIMATE_FEE_MODE, - op_return_max_size=config.OP_RETURN_MAX_SIZE, - utxo_p2sh_encoding_locks=None, - utxo_p2sh_encoding_locks_cache=None, - utxo_locks=None, - ): - self.logger = logging.getLogger( - config.LOGGER_NAME - ) # has to be config.LOGGER_NAME or integration tests fail - self.backend = backend - - self.utxo_p2sh_encoding_locks = utxo_p2sh_encoding_locks or ThreadSafeTTLCache(10000, 180) - self.utxo_p2sh_encoding_locks_cache = utxo_p2sh_encoding_locks_cache or ThreadSafeTTLCache( - 1000, 600 - ) - self.utxo_locks = utxo_locks - - self.utxo_locks_max_age = utxo_locks_max_age - self.utxo_locks_max_addresses = utxo_locks_max_addresses - self.utxo_locks_per_address_maxsize = utxo_locks_per_address_maxsize - - self.default_regular_dust_size = default_regular_dust_size - self.default_multisig_dust_size = default_multisig_dust_size - self.estimate_fee_mode = estimate_fee_mode - - self.prefix = prefix - self.op_return_max_size = op_return_max_size - self.ps2h_dust_return_pubkey = ps2h_dust_return_pubkey - - def get_dust_return_pubkey(self, source, provided_pubkeys, encoding): - """Return the pubkey to which dust from data outputs will be sent. - - This pubkey is used in multi-sig data outputs (as the only real pubkey) to - make those the outputs spendable. It is derived from the source address, so - that the dust is spendable by the creator of the transaction. - """ - # Get hex dust return pubkey. - # inject `script` - if script.is_multisig(source): - a, self_pubkeys, b = script.extract_array( - multisig_pubkeyhashes_to_pubkeys(source, provided_pubkeys) - ) - dust_return_pubkey_hex = self_pubkeys[0] - else: - dust_return_pubkey_hex = pubkeyhash_to_pubkey(source, provided_pubkeys) - - # Convert hex public key into the (binary) dust return pubkey. - try: - dust_return_pubkey = binascii.unhexlify(dust_return_pubkey_hex) - except binascii.Error: - raise script.InputError("Invalid private key.") # noqa: B904 - - return dust_return_pubkey - - def make_outkey_vin_txid(self, txid, vout): - if (txid, vout) not in self.utxo_p2sh_encoding_locks_cache: - txhex = self.backend.bitcoind.getrawtransaction(txid, verbose=False) - self.utxo_p2sh_encoding_locks_cache.set((txid, vout), make_outkey_vin(txhex, vout)) - - return self.utxo_p2sh_encoding_locks_cache.get((txid, vout)) - - def construct_coin_selection( - self, - encoding, - data_array, + (inputs, change_output, btc_in, final_fee) = transaction_inputs.prepare_inputs( source, + data, + destination_outputs, + destination_btc_out, + data_array, + data_btc_out, + provided_pubkeys, + encoding, + p2sh_pretx_txid, allow_unconfirmed_inputs, unspent_tx_hash, - custom_inputs, + inputs_set, fee_per_kb, - estimate_fee_per_kb, - estimate_fee_per_kb_nblocks, + confirmation_target, exact_fee, - size_for_fee, fee_provided, - destination_btc_out, - data_btc_out, regular_dust_size, + multisig_dust_size, disable_utxo_locks, exclude_utxos, - ): - # Array of UTXOs, as retrieved by listunspent function from bitcoind - if custom_inputs: - use_inputs = unspent = custom_inputs - else: - if unspent_tx_hash is not None: - unspent = self.backend.addrindexrs.get_unspent_txouts( - source, - unconfirmed=allow_unconfirmed_inputs, - unspent_tx_hash=unspent_tx_hash, - ) - else: - unspent = self.backend.addrindexrs.get_unspent_txouts( - source, unconfirmed=allow_unconfirmed_inputs - ) - self.logger.trace( - f"TX Construct - Unspent UTXOs: {[print_coin(coin) for coin in unspent]}" - ) - if len(unspent) == 0: - raise exceptions.BalanceError( - f"Insufficient {config.BTC} at address {source}: no unspent outputs." - ) - - filter_unspents_utxo_locks = [] - if self.utxo_locks is not None and source in self.utxo_locks: - filter_unspents_utxo_locks = self.utxo_locks[source].keys() - filter_unspents_p2sh_locks = self.utxo_p2sh_encoding_locks.keys() # filter out any locked UTXOs to prevent creating transactions that spend the same UTXO when they're created at the same time - filtered_unspent = [] - for output in unspent: - if ( - make_outkey(output) not in filter_unspents_utxo_locks - and self.make_outkey_vin_txid(output["txid"], output["vout"]) - not in filter_unspents_p2sh_locks - and f"{output['txid']}:{output['vout']}" not in exclude_utxos.split(",") - ): - filtered_unspent.append(output) - unspent = filtered_unspent - - if encoding == "multisig": - dust = self.default_multisig_dust_size - else: - dust = self.default_regular_dust_size - - unspent = sort_unspent_txouts(unspent, dust_size=dust) - # self.logger.debug(f"Sorted candidate UTXOs: {[print_coin(coin) for coin in unspent]}") - use_inputs = unspent - - # use backend estimated fee_per_kb - if estimate_fee_per_kb: - estimated_fee_per_kb = self.backend.bitcoind.fee_per_kb( - estimate_fee_per_kb_nblocks, config.ESTIMATE_FEE_MODE - ) - if estimated_fee_per_kb is not None: - fee_per_kb = max( - estimated_fee_per_kb, fee_per_kb - ) # never drop below the default fee_per_kb - - self.logger.trace(f"TX Construct - Fee/KB {fee_per_kb / config.UNIT:.8f}") - - inputs = [] - btc_in = 0 - change_quantity = 0 - sufficient_funds = False - final_fee = fee_per_kb - desired_input_count = 1 - - if encoding == "multisig" and data_array and util.enabled("bytespersigop"): - desired_input_count = len(data_array) * 2 - - # pop inputs until we can pay for the fee - use_inputs_index = 0 - for coin in use_inputs: - self.logger.trace(f"TX Construct - New input: {print_coin(coin)}") - inputs.append(coin) - btc_in += round(coin["amount"] * config.UNIT) - - # If exact fee is specified, use that. Otherwise, calculate size of tx - # and base fee on that (plus provide a minimum fee for selling BTC). - size = 181 * len(inputs) + size_for_fee + 10 - if exact_fee: - final_fee = exact_fee - else: - necessary_fee = int(size / 1000 * fee_per_kb) - final_fee = max(fee_provided, necessary_fee) - self.logger.trace( - f"TX Construct - final_fee inputs: {len(inputs)} size: {size} final_fee {final_fee}" - ) - - # Check if good. - btc_out = destination_btc_out + data_btc_out - change_quantity = btc_in - (btc_out + final_fee) - self.logger.trace( - f"TX Construct - Size: {size} Fee: {final_fee / config.UNIT:.8f} Change quantity: {change_quantity / config.UNIT:.8f} BTC" - ) - - # If after the sum of all the utxos the change is dust, then it will be added to the miners instead of returning an error - if ( - (use_inputs_index == len(use_inputs) - 1) - and (change_quantity > 0) - and (change_quantity < regular_dust_size) - ): - sufficient_funds = True - final_fee = final_fee + change_quantity - change_quantity = 0 - # If change is necessary, must not be a dust output. - elif change_quantity == 0 or change_quantity >= regular_dust_size: - sufficient_funds = True - if len(inputs) >= desired_input_count: - break - - use_inputs_index = use_inputs_index + 1 - - if not sufficient_funds: - # Approximate needed change, fee by with most recently calculated - # quantities. - btc_out = destination_btc_out + data_btc_out - total_btc_out = btc_out + max(change_quantity, 0) + final_fee - - need = f"{D(total_btc_out) / D(config.UNIT)} {config.BTC}" - include_fee = f"{D(final_fee) / D(config.UNIT)} {config.BTC}" - available = f"{D(btc_in) / D(config.UNIT)} {config.BTC}" - error_message = f"Insufficient {config.BTC} at address {source}. Need: {need} (Including fee: {include_fee}), available: {available}." - error_message += f" These fees are estimated for a confirmation target of {estimate_fee_per_kb_nblocks} blocks, you can reduce them by using the `confirmation_target` parameter with a higher value or by manually setting the fees with the `fee` parameter." - - if not allow_unconfirmed_inputs: - error_message += " To spend unconfirmed coins, use the flag `--unconfirmed`. (Unconfirmed coins cannot be spent from multi‐sig addresses.)" - - raise exceptions.BalanceError(error_message) - - # Lock the source's inputs (UTXOs) chosen for this transaction - if self.utxo_locks is not None and not disable_utxo_locks: - if source not in self.utxo_locks: - self.utxo_locks[source] = ThreadSafeTTLCache( - self.utxo_locks_per_address_maxsize, self.utxo_locks_max_age - ) - - for input in inputs: - self.utxo_locks[source].set(make_outkey(input), input) - - # list_unspent = [make_outkey(coin) for coin in unspent] - # list_used = [make_outkey(input) for input in inputs] - # list_locked = list(self.utxo_locks[source].keys()) - # self.logger.debug( - # f"UTXO locks: Potentials ({len(unspent)}): {list_unspent}, Used: {list_used}, locked UTXOs: {list_locked}" - # ) - - # ensure inputs have scriptPubKey - # this is not provided by indexd - inputs = script.ensure_script_pub_key_for_inputs(inputs) - - return inputs, change_quantity, btc_in, final_fee - - def select_any_coin_from_source( - self, source, allow_unconfirmed_inputs=True, disable_utxo_locks=False - ): - """Get the first (biggest) input from the source address""" - - # Array of UTXOs, as retrieved by listunspent function from bitcoind - unspent = self.backend.addrindexrs.get_unspent_txouts( - source, unconfirmed=allow_unconfirmed_inputs - ) - - filter_unspents_utxo_locks = [] - if self.utxo_locks is not None and source in self.utxo_locks: - filter_unspents_utxo_locks = self.utxo_locks[source].keys() - - # filter out any locked UTXOs to prevent creating transactions that spend the same UTXO when they're created at the same time - filtered_unspent = [] - for output in unspent: - if make_outkey(output) not in filter_unspents_utxo_locks: - filtered_unspent.append(output) - unspent = filtered_unspent - - # sort - unspent = sort_unspent_txouts(unspent, dust_size=config.DEFAULT_REGULAR_DUST_SIZE) - - # use the first input - input = unspent[0] - if input is None: - return None - - # Lock the source's inputs (UTXOs) chosen for this transaction - if self.utxo_locks is not None and not disable_utxo_locks: - if source not in self.utxo_locks: - # TODO: dont ref cache tools directly - self.utxo_locks[source] = cachetools.TTLCache( - self.utxo_locks_per_address_maxsize, self.utxo_locks_max_age - ) - - self.utxo_locks[source].set(make_outkey(input), input) - - return input - - def construct( - self, - db, - tx_info, - encoding="auto", - fee_per_kb=config.DEFAULT_FEE_PER_KB, - estimate_fee_per_kb=None, - estimate_fee_per_kb_nblocks=config.ESTIMATE_FEE_CONF_TARGET, - regular_dust_size=config.DEFAULT_REGULAR_DUST_SIZE, - multisig_dust_size=config.DEFAULT_MULTISIG_DUST_SIZE, - op_return_value=config.DEFAULT_OP_RETURN_VALUE, - exact_fee=None, - fee_provided=0, - provided_pubkeys=None, - dust_return_pubkey=None, - allow_unconfirmed_inputs=False, - unspent_tx_hash=None, - custom_inputs=None, - disable_utxo_locks=False, - extended_tx_info=False, - old_style_api=None, - segwit=False, - p2sh_source_multisig_pubkeys=None, - p2sh_source_multisig_pubkeys_required=None, - p2sh_pretx_txid=None, - exclude_utxos="", - ): - if estimate_fee_per_kb is None: - estimate_fee_per_kb = config.ESTIMATE_FEE_PER_KB - - # lazy assign from config, because when set as default it's evaluated before it's configured - if old_style_api is None: - old_style_api = config.OLD_STYLE_API - - (source, destination_outputs, data) = tx_info - - if dust_return_pubkey: - dust_return_pubkey = binascii.unhexlify(dust_return_pubkey) - - if p2sh_source_multisig_pubkeys: - p2sh_source_multisig_pubkeys = [ - binascii.unhexlify(p) for p in p2sh_source_multisig_pubkeys - ] - - # Source. - # If public key is necessary for construction of (unsigned) - # transaction, use the public key provided, or find it from the - # blockchain. - if source: - script.validate(source) - - source_is_p2sh = script.is_p2sh(source) - - # Normalize source - if script.is_multisig(source): - source_address = multisig_pubkeyhashes_to_pubkeys(source, provided_pubkeys) - else: - source_address = source - - # Sanity checks. - if exact_fee and not isinstance(exact_fee, int): - raise exceptions.TransactionError("Exact fees must be in satoshis.") - if not isinstance(fee_provided, int): - raise exceptions.TransactionError("Fee provided must be in satoshis.") - - """Determine encoding method""" - - if data: - desired_encoding = encoding - # Data encoding methods (choose and validate). - if desired_encoding == "auto": - if len(data) + len(self.prefix) <= self.op_return_max_size: - encoding = "opreturn" - else: - encoding = ( - "p2sh" - if not old_style_api and util.enabled("p2sh_encoding") - else "multisig" - ) # p2sh is not possible with old_style_api - - elif desired_encoding == "p2sh" and not util.enabled("p2sh_encoding"): - raise exceptions.TransactionError("P2SH encoding not enabled yet") - - elif encoding not in ("pubkeyhash", "multisig", "opreturn", "p2sh"): - raise exceptions.TransactionError("Unknown encoding‐scheme.") - else: - # no data - encoding = None - if encoding: - self.logger.debug( - f"TX Construct - Constructing `{encoding.upper()}` transaction from {source}." - ) - else: - self.logger.debug(f"TX Construct - Constructing transaction from {source}.") - - """Destinations""" - - # Destination outputs. - # Replace multi‐sig addresses with multi‐sig pubkeys. Check that the - # destination output isn’t a dust output. Set null values to dust size. - destination_outputs_new = [] - if encoding != "p2sh": - for address, value in destination_outputs: - # Value. - if script.is_multisig(address): - dust_size = multisig_dust_size - else: - dust_size = regular_dust_size - if value == None: # noqa: E711 - value = dust_size # noqa: PLW2901 - elif value < dust_size: - raise exceptions.TransactionError("Destination output is dust.") - - # Address. - script.validate(address) - if script.is_multisig(address): - destination_outputs_new.append( - ( - multisig_pubkeyhashes_to_pubkeys(address, provided_pubkeys), - value, - ) - ) - else: - destination_outputs_new.append((address, value)) - - destination_outputs = destination_outputs_new - destination_btc_out = sum([value for address, value in destination_outputs]) - - """Data""" - - if data: - # @TODO: p2sh encoding require signable dust key - if encoding == "multisig": - # dust_return_pubkey should be set or explicitly set to False to use the default configured for the node - # the default for the node is optional so could fail - if (source_is_p2sh and dust_return_pubkey is None) or ( - dust_return_pubkey is False and self.ps2h_dust_return_pubkey is None - ): - raise exceptions.TransactionError( - "Can't use multisig encoding when source is P2SH and no dust_return_pubkey is provided." - ) - elif dust_return_pubkey is False: - dust_return_pubkey = binascii.unhexlify(self.ps2h_dust_return_pubkey) - - if not dust_return_pubkey: - if encoding == "multisig" or encoding == "p2sh" and not source_is_p2sh: - dust_return_pubkey = self.get_dust_return_pubkey( - source, provided_pubkeys, encoding - ) - else: - dust_return_pubkey = None - - # Divide data into chunks. - if encoding == "pubkeyhash": - # Prefix is also a suffix here. - chunk_size = 20 - 1 - 8 - elif encoding == "multisig": - # Two pubkeys, minus length byte, minus prefix, minus two nonces, - # minus two sign bytes. - chunk_size = (33 * 2) - 1 - 8 - 2 - 2 - elif encoding == "p2sh": - pubkeylength = -1 - if dust_return_pubkey is not None: - pubkeylength = len(dust_return_pubkey) - - chunk_size = p2sh_encoding.maximum_data_chunk_size(pubkeylength) - elif encoding == "opreturn": - chunk_size = config.OP_RETURN_MAX_SIZE - if len(data) + len(self.prefix) > chunk_size: - raise exceptions.TransactionError("One `OP_RETURN` output per transaction.") - data_array = list(chunks(data, chunk_size)) - - # Data outputs. - if encoding == "multisig": - data_value = multisig_dust_size - elif encoding == "p2sh": - data_value = 0 # this will be calculated later - elif encoding == "opreturn": - data_value = op_return_value - else: - # Pay‐to‐PubKeyHash, e.g. - data_value = regular_dust_size - data_output = (data_array, data_value) - - else: - data_value = 0 - data_array = [] - data_output = None - dust_return_pubkey = None - - data_btc_out = data_value * len(data_array) - self.logger.trace( - f"TX Construct - data_btc_out={data_btc_out} (data_value={data_value} len(data_array)={len(data_array)})" - ) - - """Inputs""" - btc_in = 0 - final_fee = 0 - # Calculate collective size of outputs, for fee calculation. - p2pkhsize = 25 + 9 - if encoding == "multisig": - data_output_size = 81 # 71 for the data - elif encoding == "opreturn": - # prefix + data + 10 bytes script overhead - data_output_size = len(self.prefix) + 10 - if data is not None: - data_output_size = data_output_size + len(data) - else: - data_output_size = p2pkhsize # Pay‐to‐PubKeyHash (25 for the data?) - - if encoding == "p2sh": - # calculate all the p2sh outputs - size_for_fee, datatx_necessary_fee, data_value, data_btc_out = ( - p2sh_encoding.calculate_outputs( - destination_outputs, data_array, fee_per_kb, exact_fee - ) - ) - # replace the data value - data_output = (data_array, data_value) - else: - sum_data_output_size = len(data_array) * data_output_size - size_for_fee = ((25 + 9) * len(destination_outputs)) + sum_data_output_size - - if not (encoding == "p2sh" and p2sh_pretx_txid): - inputs, change_quantity, n_btc_in, n_final_fee = self.construct_coin_selection( - encoding, - data_array, - source, - allow_unconfirmed_inputs, - unspent_tx_hash, - custom_inputs, - fee_per_kb, - estimate_fee_per_kb, - estimate_fee_per_kb_nblocks, - exact_fee, - size_for_fee, - fee_provided, - destination_btc_out, - data_btc_out, - regular_dust_size, - disable_utxo_locks, - exclude_utxos, - ) - btc_in = n_btc_in - final_fee = n_final_fee - else: - # when encoding is P2SH and the pretx txid is passed we can skip coinselection - inputs, change_quantity = None, None - - """Finish""" - - if change_quantity: - change_output = (source_address, change_quantity) - else: - change_output = None - - unsigned_pretx_hex = None - unsigned_tx_hex = None - - pretx_txid = None - if encoding == "p2sh": - assert not (segwit and p2sh_pretx_txid) # shouldn't do old style with segwit enabled - - if p2sh_pretx_txid: - pretx_txid = ( - p2sh_pretx_txid - if isinstance(p2sh_pretx_txid, bytes) - else binascii.unhexlify(p2sh_pretx_txid) - ) - unsigned_pretx = None - else: - destination_value_sum = sum([value for (destination, value) in destination_outputs]) - source_value = destination_value_sum - - if change_output: - # add the difference between source and destination to the change - change_value = change_output[1] + (destination_value_sum - source_value) - change_output = (change_output[0], change_value) - - unsigned_pretx = serializer.serialise_p2sh_pretx( - inputs, - source=source_address, - source_value=source_value, - data_output=data_output, - change_output=change_output, - pubkey=dust_return_pubkey, - multisig_pubkeys=p2sh_source_multisig_pubkeys, - multisig_pubkeys_required=p2sh_source_multisig_pubkeys_required, - ) - unsigned_pretx_hex = binascii.hexlify(unsigned_pretx).decode("utf-8") - - # with segwit we already know the txid and can return both - if segwit: - # pretx_txid = hashlib.sha256(unsigned_pretx).digest() # this should be segwit txid - ptx = CTransaction.stream_deserialize( - io.BytesIO(unsigned_pretx) - ) # could be a non-segwit tx anyways - txid_ba = bytearray(ptx.GetTxid()) - txid_ba.reverse() - pretx_txid = bytes(txid_ba) # gonna leave the malleability problem to upstream - self.logger.debug(f"pretx_txid {pretx_txid}") - - if unsigned_pretx: - # we set a long lock on this, don't want other TXs to spend from it - self.utxo_p2sh_encoding_locks.set(make_outkey_vin(unsigned_pretx, 0), True) - - # only generate the data TX if we have the pretx txId - if pretx_txid: - source_input = None - if script.is_p2sh(source): - source_input = self.select_any_coin_from_source(source) - if not source_input: - raise exceptions.TransactionError( - "Unable to select source input for p2sh source address" - ) - - unsigned_datatx = serializer.serialise_p2sh_datatx( - pretx_txid, - source=source_address, - source_input=source_input, - destination_outputs=destination_outputs, - data_output=data_output, - pubkey=dust_return_pubkey, - multisig_pubkeys=p2sh_source_multisig_pubkeys, - multisig_pubkeys_required=p2sh_source_multisig_pubkeys_required, - ) - unsigned_datatx_hex = binascii.hexlify(unsigned_datatx).decode("utf-8") - - # let the rest of the code work it's magic on the data tx - unsigned_tx_hex = unsigned_datatx_hex - else: - # we're just gonna return the pretx, it doesn't require any of the further checks - self.logger.warning(f"old_style_api = {old_style_api}") - return return_result([unsigned_pretx_hex], old_style_api=old_style_api) - - else: - # Serialise inputs and outputs. - unsigned_tx = serializer.serialise( - encoding, - inputs, - destination_outputs, - data_output, - change_output, - dust_return_pubkey=dust_return_pubkey, - ) - unsigned_tx_hex = binascii.hexlify(unsigned_tx).decode("utf-8") - - """Sanity Check""" - - # Desired transaction info. - (desired_source, desired_destination_outputs, desired_data) = tx_info - desired_source = script.make_canonical(desired_source) - desired_destination = ( - script.make_canonical(desired_destination_outputs[0][0]) - if desired_destination_outputs - else "" - ) - # NOTE: Include change in destinations for BTC transactions. - # if change_output and not desired_data and desired_destination != config.UNSPENDABLE: - # if desired_destination == '': - # desired_destination = desired_source - # else: - # desired_destination += f'-{desired_source}' - # NOTE - if desired_data == None: # noqa: E711 - desired_data = b"" - - # Parsed transaction info. - try: - parsed_source, parsed_destination, x, y, parsed_data, extra = ( - # TODO: inject - gettxinfo.get_tx_info_new( - db, - deserialize.deserialize_tx(unsigned_tx_hex, use_txid=True), - util.CURRENT_BLOCK_INDEX, - p2sh_is_segwit=script.is_bech32(desired_source), - composing=True, - ) - ) - - if encoding == "p2sh": - # make_canonical can't determine the address, so we blindly change the desired to the parsed - desired_source = parsed_source - except exceptions.BTCOnlyError: - # Skip BTC‐only transactions. - if extended_tx_info: - return { - "btc_in": btc_in, - "btc_out": destination_btc_out + data_btc_out, - "btc_change": change_quantity, - "btc_fee": final_fee, - "tx_hex": unsigned_tx_hex, - } - self.logger.trace("TX Construct - Skip BTC‐only transactions") - return return_result([unsigned_pretx_hex, unsigned_tx_hex], old_style_api=old_style_api) - desired_source = script.make_canonical(desired_source) - - # Check desired info against parsed info. - desired = (desired_source, desired_destination, desired_data) - parsed = (parsed_source, parsed_destination, parsed_data) - if desired != parsed: - # Unlock (revert) UTXO locks - if self.utxo_locks is not None and inputs: - for input in inputs: - self.utxo_locks[source].pop(make_outkey(input), None) - - raise exceptions.TransactionError( - f"Constructed transaction does not parse correctly: {desired} ≠ {parsed}" - ) - - if extended_tx_info: - return { - "btc_in": btc_in, - "btc_out": destination_btc_out + data_btc_out, - "btc_change": change_quantity, - "btc_fee": final_fee, - "tx_hex": unsigned_tx_hex, - } - - self.logger.debug("TX Construct - Transaction constructed.") - return return_result([unsigned_pretx_hex, unsigned_tx_hex], old_style_api=old_style_api) - - -# UTILS - - -def print_coin(coin): - return f"amount: {coin['amount']:.8f}; txid: {coin['txid']}; vout: {coin['vout']}; confirmations: {coin.get('confirmations', '?')}" # simplify and make deterministic - - -def chunks(l, n): # noqa: E741 - """Yield successive n‐sized chunks from l.""" - for i in range(0, len(l), n): - yield l[i : i + n] - - -def make_outkey(output): - return f"{output['txid']}{output['vout']}" - - -def make_outkey_vin(txhex, vout): - txbin = binascii.unhexlify(txhex) if isinstance(txhex, str) else txhex - assert isinstance(vout, int) - - tx = bitcoinlib.core.CTransaction.deserialize(txbin) - outkey = [(vin.prevout.hash, vin.prevout.n) for vin in tx.vin] - outkey = hashlib.sha256((f"{outkey}{vout}").encode("ascii")).digest() - - return outkey - - -def return_result(tx_hexes, old_style_api): - tx_hexes = list(filter(None, tx_hexes)) # filter out None - - if old_style_api: - if len(tx_hexes) != 1: - raise Exception("Can't do 2 TXs with old_style_api") - - return tx_hexes[0] - else: - if len(tx_hexes) == 1: - return tx_hexes[0] - else: - return tx_hexes - + ) -# TODO: this should be lifted -def get_dust_return_pubkey(source, provided_pubkeys, encoding): - """Return the pubkey to which dust from data outputs will be sent. + """Finish""" - This pubkey is used in multi-sig data outputs (as the only real pubkey) to - make those the outputs spendable. It is derived from the source address, so - that the dust is spendable by the creator of the transaction. - """ - # Get hex dust return pubkey. - if script.is_multisig(source): - a, self_pubkeys, b = script.extract_array( - multisig_pubkeyhashes_to_pubkeys(source, provided_pubkeys) - ) - dust_return_pubkey_hex = self_pubkeys[0] - else: - dust_return_pubkey_hex = pubkeyhash_to_pubkey(source, provided_pubkeys) - - # Convert hex public key into the (binary) dust return pubkey. - try: - dust_return_pubkey = binascii.unhexlify(dust_return_pubkey_hex) - except binascii.Error: - raise script.InputError("Invalid private key.") # noqa: B904 - - return dust_return_pubkey + (unsigned_pretx_hex, unsigned_tx_hex, pretx_txid) = serialize_transaction( + inputs, + source, + provided_pubkeys, + destination_outputs, + data_output, + change_output, + encoding, + dust_return_pubkey, + p2sh_source_multisig_pubkeys, + p2sh_source_multisig_pubkeys_required, + p2sh_pretx_txid, + segwit, + exclude_utxos, + ) + """Sanity Check""" -COMPOSE_COMMONS_ARGS = { - "encoding": (str, "auto", "The encoding method to use"), - "fee_per_kb": ( - int, - None, - "The fee per kilobyte of transaction data constant that the server uses when deciding on the dynamic fee to use (in satoshis)", - ), - "regular_dust_size": ( - int, - config.DEFAULT_REGULAR_DUST_SIZE, - "Specify (in satoshis) to override the (dust) amount of BTC used for each non-(bare) multisig output.", - ), - "multisig_dust_size": ( - int, - config.DEFAULT_MULTISIG_DUST_SIZE, - "Specify (in satoshis) to override the (dust) amount of BTC used for each (bare) multisig output", - ), - "pubkey": ( - str, - None, - "The hexadecimal public key of the source address (or a list of the keys, if multi-sig). Required when using encoding parameter values of multisig or pubkeyhash.", - ), - "allow_unconfirmed_inputs": ( - bool, - False, - "Set to true to allow this transaction to utilize unconfirmed UTXOs as inputs", - ), - "fee": ( - int, - None, - "If you'd like to specify a custom miners' fee, specify it here (in satoshis). Leave as default for the server to automatically choose", - ), - "fee_provided": ( - int, - 0, - "If you would like to specify a maximum fee (up to and including which may be used as the transaction fee), specify it here (in satoshis). This differs from fee in that this is an upper bound value, which fee is an exact value", - ), - "unspent_tx_hash": ( - str, - None, - "When compiling the UTXOs to use as inputs for the transaction being created, only consider unspent outputs from this specific transaction hash. Defaults to null to consider all UTXOs for the address. Do not use this parameter if you are specifying custom_inputs", - ), - "dust_return_pubkey": ( - str, - None, - "The dust return pubkey is used in multi-sig data outputs (as the only real pubkey) to make those the outputs spendable. By default, this pubkey is taken from the pubkey used in the first transaction input. However, it can be overridden here (and is required to be specified if a P2SH input is used and multisig is used as the data output encoding.) If specified, specify the public key (in hex format) where dust will be returned to so that it can be reclaimed. Only valid/useful when used with transactions that utilize multisig data encoding. Note that if this value is set to false, this instructs counterparty-server to use the default dust return pubkey configured at the node level. If this default is not set at the node level, the call will generate an exception", - ), - "disable_utxo_locks": ( - bool, - False, - "By default, UTXOs utilized when creating a transaction are 'locked' for a few seconds, to prevent a case where rapidly generating create_ calls reuse UTXOs due to their spent status not being updated in bitcoind yet. Specify true for this parameter to disable this behavior, and not temporarily lock UTXOs", - ), - "extended_tx_info": ( - bool, - False, - "When this is not specified or false, the create_ calls return only a hex-encoded string. If this is true, the create_ calls return a data object with the following keys: tx_hex, btc_in, btc_out, btc_change, and btc_fee", - ), - "p2sh_pretx_txid": ( - str, - None, - "The previous transaction txid for a two part P2SH message. This txid must be taken from the signed transaction", - ), - "segwit": (bool, False, "Use segwit"), - "confirmation_target": ( - int, - config.ESTIMATE_FEE_CONF_TARGET, - "The number of blocks to target for confirmation", - ), - "return_psbt": ( - bool, - False, - "Construct a PSBT instead of a raw transaction hex", - ), - "exclude_utxos": ( - str, - "", - "A comma-separated list of UTXO txids to exclude when selecting UTXOs to use as inputs for the transaction being created", - ), - "return_only_data": ( - bool, - False, - "Return only the data part of the transaction", - ), -} + if (encoding == "p2sh" and pretx_txid) or encoding != "p2sh": + check_transaction_sanity(db, source, tx_info, unsigned_tx_hex, encoding, inputs) + logger.debug("TX Construct - Transaction constructed.") -def split_compose_params(**kwargs): - transaction_args = {} - common_args = {} - private_key_wif = None - for key, value in kwargs.items(): - if key in COMPOSE_COMMONS_ARGS: - common_args[key] = value - elif key == "privkey": - private_key_wif = value - else: - transaction_args[key] = value - return transaction_args, common_args, private_key_wif + return { + "btc_in": btc_in, + "btc_out": destination_btc_out + data_btc_out, + "btc_change": change_output[1] if change_output else None, + "btc_fee": final_fee, + "unsigned_tx_hex": unsigned_tx_hex, + "unsigned_pretx_hex": unsigned_pretx_hex, + "data": config.PREFIX + data if data else None, + } def get_default_args(func): @@ -1146,73 +300,11 @@ def get_default_args(func): } -def compose_transaction( - db, - name, - params, - encoding="auto", - fee_per_kb=None, - estimate_fee_per_kb=None, - regular_dust_size=config.DEFAULT_REGULAR_DUST_SIZE, - multisig_dust_size=config.DEFAULT_MULTISIG_DUST_SIZE, - op_return_value=config.DEFAULT_OP_RETURN_VALUE, - confirmation_target=config.ESTIMATE_FEE_CONF_TARGET, - pubkey=None, - allow_unconfirmed_inputs=False, - fee=None, - fee_provided=0, - unspent_tx_hash=None, - custom_inputs=None, - dust_return_pubkey=None, - disable_utxo_locks=False, - extended_tx_info=False, - p2sh_source_multisig_pubkeys=None, - p2sh_source_multisig_pubkeys_required=None, - p2sh_pretx_txid=None, - old_style_api=True, - segwit=False, - api_v1=False, - return_psbt=False, - exclude_utxos="", - return_only_data=False, -): - """Create and return a transaction.""" - - # Get provided pubkeys. - if isinstance(pubkey, str): - provided_pubkeys = [pubkey] - elif isinstance(pubkey, list): - provided_pubkeys = pubkey - elif pubkey is None: - provided_pubkeys = [] - else: - raise exceptions.TransactionError("Invalid pubkey.") - - # Get additional pubkeys from `source` and `destination` params. - # Convert `source` and `destination` to pubkeyhash form. - for address_name in ["source", "destination"]: - if address_name in params: - address = params[address_name] - if isinstance(address, list) or address is None or util.is_utxo_format(address): - # pkhshs = [] - # for addr in address: - # provided_pubkeys += script.extract_pubkeys(addr) - # pkhshs.append(script.make_pubkeyhash(addr)) - # params[address_name] = pkhshs - pass - else: - provided_pubkeys += script.extract_pubkeys(address) - params[address_name] = script.make_pubkeyhash(address) - - # Check validity of collected pubkeys. - for pubkey in provided_pubkeys: - if not script.is_fully_valid(binascii.unhexlify(pubkey)): - raise script.AddressError(f"invalid public key: {pubkey}") - +def compose_data(db, name, params, accept_missing_params=False): compose_method = sys.modules[f"counterpartycore.lib.messages.{name}"].compose compose_params = inspect.getfullargspec(compose_method)[0] missing_params = [p for p in compose_params if p not in params and p != "db"] - if api_v1: + if accept_missing_params: # for API v1 backward compatibility for param in missing_params: params[param] = None else: @@ -1225,956 +317,11 @@ def compose_transaction( raise exceptions.ComposeError( f"missing parameters: {', '.join(missing_params)}" ) + return compose_method(db, **params) - # dont override fee_per_kb if specified - if fee_per_kb is not None: - estimate_fee_per_kb = False - else: - fee_per_kb = config.DEFAULT_FEE_PER_KB - - if "extended_tx_info" in params: - extended_tx_info = params["extended_tx_info"] - del params["extended_tx_info"] - if "old_style_api" in params: - old_style_api = params["old_style_api"] - del params["old_style_api"] - - if "segwit" in params: - segwit = params["segwit"] - del params["segwit"] - - tx_info = compose_method(db, **params) - - if return_only_data: - return config.PREFIX + tx_info[2] - - raw_transaction = construct( - db, - tx_info, - encoding=encoding, - fee_per_kb=fee_per_kb, - estimate_fee_per_kb=estimate_fee_per_kb, - regular_dust_size=regular_dust_size, - multisig_dust_size=multisig_dust_size, - op_return_value=op_return_value, - provided_pubkeys=provided_pubkeys, - allow_unconfirmed_inputs=allow_unconfirmed_inputs, - exact_fee=fee, - fee_provided=fee_provided, - unspent_tx_hash=unspent_tx_hash, - custom_inputs=custom_inputs, - dust_return_pubkey=dust_return_pubkey, - disable_utxo_locks=disable_utxo_locks, - extended_tx_info=extended_tx_info, - p2sh_source_multisig_pubkeys=p2sh_source_multisig_pubkeys, - p2sh_source_multisig_pubkeys_required=p2sh_source_multisig_pubkeys_required, - p2sh_pretx_txid=p2sh_pretx_txid, - old_style_api=old_style_api, - segwit=segwit, - estimate_fee_per_kb_nblocks=confirmation_target, - exclude_utxos=exclude_utxos, - ) - if return_psbt: - psbt = backend.bitcoind.convert_to_psbt(raw_transaction) - return psbt - return raw_transaction - - -COMPOSABLE_TRANSACTIONS = [ - "bet", - "broadcast", - "btcpay", - "burn", - "cancel", - "destroy", - "dispenser", - "dividend", - "issuance", - "mpma", - "order", - "send", - "sweep", -] - - -def compose(db, source, transaction_name, api_v1=False, **kwargs): - if transaction_name not in COMPOSABLE_TRANSACTIONS: - raise exceptions.TransactionError("Transaction type not composable.") - transaction_args, common_args, _ = split_compose_params(**kwargs) - transaction_args["source"] = source - return compose_transaction( - db, name=transaction_name, params=transaction_args, api_v1=api_v1, **common_args - ) - - -def get_key_name(**construct_args): - if construct_args.get("return_only_data"): - return "data" - if construct_args.get("return_psbt"): - return "psbt" - return "rawtransaction" - - -def compose_bet( - db, - address: str, - feed_address: str, - bet_type: int, - deadline: int, - wager_quantity: int, - counterwager_quantity: int, - expiration: int, - leverage: int = 5040, - target_value: int = None, - **construct_args, -): - """ - Composes a transaction to issue a bet against a feed. - :param address: The address that will make the bet (e.g. $ADDRESS_1) - :param feed_address: The address that hosts the feed to be bet on (e.g. $ADDRESS_2) - :param bet_type: Bet 0 for Bullish CFD (deprecated), 1 for Bearish CFD (deprecated), 2 for Equal, 3 for NotEqual (e.g. 2) - :param deadline: The time at which the bet should be decided/settled, in Unix time (seconds since epoch) (e.g. 3000000000) - :param wager_quantity: The quantities of XCP to wager (in satoshis, hence integer) (e.g. 1000) - :param counterwager_quantity: The minimum quantities of XCP to be wagered against, for the bets to match (in satoshis, hence integer) (e.g. 1000) - :param expiration: The number of blocks after which the bet expires if it remains unmatched (e.g. 100) - :param leverage: Leverage, as a fraction of 5040 - :param target_value: Target value for Equal/NotEqual bet (e.g. 1000) - """ - params = { - "source": address, - "feed_address": feed_address, - "bet_type": bet_type, - "deadline": deadline, - "wager_quantity": wager_quantity, - "counterwager_quantity": counterwager_quantity, - "target_value": target_value, - "leverage": leverage, - "expiration": expiration, - } - rawtransaction = compose_transaction( - db, - name="bet", - params=params, - **construct_args, - ) - return { - get_key_name(**construct_args): rawtransaction, - "params": params, - "name": "bet", - } - - -def compose_broadcast( - db, address: str, timestamp: int, value: float, fee_fraction: float, text: str, **construct_args -): - """ - Composes a transaction to broadcast textual and numerical information to the network. - :param address: The address that will be sending (must have the necessary quantity of the specified asset) (e.g. $ADDRESS_1) - :param timestamp: The timestamp of the broadcast, in Unix time (e.g. 4003903985) - :param value: Numerical value of the broadcast (e.g. 100) - :param fee_fraction: How much of every bet on this feed should go to its operator; a fraction of 1, (i.e. 0.05 is five percent) (e.g. 0.05) - :param text: The textual part of the broadcast (e.g. "Hello, world!") - """ - params = { - "source": address, - "timestamp": timestamp, - "value": value, - "fee_fraction": fee_fraction, - "text": text, - } - rawtransaction = compose_transaction( - db, - name="broadcast", - params=params, - **construct_args, - ) - return { - get_key_name(**construct_args): rawtransaction, - "params": params, - "name": "broadcast", - } - - -def compose_btcpay(db, address: str, order_match_id: str, **construct_args): - """ - Composes a transaction to pay for a BTC order match. - :param address: The address that will be sending the payment (e.g. $ADDRESS_1) - :param order_match_id: The ID of the order match to pay for (e.g. $LAST_ORDER_MATCH_ID) - """ - params = {"source": address, "order_match_id": order_match_id} - rawtransaction = compose_transaction( - db, - name="btcpay", - params=params, - **construct_args, - ) - return { - get_key_name(**construct_args): rawtransaction, - "params": params, - "name": "btcpay", - } - - -def compose_burn(db, address: str, quantity: int, overburn: bool = False, **construct_args): - """ - Composes a transaction to burn a given quantity of BTC for XCP (on mainnet, possible between blocks 278310 and 283810; on testnet it is still available). - :param address: The address with the BTC to burn (e.g. $ADDRESS_1) - :param quantity: The quantities of BTC to burn (in satoshis, hence integer) (1 BTC maximum burn per address) (e.g. 1000) - :param overburn: Whether to allow the burn to exceed 1 BTC for the address - """ - params = {"source": address, "quantity": quantity, "overburn": overburn} - rawtransaction = compose_transaction( - db, - name="burn", - params=params, - **construct_args, - ) - return { - get_key_name(**construct_args): rawtransaction, - "params": params, - "name": "burn", - } - - -def compose_cancel(db, address: str, offer_hash: str, **construct_args): - """ - Composes a transaction to cancel an open order or bet. - :param address: The address that placed the order/bet to be cancelled (e.g. $ADDRESS_1) - :param offer_hash: The hash of the order/bet to be cancelled (e.g. $LAST_ORDER_TX_HASH) - """ - params = {"source": address, "offer_hash": offer_hash} - rawtransaction = compose_transaction( - db, - name="cancel", - params=params, - **construct_args, - ) - return { - get_key_name(**construct_args): rawtransaction, - "params": params, - "name": "cancel", - } - - -def compose_destroy(db, address: str, asset: str, quantity: int, tag: str, **construct_args): - """ - Composes a transaction to destroy a quantity of an asset. - :param address: The address that will be sending the asset to be destroyed (e.g. $ADDRESS_1) - :param asset: The asset to be destroyed (e.g. XCP) - :param quantity: The quantity of the asset to be destroyed (in satoshis, hence integer) (e.g. 1000) - :param tag: A tag for the destruction (e.g. "bugs!") - """ - params = {"source": address, "asset": asset, "quantity": quantity, "tag": tag} - rawtransaction = compose_transaction( - db, - name="destroy", - params=params, - **construct_args, - ) - return { - get_key_name(**construct_args): rawtransaction, - "params": params, - "name": "destroy", - } - - -def compose_dispenser( - db, - address: str, - asset: str, - give_quantity: int, - escrow_quantity: int, - mainchainrate: int, - status: int, - open_address: str = None, - oracle_address: str = None, - **construct_args, -): - """ - Composes a transaction to opens or closes a dispenser for a given asset at a given rate of main chain asset (BTC). Escrowed quantity on open must be equal or greater than give_quantity. It is suggested that you escrow multiples of give_quantity to ease dispenser operation. - :param address: The address that will be dispensing (must have the necessary escrow_quantity of the specified asset) (e.g. $ADDRESS_7) - :param asset: The asset or subasset to dispense (e.g. XCP) - :param give_quantity: The quantity of the asset to dispense (in satoshis, hence integer) (e.g. 1000) - :param escrow_quantity: The quantity of the asset to reserve for this dispenser (in satoshis, hence integer) (e.g. 1000) - :param mainchainrate: The quantity of the main chain asset (BTC) per dispensed portion (in satoshis, hence integer) (e.g. 100) - :param status: The state of the dispenser. 0 for open, 1 for open using open_address, 10 for closed (e.g. 0) - :param open_address: The address that you would like to open the dispenser on; MUST be equal to `address` from block 900000 onwards - :param oracle_address: The address that you would like to use as a price oracle for this dispenser - """ - params = { - "source": address, - "asset": asset, - "give_quantity": give_quantity, - "escrow_quantity": escrow_quantity, - "mainchainrate": mainchainrate, - "status": status, - "open_address": open_address, - "oracle_address": oracle_address, - } - rawtransaction = compose_transaction( - db, - name="dispenser", - params=params, - **construct_args, - ) - return { - get_key_name(**construct_args): rawtransaction, - "params": params, - "name": "dispenser", - } - - -def compose_dividend( - db, address: str, quantity_per_unit: int, asset: str, dividend_asset: str, **construct_args -): - """ - Composes a transaction to issue a dividend to holders of a given asset. - :param address: The address that will be issuing the dividend (must have the ownership of the asset which the dividend is being issued on) (e.g. $ADDRESS_1) - :param quantity_per_unit: The amount of dividend_asset rewarded (in satoshis, hence integer) (e.g. 1) - :param asset: The asset or subasset that the dividends are being rewarded on (e.g. $ASSET_1) - :param dividend_asset: The asset or subasset that the dividends are paid in (e.g. XCP) - """ - params = { - "source": address, - "quantity_per_unit": quantity_per_unit, - "asset": asset, - "dividend_asset": dividend_asset, - } - rawtransaction = compose_transaction( - db, - name="dividend", - params=params, - **construct_args, - ) - return { - get_key_name(**construct_args): rawtransaction, - "params": params, - "name": "dividend", - } - - -def compose_issuance( - db, - address: str, - asset: str, - quantity: int, - transfer_destination: str = None, - divisible: bool = True, - lock: bool = False, - reset: bool = False, - description: str = None, - **construct_args, -): - """ - Composes a transaction to Issue a new asset, issue more of an existing asset, lock an asset, reset existing supply, or transfer the ownership of an asset. - :param address: The address that will be issuing or transfering the asset (e.g. $ADDRESS_1) - :param asset: The assets to issue or transfer. This can also be a subasset longname for new subasset issuances (e.g. XCPTEST) - :param quantity: The quantity of the asset to issue (set to 0 if transferring an asset) (in satoshis, hence integer) (e.g. 1000) - :param transfer_destination: The address to receive the asset (e.g. $ADDRESS_1) - :param divisible: Whether this asset is divisible or not (if a transfer, this value must match the value specified when the asset was originally issued) - :param lock: Whether this issuance should lock supply of this asset forever - :param reset: Wether this issuance should reset any existing supply - :param description: A textual description for the asset - """ - params = { - "source": address, - "asset": asset, - "quantity": quantity, - "transfer_destination": transfer_destination, - "divisible": divisible, - "lock": lock, - "reset": reset, - "description": description, - } - rawtransaction = compose_transaction( - db, - name="issuance", - params=params, - **construct_args, - ) - return { - get_key_name(**construct_args): rawtransaction, - "params": params, - "name": "issuance", - } - - -def compose_mpma( - db, - address: str, - assets: str, - destinations: str, - quantities: str, - memo: str = None, - memo_is_hex: bool = False, - **construct_args, -): - """ - Composes a transaction to send multiple payments to multiple addresses. - :param address: The address that will be sending (must have the necessary quantity of the specified asset) (e.g. $ADDRESS_1) - :param assets: comma-separated list of assets to send (e.g. XCP,$ASSET_5) - :param destinations: comma-separated list of addresses to send to (e.g. $ADDRESS_1,$ADDRESS_2) - :param quantities: comma-separated list of quantities to send (in satoshis, hence integer) (e.g. 1,2) - :param memo: The Memo associated with this transaction (e.g. "Hello, world!") - :param memo_is_hex: Whether the memo field is a hexadecimal string (e.g. False) - """ - asset_list = assets.split(",") - destination_list = destinations.split(",") - quantity_list = quantities.split(",") - if len(asset_list) != len(destination_list) or len(asset_list) != len(quantity_list): - raise exceptions.ComposeError( - "The number of assets, destinations, and quantities must be equal" - ) - for quantity in quantity_list: - if not quantity.isdigit(): - raise exceptions.ComposeError("Quantity must be an integer") - quantity_list = [int(quantity) for quantity in quantity_list] - asset_dest_quant_list = list(zip(asset_list, destination_list, quantity_list)) - - params = { - "source": address, - "asset_dest_quant_list": asset_dest_quant_list, - "memo": memo, - "memo_is_hex": memo_is_hex, - } - - rawtransaction = compose_transaction( - db, - name="versions.mpma", - params=params, - **construct_args, - ) - return { - get_key_name(**construct_args): rawtransaction, - "params": params, - "name": "mpma", - } - - -def compose_order( - db, - address: str, - give_asset: str, - give_quantity: int, - get_asset: str, - get_quantity: int, - expiration: int, - fee_required: int, - **construct_args, -): - """ - Composes a transaction to place an order on the distributed exchange. - :param address: The address that will be issuing the order request (must have the necessary quantity of the specified asset to give) (e.g. $ADDRESS_1) - :param give_asset: The asset that will be given in the trade (e.g. XCP) - :param give_quantity: The quantity of the asset that will be given (in satoshis, hence integer) (e.g. 1000) - :param get_asset: The asset that will be received in the trade (e.g. $ASSET_1) - :param get_quantity: The quantity of the asset that will be received (in satoshis, hence integer) (e.g. 1000) - :param expiration: The number of blocks for which the order should be valid (e.g. 100) - :param fee_required: The miners’ fee required to be paid by orders for them to match this one; in BTC; required only if buying BTC (may be zero, though) (e.g. 100) - """ - params = { - "source": address, - "give_asset": give_asset, - "give_quantity": give_quantity, - "get_asset": get_asset, - "get_quantity": get_quantity, - "expiration": expiration, - "fee_required": fee_required, - } - rawtransaction = compose_transaction( - db, - name="order", - params=params, - **construct_args, - ) - return { - get_key_name(**construct_args): rawtransaction, - "params": params, - "name": "order", - } - - -def compose_send( - db, - address: str, - destination: str, - asset: str, - quantity: int, - memo: str = None, - memo_is_hex: bool = False, - use_enhanced_send: bool = True, - **construct_args, -): - """ - Composes a transaction to send a quantity of an asset to another address. - :param address: The address that will be sending (must have the necessary quantity of the specified asset) (e.g. $ADDRESS_1) - :param destination: The address that will be receiving the asset (e.g. $ADDRESS_2) - :param asset: The asset or subasset to send (e.g. XCP) - :param quantity: The quantity of the asset to send (in satoshis, hence integer) (e.g. 1000) - :param memo: The Memo associated with this transaction - :param memo_is_hex: Whether the memo field is a hexadecimal string - :param use_enhanced_send: If this is false, the construct a legacy transaction sending bitcoin dust - """ - params = { - "source": address, - "destination": destination, - "asset": asset, - "quantity": quantity, - "memo": memo, - "memo_is_hex": memo_is_hex, - "use_enhanced_send": use_enhanced_send, - } - rawtransaction = compose_transaction( - db, - name="send", - params=params, - **construct_args, - ) - return { - get_key_name(**construct_args): rawtransaction, - "params": params, - "name": "send", - } - - -def compose_dispense( - db, - address: str, - dispenser: str, - quantity: int, - **construct_args, -): - """ - Composes a transaction to send BTC to a dispenser. - :param address: The address that will be sending (must have the necessary quantity of BTC) (e.g. $ADDRESS_2) - :param dispenser: The dispenser that will be receiving the asset (e.g. $ADDRESS_4) - :param quantity: The quantity of BTC to send (in satoshis, hence integer) (e.g. 1000) - """ - params = { - "source": address, - "destination": dispenser, - "quantity": quantity, - } - rawtransaction = compose_transaction( - db, - name="dispense", - params=params, - **construct_args, - ) - return { - get_key_name(**construct_args): rawtransaction, - "params": params, - "name": "dispense", - } - - -def compose_sweep(db, address: str, destination: str, flags: int, memo: str, **construct_args): - """ - Composes a transaction to Sends all assets and/or transfer ownerships to a destination address. - :param address: The address that will be sending (e.g. $ADDRESS_1) - :param destination: The address to receive the assets and/or ownerships (e.g. $ADDRESS_2) - :param flags: An OR mask of flags indicating how the sweep should be processed. Possible flags are: - - FLAG_BALANCES: (integer) 1, specifies that all balances should be transferred. - - FLAG_OWNERSHIP: (integer) 2, specifies that all ownerships should be transferred. - - FLAG_BINARY_MEMO: (integer) 4, specifies that the memo is in binary/hex form. - (e.g. 7) - :param memo: The Memo associated with this transaction in hex format (e.g. FFFF) - """ - params = { - "source": address, - "destination": destination, - "flags": flags, - "memo": memo, - } - rawtransaction = compose_transaction( - db, - name="sweep", - params=params, - **construct_args, - ) - return { - get_key_name(**construct_args): rawtransaction, - "params": params, - "name": "sweep", - } - - -def compose_fairminter( - db, - address: str, - asset: str, - asset_parent: str = "", - price: int = 0, - quantity_by_price: int = 1, - max_mint_per_tx: int = 0, - hard_cap: int = 0, - premint_quantity: int = 0, - start_block: int = 0, - end_block: int = 0, - soft_cap: int = 0, - soft_cap_deadline_block: int = 0, - minted_asset_commission: float = 0.0, - burn_payment: bool = False, - lock_description: bool = False, - lock_quantity: bool = False, - divisible: bool = True, - description: str = "", - **construct_args, -): - """ - Composes a transaction to issue a new asset using the FairMinter protocol. - :param address: The address that will be issuing the asset (e.g. $ADDRESS_1) - :param asset: The asset to issue (e.g. MYASSET) - :param asset_parent: The parent asset of the asset to issue - :param price: The price in XCP of the asset to issue (e.g. 10) - :param quantity_by_price: The quantity of asset to mint per `price` paid - :param max_mint_per_tx: Amount minted if price is equal to 0; otherwise, maximum amount of asset that can be minted in a single transaction; if 0, there is no limit - :param hard_cap: The maximum amount of asset that can be minted; if 0 there is no limit - :param premint_quantity: Amount of asset to be minted when the sale starts, if 0, no premint; preminted assets are sent to the source of the transaction - :param start_block: The block at which the sale starts - :param end_block: The block at which the sale ends - :param soft_cap: Minimum amount of asset to be minted, if None, no minimum; if the soft cap is not reached by the soft_cap_deadline_block, the sale is canceled, asset is revoked from all minters and all payments are refunded - :param soft_cap_deadline_block: The block at which the soft cap must be reached - :param minted_asset_commission: Commission to be paid in minted asset, a fraction of 1 (i.e., 0.05 is five percent); the commission is deducted from the asset received by the minter and sent to the Fair Minter owner - :param burn_payment: If True, the payment asset is burned, otherwise it is sent to the source - :param lock_description: If True, the description of the asset is locked - :param lock_quantity: If True, the quantity of the asset cannot be changed after the minting - :param divisible: If True, the asset is divisible - :param description: The description of the asset - """ - params = { - "source": address, - "asset": asset, - "asset_parent": asset_parent, - "price": price, - "quantity_by_price": quantity_by_price, - "max_mint_per_tx": max_mint_per_tx, - "hard_cap": hard_cap, - "premint_quantity": premint_quantity, - "start_block": start_block, - "end_block": end_block, - "soft_cap": soft_cap, - "soft_cap_deadline_block": soft_cap_deadline_block, - "minted_asset_commission": minted_asset_commission, - "burn_payment": burn_payment, - "lock_description": lock_description, - "lock_quantity": lock_quantity, - "divisible": divisible, - "description": description, - } - rawtransaction = compose_transaction( - db, - name="fairminter", - params=params, - **construct_args, - ) - return { - get_key_name(**construct_args): rawtransaction, - "params": params, - "name": "fairminter", - } - - -def compose_fairmint(db, address: str, asset: str, quantity: int = 0, **construct_args): - """ - Composes a transaction to mint a quantity of an asset using the FairMinter protocol. - :param address: The address that will be minting the asset (e.g. $ADDRESS_1) - :param asset: The asset to mint (e.g. $ASSET_3) - :param quantity: The quantity of the asset to mint (in satoshis, hence integer) (e.g. 1) - """ - params = {"source": address, "asset": asset, "quantity": quantity} - rawtransaction = compose_transaction( - db, - name="fairmint", - params=params, - **construct_args, - ) - return { - get_key_name(**construct_args): rawtransaction, - "params": params, - "name": "fairmint", - } - - -def compose_utxo( - db, - source: str, - destination: str, - asset: str, - quantity: int, - **construct_args, -): - params = { - "source": source, - "destination": destination, - "asset": asset, - "quantity": quantity, - } - rawtransaction = compose_transaction( - db, - name="utxo", - params=params, - **construct_args, - ) - return { - get_key_name(**construct_args): rawtransaction, - "params": params, - "name": "utxo", - } - - -def compose_attach( - db, - address: str, - asset: str, - quantity: int, - destination: str = None, - **construct_args, -): - """ - Composes a transaction to attach assets from an address to UTXO. - :param address: The address from which the assets are attached (e.g. $ADDRESS_1) - :param destination: The utxo to attach the assets to (e.g. $UTXO_1_ADDRESS_1) - :param asset: The asset or subasset to attach (e.g. XCP) - :param quantity: The quantity of the asset to attach (in satoshis, hence integer) (e.g. 1000) - """ - return compose_utxo( - db, - source=address, - destination=destination, - asset=asset, - quantity=quantity, - **construct_args, - ) - - -def compose_detach( - db, - utxo: str, - destination: str, - asset: str, - quantity: int, - **construct_args, -): - """ - Composes a transaction to detach assets from UTXO to an address. - :param utxo: The utxo from which the assets are detached (e.g. $UTXO_WITH_BALANCE) - :param destination: The address to detach the assets to (e.g. $ADDRESS_1) - :param asset: The asset or subasset to detach (e.g. XCP) - :param quantity: The quantity of the asset to detach (in satoshis, hence integer) (e.g. 1000) - """ - return compose_utxo( - db, - source=utxo, - destination=destination, - asset=asset, - quantity=quantity, - **construct_args, - ) - - -def compose_movetoutxo(db, utxo: str, destination: str, more_utxos: str = ""): - """ - Composes a transaction to move assets from UTXO to another UTXO. - :param utxo: The utxo from which the assets are moved - :param destination: The address to move the assets to - :param more_utxos: The additional utxos to fund the transaction - """ - decimal.getcontext().prec = 8 - - more_utxos_list = [] - input_count = 1 - total_value = D("0") - try: - source_address, source_value = backend.bitcoind.get_utxo_address_and_value(utxo) - total_value += D(source_value) - for more_utxo in more_utxos.split(","): - if more_utxo == "": - continue - _more_utxo_address, more_utxo_value = backend.bitcoind.get_utxo_address_and_value( - more_utxo - ) - more_utxo_tx_hash, more_utxo_vout = more_utxo.split(":") - more_utxos_list.append({"txid": more_utxo_tx_hash, "vout": int(more_utxo_vout)}) - input_count += 1 - total_value += D(more_utxo_value) - except exceptions.InvalidUTXOError as e: - raise exceptions.ComposeError("Invalid UTXO for source") from e - - try: - script.validate(destination) - except Exception as e: - raise exceptions.ComposeError("Invalid address for destination") from e - - tx_hash, vout = utxo.split(":") - - fee_per_kb = backend.bitcoind.fee_per_kb() - # Transaction Size (in bytes) = (Number of Inputs x 148) + (Number of Outputs x 34) + 10 - tx_size = (input_count * 148) + (2 * 34) + 10 - fee = (D(fee_per_kb) / config.UNIT) * (D(tx_size) / 1024) - - dust = D("0.0000546") - change = D(total_value) - dust - fee - - if change < 0: - raise exceptions.ComposeError("Insufficient funds for fee") - - inputs = [{"txid": tx_hash, "vout": int(vout)}] + more_utxos_list - outputs = [{destination: str(dust)}, {source_address: str(change)}] - rawtransaction = backend.bitcoind.createrawtransaction(inputs, outputs) - - return { - "rawtransaction": rawtransaction, - "params": { - "source": utxo, - "destination": destination, - }, - "name": "movetoutxo", - } - - -def info(db, rawtransaction: str, block_index: int = None): - """ - Returns Counterparty information from a raw transaction in hex format. - :param rawtransaction: Raw transaction in hex format (e.g. $RAW_TRANSACTION_1) - :param block_index: Block index mandatory for transactions before block 335000 - """ - decoded_tx = deserialize.deserialize_tx( - rawtransaction, use_txid=util.enabled("correct_segwit_txids", block_index) - ) - source, destination, btc_amount, fee, data, _dispensers_outs, _utxos_info = ( - gettxinfo.get_tx_info( - db, - decoded_tx, - block_index=block_index, - ) - ) - del decoded_tx["__data__"] - result = { - "source": source, - "destination": destination if destination else None, - "btc_amount": btc_amount, - "fee": fee, - "data": util.hexlify(data) if data else "", - "decoded_tx": decoded_tx, - } - if data: - result["data"] = util.hexlify(data) - result["unpacked_data"] = unpack(db, result["data"], block_index) - return result - - -def unpack(db, datahex: str, block_index: int = None): - """ - Unpacks Counterparty data in hex format and returns the message type and data. - :param datahex: Data in hex format (e.g. 020000000001016a65c1624e53f4d33ce02e726a6606faed60cc014d5b1a578ba3e09b4b3f8f890100000000ffffffff020000000000000000176a150d55e8b6118808b7b663b365473f142274028b8af60245092701000000160014a3df8a5a83d4e2827b59b43f5ce6ce5d2e52093f0247304402204b7a2859cbce34e725a1132fec2dd4b075503dadff0a0c407ae7c22a7712fe4d0220563ceb2ceebdf649343bb24819fc808639cce7781305b4588ffbe4a20390d2780121020ace9adf60fe4ec05dab922ccdc5727cbf664cafc7cdb845de534855266314c800000000) - :param block_index: Block index of the transaction containing this data - """ - data = binascii.unhexlify(datahex) - message_type_id, message = message_type.unpack(data) - block_index = block_index or util.CURRENT_BLOCK_INDEX - - issuance_ids = [ - messages.issuance.ID, - messages.issuance.LR_ISSUANCE_ID, - messages.issuance.SUBASSET_ID, - messages.issuance.LR_SUBASSET_ID, - ] - - # Unknown message type - message_data = {"error": "Unknown message type"} - message_type_name = "unknown" - try: - # Bet - if message_type_id == messages.bet.ID: - message_type_name = "bet" - message_data = messages.bet.unpack(message, return_dict=True) - # Broadcast - elif message_type_id == messages.broadcast.ID: - message_type_name = "broadcast" - message_data = messages.broadcast.unpack(message, block_index, return_dict=True) - # BTCPay - elif message_type_id == messages.btcpay.ID: - message_type_name = "btcpay" - message_data = messages.btcpay.unpack(message, return_dict=True) - # Cancel - elif message_type_id == messages.cancel.ID: - message_type_name = "cancel" - message_data = messages.cancel.unpack(message, return_dict=True) - # Destroy - elif message_type_id == messages.destroy.ID: - message_type_name = "destroy" - message_data = messages.destroy.unpack(db, message, return_dict=True) - # Dispenser - elif message_type_id == messages.dispenser.ID: - message_type_name = "dispenser" - message_data = messages.dispenser.unpack(message, return_dict=True) - elif message_type_id == messages.dispenser.DISPENSE_ID: - message_type_name = "dispense" - message_data = messages.dispense.unpack(message, return_dict=True) - # Dividend - elif message_type_id == messages.dividend.ID: - message_type_name = "dividend" - message_data = messages.dividend.unpack(db, message, block_index, return_dict=True) - # Issuance - elif message_type_id in issuance_ids: - message_type_name = "issuance" - message_data = messages.issuance.unpack( - db, message, message_type_id, block_index, return_dict=True - ) - # Order - elif message_type_id == messages.order.ID: - message_type_name = "order" - message_data = messages.order.unpack(db, message, block_index, return_dict=True) - # Send - elif message_type_id == messages.send.ID: - message_type_name = "send" - message_data = messages.send.unpack(db, message, block_index) - # Enhanced send - elif message_type_id == messages.versions.enhanced_send.ID: - message_type_name = "enhanced_send" - message_data = messages.versions.enhanced_send.unpack(message, block_index) - # MPMA send - elif message_type_id == messages.versions.mpma.ID: - message_type_name = "mpma_send" - mpma_message_data = messages.versions.mpma.unpack(message, block_index) - message_data = [] - for asset_name, send_info in mpma_message_data.items(): - message_data.append( - { - "asset": asset_name, - "destination": send_info[0][0], - "quantity": send_info[0][1], - "memo": send_info[0][2] if len(send_info[0]) > 2 else None, - "memo_is_hex": send_info[0][3] if len(send_info[0]) > 3 else None, - } - ) - # RPS - elif message_type_id == messages.rps.ID: - message_type_name = "rps" - message_data = messages.rps.unpack(message, return_dict=True) - # RPS Resolve - elif message_type_id == messages.rpsresolve.ID: - message_type_name = "rpsresolve" - message_data = messages.rpsresolve.unpack(message, return_dict=True) - # Sweep - elif message_type_id == messages.sweep.ID: - message_type_name = "sweep" - message_data = messages.sweep.unpack(message) - # Fair Minter - elif message_type_id == messages.fairminter.ID: - message_type_name = "fairminter" - message_data = messages.fairminter.unpack(message) - # Fair Mint - elif message_type_id == messages.fairmint.ID: - message_type_name = "fairmint" - message_data = messages.fairmint.unpack(message) - except (exceptions.UnpackError, UnicodeDecodeError) as e: - message_data = {"error": str(e)} - - return { - "message_type": message_type_name, - "message_type_id": message_type_id, - "message_data": message_data, - } +def compose_transaction(db, name, params, accept_missing_params=False, **construct_kwargs): + """Create and return a transaction.""" + tx_info = compose_data(db, name, params, accept_missing_params) + transaction_info = construct(db, tx_info, **construct_kwargs) + return transaction_info diff --git a/counterparty-core/counterpartycore/lib/transaction_helper/serializer.py b/counterparty-core/counterpartycore/lib/transaction_helper/common_serializer.py similarity index 67% rename from counterparty-core/counterpartycore/lib/transaction_helper/serializer.py rename to counterparty-core/counterpartycore/lib/transaction_helper/common_serializer.py index 459af974f3..4ea97e5c6d 100644 --- a/counterparty-core/counterpartycore/lib/transaction_helper/serializer.py +++ b/counterparty-core/counterpartycore/lib/transaction_helper/common_serializer.py @@ -9,11 +9,9 @@ import hashlib import logging -import bitcoin as bitcoinlib from bitcoin.bech32 import CBech32Data from counterpartycore.lib import arc4, backend, config, exceptions, script # noqa: F401 -from counterpartycore.lib.transaction_helper import p2sh_encoding logger = logging.getLogger(config.LOGGER_NAME) @@ -340,164 +338,3 @@ def serialise( s += (0).to_bytes(4, byteorder="little") # LockTime return s - - -def serialise_p2sh_pretx( - inputs, - source, - source_value, - data_output, - change_output=None, - pubkey=None, - multisig_pubkeys=None, - multisig_pubkeys_required=None, -): - assert data_output # we don't do this unless there's data - - data_array, data_value = data_output - - s = (1).to_bytes(4, byteorder="little") # Version - - # Number of inputs. - s += var_int(int(len(inputs))) - - # List of Inputs. - for i in range(len(inputs)): - txin = inputs[i] - s += binascii.unhexlify(bytes(txin["txid"], "utf-8"))[::-1] # TxOutHash - s += txin["vout"].to_bytes(4, byteorder="little") # TxOutIndex - - tx_script = binascii.unhexlify(bytes(txin["script_pub_key"], "utf-8")) - s += var_int(int(len(tx_script))) # Script length - s += tx_script # Script - s += b"\xff" * 4 # Sequence - - # Number of outputs. - n = len(data_array) - if change_output: - n += 1 - - # encode number of outputs - s += var_int(n) - - # P2SH for data encodeded inputs - for n, data_chunk in enumerate(data_array): - data_chunk = config.PREFIX + data_chunk # prefix the data_chunk # noqa: PLW2901 - - # get the scripts - script_sig, redeem_script, output_script = p2sh_encoding.make_p2sh_encoding_redeemscript( - data_chunk, n, pubkey, multisig_pubkeys, multisig_pubkeys_required - ) - - # if data_value is an array, then every output fee is specified in it - if type(data_value) == list: # noqa: E721 - s += data_value[n].to_bytes(8, byteorder="little") # Value - else: - s += data_value.to_bytes(8, byteorder="little") # Value - s += var_int(int(len(output_script))) # Script length - s += output_script # Script - - # Change output. - if change_output: - change_address, change_value = change_output - tx_script, witness_script = get_script(change_address) - - s += change_value.to_bytes(8, byteorder="little") # Value - s += var_int(int(len(tx_script))) # Script length - s += tx_script # Script - - s += (0).to_bytes(4, byteorder="little") # LockTime - - return s - - -def serialise_p2sh_datatx( - txid, - source, - source_input, - destination_outputs, - data_output, - pubkey=None, - multisig_pubkeys=None, - multisig_pubkeys_required=None, -): - assert data_output # we don't do this unless there's data - - txhash = bitcoinlib.core.lx(bitcoinlib.core.b2x(txid)) # reverse txId - data_array, value = data_output - - # version - s = (1).to_bytes(4, byteorder="little") - - # number of inputs is the length of data_array (+1 if a source_input exists) - number_of_inputs = len(data_array) - if source_input is not None: - number_of_inputs += 1 - s += var_int(number_of_inputs) - - # Handle a source input here for a P2SH source - if source_input is not None: - s += binascii.unhexlify(bytes(source_input["txid"], "utf-8"))[::-1] # TxOutHash - s += source_input["vout"].to_bytes(4, byteorder="little") # TxOutIndex - - # since pubkey is not returned from indexd, add it from bitcoind - source_inputs = script.ensure_script_pub_key_for_inputs([source_input]) - source_input = source_inputs[0] - tx_script = binascii.unhexlify(bytes(source_input["script_pub_key"], "utf-8")) - s += var_int(int(len(tx_script))) # Script length - s += tx_script # Script - s += b"\xff" * 4 # Sequence - - # list of inputs - for n, data_chunk in enumerate(data_array): - data_chunk = config.PREFIX + data_chunk # prefix the data_chunk # noqa: PLW2901 - - # get the scripts - script_sig, redeem_script, output_script = p2sh_encoding.make_p2sh_encoding_redeemscript( - data_chunk, n, pubkey, multisig_pubkeys, multisig_pubkeys_required - ) - # substituteScript = script_sig + output_script - - s += txhash # TxOutHash - s += (n).to_bytes(4, byteorder="little") # TxOutIndex (assumes 0-based) - - # s += var_int(len(substituteScript)) # Script length - # s += substituteScript # Script - - s += var_int(len(script_sig)) # + len(output_script)) # Script length - s += script_sig # Script - # s += output_script # Script - - s += b"\xff" * 4 # Sequence - - # number of outputs, always 1 for the opreturn - n = 1 - n += len(destination_outputs) - - # encode output length - s += var_int(n) - - # destination outputs - for destination, value in destination_outputs: - tx_script, witness_script = get_script(destination) - - s += value.to_bytes(8, byteorder="little") # Value - s += var_int(int(len(tx_script))) # Script length - s += tx_script # Script - - # opreturn to signal P2SH encoding - key = arc4.init_arc4(txid) - data_chunk = config.PREFIX + b"P2SH" - data_chunk = key.encrypt(data_chunk) - tx_script = OP_RETURN # OP_RETURN - tx_script += op_push(len(data_chunk)) # Push bytes of data chunk - tx_script += data_chunk # Data - - # add opreturn - s += (0).to_bytes(8, byteorder="little") # Value - s += var_int(int(len(tx_script))) # Script length - s += tx_script # Script - - s += (0).to_bytes(4, byteorder="little") # LockTime - - return s diff --git a/counterparty-core/counterpartycore/lib/transaction_helper/p2sh_encoding.py b/counterparty-core/counterpartycore/lib/transaction_helper/p2sh_serializer.py similarity index 56% rename from counterparty-core/counterpartycore/lib/transaction_helper/p2sh_encoding.py rename to counterparty-core/counterpartycore/lib/transaction_helper/p2sh_serializer.py index 73c5cbdf72..365aebf2b5 100644 --- a/counterparty-core/counterpartycore/lib/transaction_helper/p2sh_encoding.py +++ b/counterparty-core/counterpartycore/lib/transaction_helper/p2sh_serializer.py @@ -3,13 +3,26 @@ """ import binascii +import io import logging import struct import bitcoin as bitcoinlib +from bitcoin.core import CTransaction from bitcoin.core.script import CScript -from counterpartycore.lib import config, exceptions, script +from counterpartycore.lib import arc4, backend, config, exceptions, script +from counterpartycore.lib.transaction_helper import transaction_outputs +from counterpartycore.lib.transaction_helper.common_serializer import ( + OP_RETURN, + get_script, + op_push, + var_int, +) +from counterpartycore.lib.transaction_helper.transaction_inputs import ( + UTXOLocks, + sort_unspent_txouts, +) logger = logging.getLogger(config.LOGGER_NAME) @@ -301,3 +314,289 @@ def make_standard_p2sh_multisig_script(multisig_pubkeys, multisig_pubkeys_requir bitcoinlib.core.script.OP_CHECKMULTISIG, ] return multisig_script + + +def select_any_coin_from_source( + source, + allow_unconfirmed_inputs=True, + disable_utxo_locks=False, + exclude_utxos=None, +): + """Get the first (biggest) input from the source address""" + + # Array of UTXOs, as retrieved by listunspent function from bitcoind + unspent = backend.addrindexrs.get_unspent_txouts(source, unconfirmed=allow_unconfirmed_inputs) + + unspent = UTXOLocks().filter_unspents(source, unspent, exclude_utxos) + + # sort + unspent = sort_unspent_txouts(unspent, dust_size=config.DEFAULT_REGULAR_DUST_SIZE) + + # use the first input + tx_input = unspent[0] + if tx_input is None: + return None + + if not disable_utxo_locks: + UTXOLocks().lock_utxos(source, [tx_input]) + + return tx_input + + +def serialise_p2sh_pretx( + inputs, + source, + source_value, + data_output, + change_output=None, + pubkey=None, + multisig_pubkeys=None, + multisig_pubkeys_required=None, +): + assert data_output # we don't do this unless there's data + + data_array, data_value = data_output + + s = (1).to_bytes(4, byteorder="little") # Version + + # Number of inputs. + s += var_int(int(len(inputs))) + + # List of Inputs. + for txin in inputs: + s += binascii.unhexlify(bytes(txin["txid"], "utf-8"))[::-1] # TxOutHash + s += txin["vout"].to_bytes(4, byteorder="little") # TxOutIndex + + tx_script = binascii.unhexlify(bytes(txin["script_pub_key"], "utf-8")) + s += var_int(int(len(tx_script))) # Script length + s += tx_script # Script + s += b"\xff" * 4 # Sequence + + # Number of outputs. + n = len(data_array) + if change_output: + n += 1 + + # encode number of outputs + s += var_int(n) + + # P2SH for data encodeded inputs + for n, data_chunk in enumerate(data_array): + data_chunk = config.PREFIX + data_chunk # prefix the data_chunk # noqa: PLW2901 + + # get the scripts + script_sig, redeem_script, output_script = make_p2sh_encoding_redeemscript( + data_chunk, n, pubkey, multisig_pubkeys, multisig_pubkeys_required + ) + + # if data_value is an array, then every output fee is specified in it + if isinstance(data_value, list): # noqa: E721 + s += data_value[n].to_bytes(8, byteorder="little") # Value + else: + s += data_value.to_bytes(8, byteorder="little") # Value + s += var_int(int(len(output_script))) # Script length + s += output_script # Script + + # Change output. + if change_output: + change_address, change_value = change_output + tx_script, witness_script = get_script(change_address) + + s += change_value.to_bytes(8, byteorder="little") # Value + s += var_int(int(len(tx_script))) # Script length + s += tx_script # Script + + s += (0).to_bytes(4, byteorder="little") # LockTime + + return s + + +def serialize_p2sh( + inputs, + source, + provided_pubkeys, + destination_outputs, + data_output, + change_output, + dust_return_pubkey, + p2sh_source_multisig_pubkeys, + p2sh_source_multisig_pubkeys_required, + p2sh_pretx_txid, + segwit, + exclude_utxos, +): + pretx_txid = None + unsigned_pretx_hex = None + unsigned_tx_hex = None + + # Normalize source + if script.is_multisig(source): + source_address = transaction_outputs.multisig_pubkeyhashes_to_pubkeys( + source, provided_pubkeys + ) + else: + source_address = source + + if p2sh_source_multisig_pubkeys: + p2sh_source_multisig_pubkeys = [binascii.unhexlify(p) for p in p2sh_source_multisig_pubkeys] + + assert not (segwit and p2sh_pretx_txid) # shouldn't do old style with segwit enabled + + if p2sh_pretx_txid: + pretx_txid = ( + p2sh_pretx_txid + if isinstance(p2sh_pretx_txid, bytes) + else binascii.unhexlify(p2sh_pretx_txid) + ) + unsigned_pretx = None + else: + destination_value_sum = sum([value for (_destination, value) in destination_outputs]) + source_value = destination_value_sum + + if change_output: + # add the difference between source and destination to the change + change_value = change_output[1] + (destination_value_sum - source_value) + change_output = (change_output[0], change_value) + + unsigned_pretx = serialise_p2sh_pretx( + inputs, + source=source_address, + source_value=source_value, + data_output=data_output, + change_output=change_output, + pubkey=dust_return_pubkey, + multisig_pubkeys=p2sh_source_multisig_pubkeys, + multisig_pubkeys_required=p2sh_source_multisig_pubkeys_required, + ) + unsigned_pretx_hex = binascii.hexlify(unsigned_pretx).decode("utf-8") + + # with segwit we already know the txid and can return both + if segwit: + # pretx_txid = hashlib.sha256(unsigned_pretx).digest() # this should be segwit txid + ptx = CTransaction.stream_deserialize( + io.BytesIO(unsigned_pretx) + ) # could be a non-segwit tx anyways + txid_ba = bytearray(ptx.GetTxid()) + txid_ba.reverse() + pretx_txid = bytes(txid_ba) # gonna leave the malleability problem to upstream + logger.debug(f"pretx_txid {pretx_txid}") + + if unsigned_pretx: + # we set a long lock on this, don't want other TXs to spend from it + UTXOLocks().lock_p2sh_utxos(unsigned_pretx) + + # only generate the data TX if we have the pretx txId + if pretx_txid: + source_input = None + if script.is_p2sh(source): + source_input = select_any_coin_from_source(source, exclude_utxos=exclude_utxos) + if not source_input: + raise exceptions.TransactionError( + "Unable to select source input for p2sh source address" + ) + + unsigned_datatx = serialise_p2sh_datatx( + pretx_txid, + source=source_address, + source_input=source_input, + destination_outputs=destination_outputs, + data_output=data_output, + pubkey=dust_return_pubkey, + multisig_pubkeys=p2sh_source_multisig_pubkeys, + multisig_pubkeys_required=p2sh_source_multisig_pubkeys_required, + ) + unsigned_datatx_hex = binascii.hexlify(unsigned_datatx).decode("utf-8") + + # let the rest of the code work it's magic on the data tx + unsigned_tx_hex = unsigned_datatx_hex + return pretx_txid, unsigned_pretx_hex, unsigned_tx_hex + else: + # we're just gonna return the pretx, it doesn't require any of the further checks + return pretx_txid, unsigned_pretx_hex, None + + +def serialise_p2sh_datatx( + txid, + source, + source_input, + destination_outputs, + data_output, + pubkey=None, + multisig_pubkeys=None, + multisig_pubkeys_required=None, +): + assert data_output # we don't do this unless there's data + + txhash = bitcoinlib.core.lx(bitcoinlib.core.b2x(txid)) # reverse txId + data_array, value = data_output + + # version + s = (1).to_bytes(4, byteorder="little") + + # number of inputs is the length of data_array (+1 if a source_input exists) + number_of_inputs = len(data_array) + if source_input is not None: + number_of_inputs += 1 + s += var_int(number_of_inputs) + + # Handle a source input here for a P2SH source + if source_input is not None: + s += binascii.unhexlify(bytes(source_input["txid"], "utf-8"))[::-1] # TxOutHash + s += source_input["vout"].to_bytes(4, byteorder="little") # TxOutIndex + + # since pubkey is not returned from indexd, add it from bitcoind + source_inputs = script.ensure_script_pub_key_for_inputs([source_input]) + source_input = source_inputs[0] + tx_script = binascii.unhexlify(bytes(source_input["script_pub_key"], "utf-8")) + s += var_int(int(len(tx_script))) # Script length + s += tx_script # Script + s += b"\xff" * 4 # Sequence + + # list of inputs + for n, data_chunk in enumerate(data_array): + data_chunk = config.PREFIX + data_chunk # prefix the data_chunk # noqa: PLW2901 + + # get the scripts + script_sig, redeem_script, output_script = make_p2sh_encoding_redeemscript( + data_chunk, n, pubkey, multisig_pubkeys, multisig_pubkeys_required + ) + + s += txhash # TxOutHash + s += (n).to_bytes(4, byteorder="little") # TxOutIndex (assumes 0-based) + + s += var_int(len(script_sig)) # + len(output_script)) # Script length + s += script_sig # Script + + s += b"\xff" * 4 # Sequence + + # number of outputs, always 1 for the opreturn + n = 1 + n += len(destination_outputs) + + # encode output length + s += var_int(n) + + # destination outputs + for destination, value in destination_outputs: + tx_script, witness_script = get_script(destination) + + s += value.to_bytes(8, byteorder="little") # Value + s += var_int(int(len(tx_script))) # Script length + s += tx_script # Script + + # opreturn to signal P2SH encoding + key = arc4.init_arc4(txid) + data_chunk = config.PREFIX + b"P2SH" + data_chunk = key.encrypt(data_chunk) + tx_script = OP_RETURN # OP_RETURN + tx_script += op_push(len(data_chunk)) # Push bytes of data chunk + tx_script += data_chunk # Data + + # add opreturn + s += (0).to_bytes(8, byteorder="little") # Value + s += var_int(int(len(tx_script))) # Script length + s += tx_script # Script + + s += (0).to_bytes(4, byteorder="little") # LockTime + + return s diff --git a/counterparty-core/counterpartycore/lib/transaction_helper/transaction_inputs.py b/counterparty-core/counterpartycore/lib/transaction_helper/transaction_inputs.py new file mode 100644 index 0000000000..8519b5f56e --- /dev/null +++ b/counterparty-core/counterpartycore/lib/transaction_helper/transaction_inputs.py @@ -0,0 +1,439 @@ +import binascii +import decimal +import hashlib +import logging +import threading + +import bitcoin as bitcoinlib +import cachetools + +from counterpartycore.lib import backend, config, exceptions, script, util +from counterpartycore.lib.transaction_helper import p2sh_serializer, transaction_outputs + +logger = logging.getLogger(config.LOGGER_NAME) +D = decimal.Decimal + +MAX_INPUTS_SET = 100 + + +class BaseThreadSafeCache: + def __init__(self, *args, **kwargs): + # Note: reading is thread safe out of the box + self.lock = threading.Lock() + self.__cache = self.create_cache(*args, **kwargs) + + def create_cache(self, *args, **kwargs): + raise NotImplementedError + + def get(self, key, default=None): + return self.__cache.get(key, default) + + def pop(self, key, default=None): + with self.lock: + return self.__cache.pop(key, default) + + def delete(self, key): + with self.lock: + try: + del self.__cache[key] + except KeyError: + pass + + def _get_cache(self): + return self.__cache + + def set(self, key, value): + with self.lock: + try: + self.__cache[key] = value + except KeyError: + pass + + def keys(self): + return self.__cache.keys() + + def __len__(self): + return len(self.__cache) + + def __iter__(self): + return iter(self.__cache) + + def __contains__(self, key): + return key in self.__cache + + +class ThreadSafeTTLCache(BaseThreadSafeCache): + def create_cache(self, *args, **kwargs): + return cachetools.TTLCache(*args, **kwargs) + + +def make_outkey_vin(txhex, vout): + txbin = binascii.unhexlify(txhex) if isinstance(txhex, str) else txhex + assert isinstance(vout, int) + + tx = bitcoinlib.core.CTransaction.deserialize(txbin) + outkey = [(vin.prevout.hash, vin.prevout.n) for vin in tx.vin] + outkey = hashlib.sha256((f"{outkey}{vout}").encode("ascii")).digest() + + return outkey + + +def make_outkey(output): + return f"{output['txid']}{output['vout']}" + + +def print_coin(coin): + return f"amount: {coin['amount']:.8f}; txid: {coin['txid']}; vout: {coin['vout']}; confirmations: {coin.get('confirmations', '?')}" # simplify and make deterministic + + +class UTXOLocks(metaclass=util.SingletonMeta): + # set higher than the max number of UTXOs we should expect to + # manage in an aging cache for any one source address, at any one period + # UTXO_P2SH_ENCODING_LOCKS is TTLCache for UTXOs that are used for chaining p2sh encoding + # instead of a simple (txid, vout) key we use [(vin.prevout.hash, vin.prevout.n) for vin tx1.vin] + # we cache the make_outkey_vin to avoid having to fetch raw txs too often + + def __init__(self, utxo_locks_max_addresses=None): + self.init(utxo_locks_max_addresses) + + def init(self, utxo_locks_max_addresses=None): + # config + self.utxo_p2sh_encoding_locks = ThreadSafeTTLCache(10000, 180) + self.utxo_p2sh_encoding_locks_cache = ThreadSafeTTLCache(1000, 600) + self.utxo_locks_max_age = config.UTXO_LOCKS_MAX_AGE + self.utxo_locks_max_addresses = utxo_locks_max_addresses or config.UTXO_LOCKS_MAX_ADDRESSES + self.utxo_locks_per_address_maxsize = 5000 + + self.utxo_locks = None + if self.utxo_locks_max_addresses > 0: + self.utxo_locks = util.DictCache(self.utxo_locks_max_addresses) + print("UTXOLocks initialized") + print(self.utxo_locks, self.utxo_locks_max_addresses) + + def make_outkey_vin_txid(self, txid, vout): + if (txid, vout) not in self.utxo_p2sh_encoding_locks_cache: + txhex = backend.bitcoind.getrawtransaction(txid, verbose=False) + self.utxo_p2sh_encoding_locks_cache.set((txid, vout), make_outkey_vin(txhex, vout)) + + return self.utxo_p2sh_encoding_locks_cache.get((txid, vout)) + + def filter_unspents(self, source, unspent, exclude_utxos): + filter_unspents_utxo_locks = [] + if self.utxo_locks is not None and source in self.utxo_locks: + filter_unspents_utxo_locks = self.utxo_locks[source].keys() + filter_unspents_p2sh_locks = self.utxo_p2sh_encoding_locks.keys() # filter out any locked UTXOs to prevent creating transactions that spend the same UTXO when they're created at the same time + filtered_unspent = [] + for output in unspent: + if ( + make_outkey(output) not in filter_unspents_utxo_locks + and self.make_outkey_vin_txid(output["txid"], output["vout"]) + not in filter_unspents_p2sh_locks + and ( + not exclude_utxos + or not isinstance(exclude_utxos, str) + or f"{output['txid']}:{output['vout']}" not in exclude_utxos.split(",") + ) + ): + filtered_unspent.append(output) + return filtered_unspent + + def lock_utxos(self, source, inputs): + # Lock the source's inputs (UTXOs) chosen for this transaction + if self.utxo_locks is not None: + if source not in self.utxo_locks: + self.utxo_locks[source] = ThreadSafeTTLCache( + self.utxo_locks_per_address_maxsize, self.utxo_locks_max_age + ) + for tx_input in inputs: + self.utxo_locks[source].set(make_outkey(tx_input), tx_input) + + def lock_p2sh_utxos(self, unsigned_pretx): + self.utxo_p2sh_encoding_locks.set(make_outkey_vin(unsigned_pretx, 0), True) + + def unlock_utxos(self, source, inputs): + if self.utxo_locks is not None and inputs: + for input in inputs: + self.utxo_locks[source].pop(make_outkey(input), None) + + +def sort_unspent_txouts(unspent, dust_size=config.DEFAULT_REGULAR_DUST_SIZE): + # Filter out all dust amounts to avoid bloating the resultant transaction + unspent = list(filter(lambda x: x["value"] > dust_size, unspent)) + # Sort by amount, using the largest UTXOs available + if config.REGTEST: + # REGTEST has a lot of coinbase inputs that can't be spent due to maturity + # this doesn't usually happens on mainnet or testnet because most fednodes aren't mining + unspent = sorted(unspent, key=lambda x: (x["confirmations"], x["value"]), reverse=True) + else: + unspent = sorted(unspent, key=lambda x: x["value"], reverse=True) + + return unspent + + +def construct_coin_selection( + size_for_fee, + encoding, + data_array, + source, + allow_unconfirmed_inputs, + unspent_tx_hash, + inputs_set, + fee_per_kb, + estimate_fee_per_kb_nblocks, + exact_fee, + fee_provided, + destination_btc_out, + data_btc_out, + regular_dust_size, + multisig_dust_size, + disable_utxo_locks, + exclude_utxos, +): + if inputs_set: + if isinstance(inputs_set, str): + new_inputs_set = [] + utxos_list = inputs_set.split(",") + if len(utxos_list) > MAX_INPUTS_SET: + raise exceptions.ComposeError( + f"too many UTXOs in inputs_set (max. {MAX_INPUTS_SET}): {len(utxos_list)}" + ) + for str_input in utxos_list: + if not util.is_utxo_format(str_input): + raise exceptions.ComposeError(f"invalid UTXO: {str_input}") + try: + amount = backend.bitcoind.get_tx_out_amount( + str_input.split(":")[0], int(str_input.split(":")[1]) + ) + except Exception as e: + raise exceptions.ComposeError(f"invalid UTXO: {str_input}") from e + new_inputs_set.append( + { + "txid": str_input.split(":")[0], + "vout": int(str_input.split(":")[1]), + "amount": amount, + } + ) + use_inputs = unspent = new_inputs_set + elif isinstance(inputs_set, list): + use_inputs = unspent = inputs_set + else: + raise exceptions.ComposeError(f"invalid inputs_set: {inputs_set}") + else: + if unspent_tx_hash is not None: + unspent = backend.addrindexrs.get_unspent_txouts( + source, + unconfirmed=allow_unconfirmed_inputs, + unspent_tx_hash=unspent_tx_hash, + ) + else: + unspent = backend.addrindexrs.get_unspent_txouts( + source, unconfirmed=allow_unconfirmed_inputs + ) + logger.trace(f"TX Construct - Unspent UTXOs: {[print_coin(coin) for coin in unspent]}") + if len(unspent) == 0: + raise exceptions.BalanceError( + f"Insufficient {config.BTC} at address {source}: no unspent outputs." + ) + + unspent = UTXOLocks().filter_unspents(source, unspent, exclude_utxos) + + if encoding == "multisig": + dust = multisig_dust_size + else: + dust = regular_dust_size + + unspent = sort_unspent_txouts(unspent, dust_size=dust) + # self.logger.debug(f"Sorted candidate UTXOs: {[print_coin(coin) for coin in unspent]}") + use_inputs = unspent + + # dont override fee_per_kb if specified + estimate_fee_per_kb = None + if fee_per_kb is not None: + estimate_fee_per_kb = False + else: + fee_per_kb = config.DEFAULT_FEE_PER_KB + + if estimate_fee_per_kb is None: + estimate_fee_per_kb = config.ESTIMATE_FEE_PER_KB + + # use backend estimated fee_per_kb + if estimate_fee_per_kb: + estimated_fee_per_kb = backend.bitcoind.fee_per_kb( + estimate_fee_per_kb_nblocks, config.ESTIMATE_FEE_MODE + ) + if estimated_fee_per_kb is not None: + fee_per_kb = max( + estimated_fee_per_kb, fee_per_kb + ) # never drop below the default fee_per_kb + + logger.trace(f"TX Construct - Fee/KB {fee_per_kb / config.UNIT:.8f}") + + inputs = [] + btc_in = 0 + change_quantity = 0 + sufficient_funds = False + final_fee = fee_per_kb + desired_input_count = 1 + + if encoding == "multisig" and data_array and util.enabled("bytespersigop"): + desired_input_count = len(data_array) * 2 + + # pop inputs until we can pay for the fee + use_inputs_index = 0 + for coin in use_inputs: + logger.trace(f"TX Construct - New input: {print_coin(coin)}") + inputs.append(coin) + btc_in += round(coin["amount"] * config.UNIT) + + # If exact fee is specified, use that. Otherwise, calculate size of tx + # and base fee on that (plus provide a minimum fee for selling BTC). + size = 181 * len(inputs) + size_for_fee + 10 + if exact_fee: + final_fee = exact_fee + else: + necessary_fee = int(size / 1000 * fee_per_kb) + final_fee = max(fee_provided, necessary_fee) + logger.trace( + f"TX Construct - final_fee inputs: {len(inputs)} size: {size} final_fee {final_fee}" + ) + + # Check if good. + btc_out = destination_btc_out + data_btc_out + change_quantity = btc_in - (btc_out + final_fee) + logger.trace( + f"TX Construct - Size: {size} Fee: {final_fee / config.UNIT:.8f} Change quantity: {change_quantity / config.UNIT:.8f} BTC" + ) + + # If after the sum of all the utxos the change is dust, then it will be added to the miners instead of returning an error + if ( + (use_inputs_index == len(use_inputs) - 1) + and (change_quantity > 0) + and (change_quantity < regular_dust_size) + ): + sufficient_funds = True + final_fee = final_fee + change_quantity + change_quantity = 0 + # If change is necessary, must not be a dust output. + elif change_quantity == 0 or change_quantity >= regular_dust_size: + sufficient_funds = True + if len(inputs) >= desired_input_count: + break + + use_inputs_index = use_inputs_index + 1 + + if not sufficient_funds: + # Approximate needed change, fee by with most recently calculated + # quantities. + btc_out = destination_btc_out + data_btc_out + total_btc_out = btc_out + max(change_quantity, 0) + final_fee + + need = f"{D(total_btc_out) / D(config.UNIT)} {config.BTC}" + include_fee = f"{D(final_fee) / D(config.UNIT)} {config.BTC}" + available = f"{D(btc_in) / D(config.UNIT)} {config.BTC}" + error_message = f"Insufficient {config.BTC} at address {source}. Need: {need} (Including fee: {include_fee}), available: {available}." + error_message += f" These fees are estimated for a confirmation target of {estimate_fee_per_kb_nblocks} blocks, you can reduce them by using the `confirmation_target` parameter with a higher value or by manually setting the fees with the `fee` parameter." + + if not allow_unconfirmed_inputs: + error_message += " To spend unconfirmed coins, use the flag `--unconfirmed`. (Unconfirmed coins cannot be spent from multi‐sig addresses.)" + + raise exceptions.BalanceError(error_message) + + if not disable_utxo_locks: + UTXOLocks().lock_utxos(source, inputs) + + # ensure inputs have scriptPubKey + # this is not provided by indexd + inputs = script.ensure_script_pub_key_for_inputs(inputs) + + return inputs, change_quantity, btc_in, final_fee + + +def prepare_inputs( + source, + data, + destination_outputs, + destination_btc_out, + data_array, + data_btc_out, + provided_pubkeys, + encoding, + p2sh_pretx_txid, + allow_unconfirmed_inputs, + unspent_tx_hash, + inputs_set, + fee_per_kb, + estimate_fee_per_kb_nblocks, + exact_fee, + fee_provided, + regular_dust_size, + multisig_dust_size, + disable_utxo_locks, + exclude_utxos, +): + btc_in = 0 + final_fee = 0 + # Calculate collective size of outputs, for fee calculation + p2pkhsize = 25 + 9 + if encoding == "multisig": + data_output_size = 81 # 71 for the data + elif encoding == "opreturn": + # prefix + data + 10 bytes script overhead + data_output_size = len(config.PREFIX) + 10 + if data is not None: + data_output_size = data_output_size + len(data) + else: + data_output_size = p2pkhsize # Pay‐to‐PubKeyHash (25 for the data?) + + if encoding == "p2sh": + # calculate all the p2sh outputs + size_for_fee, datatx_necessary_fee, data_value, data_btc_out = ( + p2sh_serializer.calculate_outputs( + destination_outputs, data_array, fee_per_kb, exact_fee + ) + ) + # replace the data value + # data_output = (data_array, data_value) + else: + sum_data_output_size = len(data_array) * data_output_size + size_for_fee = ((25 + 9) * len(destination_outputs)) + sum_data_output_size + + if not (encoding == "p2sh" and p2sh_pretx_txid): + inputs, change_quantity, n_btc_in, n_final_fee = construct_coin_selection( + size_for_fee, + encoding, + data_array, + source, + allow_unconfirmed_inputs, + unspent_tx_hash, + inputs_set, + fee_per_kb, + estimate_fee_per_kb_nblocks, + exact_fee, + fee_provided, + destination_btc_out, + data_btc_out, + regular_dust_size, + multisig_dust_size, + disable_utxo_locks, + exclude_utxos, + ) + btc_in = n_btc_in + final_fee = n_final_fee + else: + # when encoding is P2SH and the pretx txid is passed we can skip coinselection + inputs, change_quantity = None, None + + # Normalize source + if script.is_multisig(source): + source_address = transaction_outputs.multisig_pubkeyhashes_to_pubkeys( + source, provided_pubkeys + ) + else: + source_address = source + + if change_quantity: + change_output = (source_address, change_quantity) + else: + change_output = None + + return inputs, change_output, btc_in, final_fee diff --git a/counterparty-core/counterpartycore/lib/transaction_helper/transaction_outputs.py b/counterparty-core/counterpartycore/lib/transaction_helper/transaction_outputs.py new file mode 100644 index 0000000000..ae031addab --- /dev/null +++ b/counterparty-core/counterpartycore/lib/transaction_helper/transaction_outputs.py @@ -0,0 +1,263 @@ +import binascii +import logging + +from counterpartycore.lib import ( + backend, + config, + exceptions, + script, + util, +) +from counterpartycore.lib.transaction_helper import p2sh_serializer + +logger = logging.getLogger(config.LOGGER_NAME) + + +def chunks(l, n): # noqa: E741 + """Yield successive n‐sized chunks from l.""" + for i in range(0, len(l), n): + yield l[i : i + n] + + +def pubkeyhash_to_pubkey(pubkeyhash, provided_pubkeys=None): + # Search provided pubkeys. + if provided_pubkeys: + if not isinstance(provided_pubkeys, list): # noqa: E721 + provided_pubkeys = [provided_pubkeys] + for pubkey in provided_pubkeys: + if pubkeyhash == script.pubkey_to_pubkeyhash(util.unhexlify(pubkey)): + return pubkey + elif pubkeyhash == script.pubkey_to_p2whash(util.unhexlify(pubkey)): + return pubkey + + # Search blockchain. + raw_transactions = backend.addrindexrs.search_raw_transactions(pubkeyhash, unconfirmed=True) + for tx_id in raw_transactions: + tx = raw_transactions[tx_id] + for vin in tx["vin"]: + if "txinwitness" in vin: + if len(vin["txinwitness"]) >= 2: + # catch unhexlify errs for when txinwitness[1] isn't a witness program (eg; for P2W) + try: + pubkey = vin["txinwitness"][1] + if pubkeyhash == script.pubkey_to_p2whash(util.unhexlify(pubkey)): + return pubkey + except binascii.Error: + pass + elif "coinbase" not in vin: + scriptsig = vin["scriptSig"] + asm = scriptsig["asm"].split(" ") + if len(asm) >= 2: + # catch unhexlify errs for when asm[1] isn't a pubkey (eg; for P2SH) + try: + pubkey = asm[1] + if pubkeyhash == script.pubkey_to_pubkeyhash(util.unhexlify(pubkey)): + return pubkey + except binascii.Error: + pass + + raise exceptions.UnknownPubKeyError( + "Public key was neither provided nor published in blockchain." + ) + + +def multisig_pubkeyhashes_to_pubkeys(address, provided_pubkeys=None): + signatures_required, pubkeyhashes, signatures_possible = script.extract_array(address) + pubkeys = [pubkeyhash_to_pubkey(pubkeyhash, provided_pubkeys) for pubkeyhash in pubkeyhashes] + return script.construct_array(signatures_required, pubkeys, signatures_possible) + + +def get_dust_return_pubkey(source, provided_pubkeys): + """Return the pubkey to which dust from data outputs will be sent. + + This pubkey is used in multi-sig data outputs (as the only real pubkey) to + make those the outputs spendable. It is derived from the source address, so + that the dust is spendable by the creator of the transaction. + """ + # Get hex dust return pubkey. + # inject `script` + if script.is_multisig(source): + a, self_pubkeys, b = script.extract_array( + multisig_pubkeyhashes_to_pubkeys(source, provided_pubkeys) + ) + dust_return_pubkey_hex = self_pubkeys[0] + else: + dust_return_pubkey_hex = pubkeyhash_to_pubkey(source, provided_pubkeys) + + # Convert hex public key into the (binary) dust return pubkey. + try: + dust_return_pubkey = binascii.unhexlify(dust_return_pubkey_hex) + except binascii.Error: + raise script.InputError("Invalid private key.") # noqa: B904 + + return dust_return_pubkey + + +def compute_destinations_and_values( + destination_outputs, encoding, multisig_dust_size, regular_dust_size, provided_pubkeys +): + # Destination outputs. + # Replace multi‐sig addresses with multi‐sig pubkeys. Check that the + # destination output isn’t a dust output. Set null values to dust size. + destination_outputs_new = [] + if encoding != "p2sh": + for address, value in destination_outputs: + # Value. + if script.is_multisig(address): + dust_size = multisig_dust_size + else: + dust_size = regular_dust_size + if value is None: # noqa: E711 + value = dust_size # noqa: PLW2901 + elif value < dust_size: + raise exceptions.TransactionError("Destination output is dust.") + # Address. + script.validate(address) + if script.is_multisig(address): + destination_outputs_new.append( + ( + multisig_pubkeyhashes_to_pubkeys(address, provided_pubkeys), + value, + ) + ) + else: + destination_outputs_new.append((address, value)) + return destination_outputs_new + + +def prepare_data_output( + data, + source, + destination_outputs, + provided_pubkeys, + encoding, + multisig_dust_size, + regular_dust_size, + dust_return_pubkey, + op_return_value, + exact_fee, + fee_per_kb, +): + source_is_p2sh = script.is_p2sh(source) + + if dust_return_pubkey: + dust_return_pubkey = binascii.unhexlify(dust_return_pubkey) + + ps2h_dust_return_pubkey = config.P2SH_DUST_RETURN_PUBKEY + + data_value = 0 + data_array = [] + if data: + # @TODO: p2sh encoding require signable dust key + if encoding == "multisig": + # dust_return_pubkey should be set or explicitly set to False to use the default configured for the node + # the default for the node is optional so could fail + if (source_is_p2sh and dust_return_pubkey is None) or ( + dust_return_pubkey is False and ps2h_dust_return_pubkey is None + ): + raise exceptions.TransactionError( + "Can't use multisig encoding when source is P2SH and no dust_return_pubkey is provided." + ) + elif dust_return_pubkey is False: + dust_return_pubkey = binascii.unhexlify(ps2h_dust_return_pubkey) + + if not dust_return_pubkey: + if encoding == "multisig" or encoding == "p2sh" and not source_is_p2sh: + dust_return_pubkey = get_dust_return_pubkey(source, provided_pubkeys) + else: + dust_return_pubkey = None + + # Divide data into chunks. + if encoding == "pubkeyhash": + # Prefix is also a suffix here. + chunk_size = 20 - 1 - 8 + elif encoding == "multisig": + # Two pubkeys, minus length byte, minus prefix, minus two nonces, + # minus two sign bytes. + chunk_size = (33 * 2) - 1 - len(config.PREFIX) - 2 - 2 + elif encoding == "p2sh": + pubkeylength = -1 + if dust_return_pubkey is not None: + pubkeylength = len(dust_return_pubkey) + + chunk_size = p2sh_serializer.maximum_data_chunk_size(pubkeylength) + elif encoding == "opreturn": + chunk_size = config.OP_RETURN_MAX_SIZE + if len(data) + len(config.PREFIX) > chunk_size: + raise exceptions.TransactionError("One `OP_RETURN` output per transaction.") + data_array = list(chunks(data, chunk_size)) + + # Data outputs. + if encoding == "multisig": + data_value = multisig_dust_size + elif encoding == "p2sh": + data_value = 0 # this will be calculated later + elif encoding == "opreturn": + data_value = op_return_value + else: + # Pay‐to‐PubKeyHash, e.g. + data_value = regular_dust_size + else: + dust_return_pubkey = None + + if encoding == "p2sh": + _size_for_fee, _datatx_necessary_fee, data_value, data_btc_out = ( + p2sh_serializer.calculate_outputs( + destination_outputs, data_array, fee_per_kb, exact_fee + ) + ) + else: + data_btc_out = data_value * len(data_array) + + logger.trace( + f"TX Construct - data_btc_out={data_btc_out} (data_value={data_value} len(data_array)={len(data_array)})" + ) + + return data_value, data_array, data_btc_out, dust_return_pubkey + + +def prepare_outputs( + data, + source, + destinations, + provided_pubkeys, + encoding, + multisig_dust_size, + regular_dust_size, + dust_return_pubkey, + op_return_value, + exact_fee, + fee_per_kb, +): + """Destinations""" + + destination_outputs = compute_destinations_and_values( + destinations, encoding, multisig_dust_size, regular_dust_size, provided_pubkeys + ) + destination_btc_out = sum([value for address, value in destination_outputs]) + + """Data""" + + data_value, data_array, data_btc_out, dust_return_pubkey = prepare_data_output( + data, + source, + destination_outputs, + provided_pubkeys, + encoding, + multisig_dust_size, + regular_dust_size, + dust_return_pubkey, + op_return_value, + exact_fee, + fee_per_kb, + ) + data_output = (data_array, data_value) if len(data_array) > 0 else None + + return ( + destination_outputs, + destination_btc_out, + data_array, + data_btc_out, + data_output, + dust_return_pubkey, + ) diff --git a/counterparty-core/counterpartycore/protocol_changes.json b/counterparty-core/counterpartycore/protocol_changes.json index 47a7f2b975..af48992f88 100644 --- a/counterparty-core/counterpartycore/protocol_changes.json +++ b/counterparty-core/counterpartycore/protocol_changes.json @@ -551,7 +551,7 @@ }, "dispenser_must_be_created_by_source": { "minimum_version_major": 10, - "minimum_version_minor": 2, + "minimum_version_minor": 4, "minimum_version_revision": 0, "block_index": 866000, "testnet_block_index": 2925800 diff --git a/counterparty-core/counterpartycore/server.py b/counterparty-core/counterpartycore/server.py index 3e754d0660..5379a5e007 100755 --- a/counterparty-core/counterpartycore/server.py +++ b/counterparty-core/counterpartycore/server.py @@ -25,7 +25,6 @@ exceptions, follow, log, - transaction, util, ) from counterpartycore.lib.api import api_server as api_v2 @@ -695,10 +694,6 @@ def start_all(args): # Backend. connect_to_backend() - # Reset UTXO_LOCKS. This previously was done in - # initilise_config - transaction.initialise() - # API Status Poller. api_status_poller = api_v1.APIStatusPoller() api_status_poller.daemon = True diff --git a/counterparty-core/counterpartycore/test/arc4_test.py b/counterparty-core/counterpartycore/test/arc4_test.py index ba0d7e09c7..c62f8d3701 100644 --- a/counterparty-core/counterpartycore/test/arc4_test.py +++ b/counterparty-core/counterpartycore/test/arc4_test.py @@ -124,15 +124,12 @@ def test_transaction_arc4_mocked(server_db): by default init_arc4 should be mocked in the test suite to always use `'00' * 32` as seed. """ - # TODO, use explicit backend mock - transaction.initialise() - v = int(100 * 1e8) tx_info = send.compose(server_db, ADDR[0], ADDR[1], "XCP", v) send1hex = transaction.construct(db=server_db, tx_info=tx_info, regular_dust_size=5430) assert ( - send1hex + send1hex["unsigned_tx_hex"] == "0100000001c1d8c075936c3495f6d653c50f73d987f75448d97a750249b1eb83bee71b24ae000000001976a9144838d8b3588c4c7ba7c1d06f866e9b3739c6303788acffffffff0336150000000000001976a9148d6ae8a3b381663118b4e1eff4cfc7d0954dd6ec88ac00000000000000001e6a1c8a5dda15fb6f05628a061e67576e926dc71a7fa2f0cceb951120a9322f30ea0b000000001976a9144838d8b3588c4c7ba7c1d06f866e9b3739c6303788ac00000000" ) @@ -144,15 +141,12 @@ def test_transaction_arc4_unmocked(server_db): but with DISABLE_ARC4_MOCKING=True it should be disabled and actually produce different results """ - # TODO, use explicit backend mock - transaction.initialise() - with util_test.ConfigContext(DISABLE_ARC4_MOCKING=True): v = int(100 * 1e8) tx_info = send.compose(server_db, ADDR[0], ADDR[1], "XCP", v) send1hex = transaction.construct(db=server_db, tx_info=tx_info, regular_dust_size=5430) assert ( - send1hex + send1hex["unsigned_tx_hex"] == "0100000001c1d8c075936c3495f6d653c50f73d987f75448d97a750249b1eb83bee71b24ae000000001976a9144838d8b3588c4c7ba7c1d06f866e9b3739c6303788acffffffff0336150000000000001976a9148d6ae8a3b381663118b4e1eff4cfc7d0954dd6ec88ac00000000000000001e6a1c2a504df746f83442653dd7ada4dc727a030865749e9fba58ba71d71a2f30ea0b000000001976a9144838d8b3588c4c7ba7c1d06f866e9b3739c6303788ac00000000" ) diff --git a/counterparty-core/counterpartycore/test/bytespersigop_test.py b/counterparty-core/counterpartycore/test/bytespersigop_test.py index 13d721934e..26ef0e2410 100644 --- a/counterparty-core/counterpartycore/test/bytespersigop_test.py +++ b/counterparty-core/counterpartycore/test/bytespersigop_test.py @@ -22,8 +22,6 @@ def test_bytespersigop(server_db): with util_test.MockProtocolChangesContext(short_tx_type_id=False): assert util.enabled("bytespersigop") == False # noqa: E712 - transaction.initialise() - # ADDR[0], bytespersigop=False, desc 41 bytes, opreturn txhex = transaction.compose_transaction( server_db, @@ -38,7 +36,9 @@ def test_bytespersigop(server_db): }, ) - tx = bitcoinlib.core.CTransaction.deserialize(binascii.unhexlify(txhex)) + tx = bitcoinlib.core.CTransaction.deserialize(binascii.unhexlify(txhex["unsigned_tx_hex"])) + + print("test_bytespersigop 4") assert len(tx.vin) == 1 assert len(tx.vout) == 2 @@ -58,7 +58,7 @@ def test_bytespersigop(server_db): }, ) - tx = bitcoinlib.core.CTransaction.deserialize(binascii.unhexlify(txhex)) + tx = bitcoinlib.core.CTransaction.deserialize(binascii.unhexlify(txhex["unsigned_tx_hex"])) assert len(tx.vin) == 1 # assert len(tx.vout) == 3 @@ -83,7 +83,7 @@ def test_bytespersigop(server_db): }, ) - tx = bitcoinlib.core.CTransaction.deserialize(binascii.unhexlify(txhex)) + tx = bitcoinlib.core.CTransaction.deserialize(binascii.unhexlify(txhex["unsigned_tx_hex"])) assert len(tx.vin) == 1 assert len(tx.vout) == 2 @@ -103,7 +103,7 @@ def test_bytespersigop(server_db): }, ) - tx = bitcoinlib.core.CTransaction.deserialize(binascii.unhexlify(txhex)) + tx = bitcoinlib.core.CTransaction.deserialize(binascii.unhexlify(txhex["unsigned_tx_hex"])) assert len(tx.vin) == 1 assert len(tx.vout) == 2 @@ -125,7 +125,7 @@ def test_bytespersigop(server_db): encoding="multisig", ) - tx = bitcoinlib.core.CTransaction.deserialize(binascii.unhexlify(txhex)) + tx = bitcoinlib.core.CTransaction.deserialize(binascii.unhexlify(txhex["unsigned_tx_hex"])) assert len(tx.vin) == 2 assert len(tx.vout) == 2 diff --git a/counterparty-core/counterpartycore/test/conftest.py b/counterparty-core/counterpartycore/test/conftest.py index cfd3637626..0a853bdcdd 100644 --- a/counterparty-core/counterpartycore/test/conftest.py +++ b/counterparty-core/counterpartycore/test/conftest.py @@ -622,10 +622,11 @@ def get_transaction_fee(db, transaction_type, block_index): mocked_search_raw_transactions, ) monkeypatch.setattr( - "counterpartycore.lib.transaction.pubkeyhash_to_pubkey", pubkeyhash_to_pubkey + "counterpartycore.lib.transaction_helper.transaction_outputs.pubkeyhash_to_pubkey", + pubkeyhash_to_pubkey, ) monkeypatch.setattr( - "counterpartycore.lib.transaction.multisig_pubkeyhashes_to_pubkeys", + "counterpartycore.lib.transaction_helper.transaction_outputs.multisig_pubkeyhashes_to_pubkeys", multisig_pubkeyhashes_to_pubkeys, ) monkeypatch.setattr("counterpartycore.lib.database.check_wal_file", check_wal_file) diff --git a/counterparty-core/counterpartycore/test/estimate_fee_per_kb_test.py b/counterparty-core/counterpartycore/test/estimate_fee_per_kb_test.py index f118893d9d..efd394d92a 100644 --- a/counterparty-core/counterpartycore/test/estimate_fee_per_kb_test.py +++ b/counterparty-core/counterpartycore/test/estimate_fee_per_kb_test.py @@ -40,15 +40,15 @@ def _fee_per_kb(conf_target, mode): ) with util_test.ConfigContext(ESTIMATE_FEE_PER_KB=True): - transaction.initialise() - txhex = transaction.compose_transaction( server_db, "send", {"source": ADDR[0], "destination": ADDR[1], "asset": "XCP", "quantity": 100}, ) - pretx = bitcoinlib.core.CTransaction.deserialize(binascii.unhexlify(txhex)) + pretx = bitcoinlib.core.CTransaction.deserialize( + binascii.unhexlify(txhex["unsigned_tx_hex"]) + ) sumvin = sum( [ int(utxos[(bitcoinlib.core.b2lx(vin.prevout.hash), vin.prevout.n)]["amount"] * 1e8) @@ -61,7 +61,7 @@ def _fee_per_kb(conf_target, mode): fee = int((signedsize / 1000) * (fee_per_kb_used or fee_per_kb)) - assert len(txhex) / 2 == unsignedsize + assert len(txhex["unsigned_tx_hex"]) / 2 == unsignedsize assert sumvin == 199909140 assert sumvout < sumvin assert sumvout == sumvin - fee diff --git a/counterparty-core/counterpartycore/test/fixtures/api_v2_fixtures.json b/counterparty-core/counterpartycore/test/fixtures/api_v2_fixtures.json index dac6834153..1a740bbcb8 100644 --- a/counterparty-core/counterpartycore/test/fixtures/api_v2_fixtures.json +++ b/counterparty-core/counterpartycore/test/fixtures/api_v2_fixtures.json @@ -7948,6 +7948,32 @@ } ] }, + "/v2/transactions//info": { + "function": "info_by_tx_hash", + "description": "Returns Counterparty information from a transaction hash.", + "args": [ + { + "name": "tx_hash", + "required": true, + "type": "str", + "description": "Transaction hash (e.g. $LAST_MEMPOOL_TX_HASH)" + }, + { + "name": "verbose", + "type": "bool", + "default": "false", + "description": "Include asset and dispenser info and normalized quantities in the response.", + "required": false + }, + { + "name": "show_unconfirmed", + "type": "bool", + "default": "false", + "description": "Include results from Mempool.", + "required": false + } + ] + }, "/v2/transactions/unpack": { "function": "unpack", "description": "Unpacks Counterparty data in hex format and returns the message type and data.", @@ -9179,6 +9205,13 @@ "type": "int", "description": "The number of lines to skip before returning results (overrides the `cursor` parameter)" }, + { + "name": "sort", + "default": null, + "required": false, + "type": "str", + "description": "The sort order of the dispensers to return (overrides the `cursor` parameter) (e.g. give_quantity:desc)" + }, { "name": "verbose", "type": "bool", @@ -9714,6 +9747,13 @@ "type": "int", "description": "The number of lines to skip before returning results (overrides the `cursor` parameter)" }, + { + "name": "sort", + "default": null, + "required": false, + "type": "str", + "description": "The sort order of the orders to return (overrides the `cursor` parameter) (e.g. expiration:desc)" + }, { "name": "verbose", "type": "bool", @@ -9957,10 +9997,10 @@ "required": false }, { - "name": "pubkey", + "name": "pubkeys", "type": "str", "default": null, - "description": "The hexadecimal public key of the source address (or a list of the keys, if multi-sig). Required when using encoding parameter values of multisig or pubkeyhash.", + "description": "The hexadecimal public key of the source address (or a comma separated list of keys, if multi-sig). Required when using encoding parameter values of multisig or pubkeyhash.", "required": false }, { @@ -9971,7 +10011,7 @@ "required": false }, { - "name": "fee", + "name": "exact_fee", "type": "int", "default": null, "description": "If you'd like to specify a custom miners' fee, specify it here (in satoshis). Leave as default for the server to automatically choose", @@ -9988,7 +10028,7 @@ "name": "unspent_tx_hash", "type": "str", "default": null, - "description": "When compiling the UTXOs to use as inputs for the transaction being created, only consider unspent outputs from this specific transaction hash. Defaults to null to consider all UTXOs for the address. Do not use this parameter if you are specifying custom_inputs", + "description": "When compiling the UTXOs to use as inputs for the transaction being created, only consider unspent outputs from this specific transaction hash. Defaults to null to consider all UTXOs for the address. Do not use this parameter if you are specifying inputs_set", "required": false }, { @@ -10005,13 +10045,6 @@ "description": "By default, UTXOs utilized when creating a transaction are 'locked' for a few seconds, to prevent a case where rapidly generating create_ calls reuse UTXOs due to their spent status not being updated in bitcoind yet. Specify true for this parameter to disable this behavior, and not temporarily lock UTXOs", "required": false }, - { - "name": "extended_tx_info", - "type": "bool", - "default": false, - "description": "When this is not specified or false, the create_ calls return only a hex-encoded string. If this is true, the create_ calls return a data object with the following keys: tx_hex, btc_in, btc_out, btc_change, and btc_fee", - "required": false - }, { "name": "p2sh_pretx_txid", "type": "str", @@ -10033,25 +10066,46 @@ "description": "The number of blocks to target for confirmation", "required": false }, + { + "name": "exclude_utxos", + "type": "str", + "default": null, + "description": "A comma-separated list of UTXO txids to exclude when selecting UTXOs to use as inputs for the transaction being created", + "required": false + }, + { + "name": "inputs_set", + "type": "str", + "default": null, + "description": "A comma-separated list of UTXOs (`:`) to use as inputs for the transaction being created", + "required": false + }, { "name": "return_psbt", "type": "bool", "default": false, - "description": "Construct a PSBT instead of a raw transaction hex", + "description": "(API v2 only) Construct a PSBT instead of a raw transaction hex", "required": false }, { - "name": "exclude_utxos", - "type": "str", - "default": "", - "description": "A comma-separated list of UTXO txids to exclude when selecting UTXOs to use as inputs for the transaction being created", + "name": "return_only_data", + "type": "bool", + "default": false, + "description": "(API v2 only) Return only the data part of the transaction", "required": false }, { - "name": "return_only_data", + "name": "extended_tx_info", + "type": "bool", + "default": false, + "description": "(API v1 only) When this is not specified or false, the create_ calls return only a hex-encoded string. If this is true, the create_ calls return a data object with the following keys: tx_hex, btc_in, btc_out, btc_change, and btc_fee", + "required": false + }, + { + "name": "old_style_api", "type": "bool", "default": false, - "description": "Return only the data part of the transaction", + "description": "(API v1 only) Returns a single hex-encoded string instead of an array", "required": false }, { @@ -10133,10 +10187,10 @@ "required": false }, { - "name": "pubkey", + "name": "pubkeys", "type": "str", "default": null, - "description": "The hexadecimal public key of the source address (or a list of the keys, if multi-sig). Required when using encoding parameter values of multisig or pubkeyhash.", + "description": "The hexadecimal public key of the source address (or a comma separated list of keys, if multi-sig). Required when using encoding parameter values of multisig or pubkeyhash.", "required": false }, { @@ -10147,7 +10201,7 @@ "required": false }, { - "name": "fee", + "name": "exact_fee", "type": "int", "default": null, "description": "If you'd like to specify a custom miners' fee, specify it here (in satoshis). Leave as default for the server to automatically choose", @@ -10164,7 +10218,7 @@ "name": "unspent_tx_hash", "type": "str", "default": null, - "description": "When compiling the UTXOs to use as inputs for the transaction being created, only consider unspent outputs from this specific transaction hash. Defaults to null to consider all UTXOs for the address. Do not use this parameter if you are specifying custom_inputs", + "description": "When compiling the UTXOs to use as inputs for the transaction being created, only consider unspent outputs from this specific transaction hash. Defaults to null to consider all UTXOs for the address. Do not use this parameter if you are specifying inputs_set", "required": false }, { @@ -10181,13 +10235,6 @@ "description": "By default, UTXOs utilized when creating a transaction are 'locked' for a few seconds, to prevent a case where rapidly generating create_ calls reuse UTXOs due to their spent status not being updated in bitcoind yet. Specify true for this parameter to disable this behavior, and not temporarily lock UTXOs", "required": false }, - { - "name": "extended_tx_info", - "type": "bool", - "default": false, - "description": "When this is not specified or false, the create_ calls return only a hex-encoded string. If this is true, the create_ calls return a data object with the following keys: tx_hex, btc_in, btc_out, btc_change, and btc_fee", - "required": false - }, { "name": "p2sh_pretx_txid", "type": "str", @@ -10209,25 +10256,46 @@ "description": "The number of blocks to target for confirmation", "required": false }, + { + "name": "exclude_utxos", + "type": "str", + "default": null, + "description": "A comma-separated list of UTXO txids to exclude when selecting UTXOs to use as inputs for the transaction being created", + "required": false + }, + { + "name": "inputs_set", + "type": "str", + "default": null, + "description": "A comma-separated list of UTXOs (`:`) to use as inputs for the transaction being created", + "required": false + }, { "name": "return_psbt", "type": "bool", "default": false, - "description": "Construct a PSBT instead of a raw transaction hex", + "description": "(API v2 only) Construct a PSBT instead of a raw transaction hex", "required": false }, { - "name": "exclude_utxos", - "type": "str", - "default": "", - "description": "A comma-separated list of UTXO txids to exclude when selecting UTXOs to use as inputs for the transaction being created", + "name": "return_only_data", + "type": "bool", + "default": false, + "description": "(API v2 only) Return only the data part of the transaction", "required": false }, { - "name": "return_only_data", + "name": "extended_tx_info", + "type": "bool", + "default": false, + "description": "(API v1 only) When this is not specified or false, the create_ calls return only a hex-encoded string. If this is true, the create_ calls return a data object with the following keys: tx_hex, btc_in, btc_out, btc_change, and btc_fee", + "required": false + }, + { + "name": "old_style_api", "type": "bool", "default": false, - "description": "Return only the data part of the transaction", + "description": "(API v1 only) Returns a single hex-encoded string instead of an array", "required": false }, { @@ -10291,10 +10359,10 @@ "required": false }, { - "name": "pubkey", + "name": "pubkeys", "type": "str", "default": null, - "description": "The hexadecimal public key of the source address (or a list of the keys, if multi-sig). Required when using encoding parameter values of multisig or pubkeyhash.", + "description": "The hexadecimal public key of the source address (or a comma separated list of keys, if multi-sig). Required when using encoding parameter values of multisig or pubkeyhash.", "required": false }, { @@ -10305,7 +10373,7 @@ "required": false }, { - "name": "fee", + "name": "exact_fee", "type": "int", "default": null, "description": "If you'd like to specify a custom miners' fee, specify it here (in satoshis). Leave as default for the server to automatically choose", @@ -10322,7 +10390,7 @@ "name": "unspent_tx_hash", "type": "str", "default": null, - "description": "When compiling the UTXOs to use as inputs for the transaction being created, only consider unspent outputs from this specific transaction hash. Defaults to null to consider all UTXOs for the address. Do not use this parameter if you are specifying custom_inputs", + "description": "When compiling the UTXOs to use as inputs for the transaction being created, only consider unspent outputs from this specific transaction hash. Defaults to null to consider all UTXOs for the address. Do not use this parameter if you are specifying inputs_set", "required": false }, { @@ -10339,13 +10407,6 @@ "description": "By default, UTXOs utilized when creating a transaction are 'locked' for a few seconds, to prevent a case where rapidly generating create_ calls reuse UTXOs due to their spent status not being updated in bitcoind yet. Specify true for this parameter to disable this behavior, and not temporarily lock UTXOs", "required": false }, - { - "name": "extended_tx_info", - "type": "bool", - "default": false, - "description": "When this is not specified or false, the create_ calls return only a hex-encoded string. If this is true, the create_ calls return a data object with the following keys: tx_hex, btc_in, btc_out, btc_change, and btc_fee", - "required": false - }, { "name": "p2sh_pretx_txid", "type": "str", @@ -10367,25 +10428,46 @@ "description": "The number of blocks to target for confirmation", "required": false }, + { + "name": "exclude_utxos", + "type": "str", + "default": null, + "description": "A comma-separated list of UTXO txids to exclude when selecting UTXOs to use as inputs for the transaction being created", + "required": false + }, + { + "name": "inputs_set", + "type": "str", + "default": null, + "description": "A comma-separated list of UTXOs (`:`) to use as inputs for the transaction being created", + "required": false + }, { "name": "return_psbt", "type": "bool", "default": false, - "description": "Construct a PSBT instead of a raw transaction hex", + "description": "(API v2 only) Construct a PSBT instead of a raw transaction hex", "required": false }, { - "name": "exclude_utxos", - "type": "str", - "default": "", - "description": "A comma-separated list of UTXO txids to exclude when selecting UTXOs to use as inputs for the transaction being created", + "name": "return_only_data", + "type": "bool", + "default": false, + "description": "(API v2 only) Return only the data part of the transaction", "required": false }, { - "name": "return_only_data", + "name": "extended_tx_info", + "type": "bool", + "default": false, + "description": "(API v1 only) When this is not specified or false, the create_ calls return only a hex-encoded string. If this is true, the create_ calls return a data object with the following keys: tx_hex, btc_in, btc_out, btc_change, and btc_fee", + "required": false + }, + { + "name": "old_style_api", "type": "bool", "default": false, - "description": "Return only the data part of the transaction", + "description": "(API v1 only) Returns a single hex-encoded string instead of an array", "required": false }, { @@ -10456,10 +10538,10 @@ "required": false }, { - "name": "pubkey", + "name": "pubkeys", "type": "str", "default": null, - "description": "The hexadecimal public key of the source address (or a list of the keys, if multi-sig). Required when using encoding parameter values of multisig or pubkeyhash.", + "description": "The hexadecimal public key of the source address (or a comma separated list of keys, if multi-sig). Required when using encoding parameter values of multisig or pubkeyhash.", "required": false }, { @@ -10470,7 +10552,7 @@ "required": false }, { - "name": "fee", + "name": "exact_fee", "type": "int", "default": null, "description": "If you'd like to specify a custom miners' fee, specify it here (in satoshis). Leave as default for the server to automatically choose", @@ -10487,7 +10569,7 @@ "name": "unspent_tx_hash", "type": "str", "default": null, - "description": "When compiling the UTXOs to use as inputs for the transaction being created, only consider unspent outputs from this specific transaction hash. Defaults to null to consider all UTXOs for the address. Do not use this parameter if you are specifying custom_inputs", + "description": "When compiling the UTXOs to use as inputs for the transaction being created, only consider unspent outputs from this specific transaction hash. Defaults to null to consider all UTXOs for the address. Do not use this parameter if you are specifying inputs_set", "required": false }, { @@ -10504,13 +10586,6 @@ "description": "By default, UTXOs utilized when creating a transaction are 'locked' for a few seconds, to prevent a case where rapidly generating create_ calls reuse UTXOs due to their spent status not being updated in bitcoind yet. Specify true for this parameter to disable this behavior, and not temporarily lock UTXOs", "required": false }, - { - "name": "extended_tx_info", - "type": "bool", - "default": false, - "description": "When this is not specified or false, the create_ calls return only a hex-encoded string. If this is true, the create_ calls return a data object with the following keys: tx_hex, btc_in, btc_out, btc_change, and btc_fee", - "required": false - }, { "name": "p2sh_pretx_txid", "type": "str", @@ -10532,25 +10607,46 @@ "description": "The number of blocks to target for confirmation", "required": false }, + { + "name": "exclude_utxos", + "type": "str", + "default": null, + "description": "A comma-separated list of UTXO txids to exclude when selecting UTXOs to use as inputs for the transaction being created", + "required": false + }, + { + "name": "inputs_set", + "type": "str", + "default": null, + "description": "A comma-separated list of UTXOs (`:`) to use as inputs for the transaction being created", + "required": false + }, { "name": "return_psbt", "type": "bool", "default": false, - "description": "Construct a PSBT instead of a raw transaction hex", + "description": "(API v2 only) Construct a PSBT instead of a raw transaction hex", "required": false }, { - "name": "exclude_utxos", - "type": "str", - "default": "", - "description": "A comma-separated list of UTXO txids to exclude when selecting UTXOs to use as inputs for the transaction being created", + "name": "return_only_data", + "type": "bool", + "default": false, + "description": "(API v2 only) Return only the data part of the transaction", "required": false }, { - "name": "return_only_data", + "name": "extended_tx_info", + "type": "bool", + "default": false, + "description": "(API v1 only) When this is not specified or false, the create_ calls return only a hex-encoded string. If this is true, the create_ calls return a data object with the following keys: tx_hex, btc_in, btc_out, btc_change, and btc_fee", + "required": false + }, + { + "name": "old_style_api", "type": "bool", "default": false, - "description": "Return only the data part of the transaction", + "description": "(API v1 only) Returns a single hex-encoded string instead of an array", "required": false }, { @@ -10614,10 +10710,10 @@ "required": false }, { - "name": "pubkey", + "name": "pubkeys", "type": "str", "default": null, - "description": "The hexadecimal public key of the source address (or a list of the keys, if multi-sig). Required when using encoding parameter values of multisig or pubkeyhash.", + "description": "The hexadecimal public key of the source address (or a comma separated list of keys, if multi-sig). Required when using encoding parameter values of multisig or pubkeyhash.", "required": false }, { @@ -10628,7 +10724,7 @@ "required": false }, { - "name": "fee", + "name": "exact_fee", "type": "int", "default": null, "description": "If you'd like to specify a custom miners' fee, specify it here (in satoshis). Leave as default for the server to automatically choose", @@ -10645,7 +10741,7 @@ "name": "unspent_tx_hash", "type": "str", "default": null, - "description": "When compiling the UTXOs to use as inputs for the transaction being created, only consider unspent outputs from this specific transaction hash. Defaults to null to consider all UTXOs for the address. Do not use this parameter if you are specifying custom_inputs", + "description": "When compiling the UTXOs to use as inputs for the transaction being created, only consider unspent outputs from this specific transaction hash. Defaults to null to consider all UTXOs for the address. Do not use this parameter if you are specifying inputs_set", "required": false }, { @@ -10662,13 +10758,6 @@ "description": "By default, UTXOs utilized when creating a transaction are 'locked' for a few seconds, to prevent a case where rapidly generating create_ calls reuse UTXOs due to their spent status not being updated in bitcoind yet. Specify true for this parameter to disable this behavior, and not temporarily lock UTXOs", "required": false }, - { - "name": "extended_tx_info", - "type": "bool", - "default": false, - "description": "When this is not specified or false, the create_ calls return only a hex-encoded string. If this is true, the create_ calls return a data object with the following keys: tx_hex, btc_in, btc_out, btc_change, and btc_fee", - "required": false - }, { "name": "p2sh_pretx_txid", "type": "str", @@ -10690,25 +10779,46 @@ "description": "The number of blocks to target for confirmation", "required": false }, + { + "name": "exclude_utxos", + "type": "str", + "default": null, + "description": "A comma-separated list of UTXO txids to exclude when selecting UTXOs to use as inputs for the transaction being created", + "required": false + }, + { + "name": "inputs_set", + "type": "str", + "default": null, + "description": "A comma-separated list of UTXOs (`:`) to use as inputs for the transaction being created", + "required": false + }, { "name": "return_psbt", "type": "bool", "default": false, - "description": "Construct a PSBT instead of a raw transaction hex", + "description": "(API v2 only) Construct a PSBT instead of a raw transaction hex", "required": false }, { - "name": "exclude_utxos", - "type": "str", - "default": "", - "description": "A comma-separated list of UTXO txids to exclude when selecting UTXOs to use as inputs for the transaction being created", + "name": "return_only_data", + "type": "bool", + "default": false, + "description": "(API v2 only) Return only the data part of the transaction", "required": false }, { - "name": "return_only_data", + "name": "extended_tx_info", + "type": "bool", + "default": false, + "description": "(API v1 only) When this is not specified or false, the create_ calls return only a hex-encoded string. If this is true, the create_ calls return a data object with the following keys: tx_hex, btc_in, btc_out, btc_change, and btc_fee", + "required": false + }, + { + "name": "old_style_api", "type": "bool", "default": false, - "description": "Return only the data part of the transaction", + "description": "(API v1 only) Returns a single hex-encoded string instead of an array", "required": false }, { @@ -10784,10 +10894,10 @@ "required": false }, { - "name": "pubkey", + "name": "pubkeys", "type": "str", "default": null, - "description": "The hexadecimal public key of the source address (or a list of the keys, if multi-sig). Required when using encoding parameter values of multisig or pubkeyhash.", + "description": "The hexadecimal public key of the source address (or a comma separated list of keys, if multi-sig). Required when using encoding parameter values of multisig or pubkeyhash.", "required": false }, { @@ -10798,7 +10908,7 @@ "required": false }, { - "name": "fee", + "name": "exact_fee", "type": "int", "default": null, "description": "If you'd like to specify a custom miners' fee, specify it here (in satoshis). Leave as default for the server to automatically choose", @@ -10815,7 +10925,7 @@ "name": "unspent_tx_hash", "type": "str", "default": null, - "description": "When compiling the UTXOs to use as inputs for the transaction being created, only consider unspent outputs from this specific transaction hash. Defaults to null to consider all UTXOs for the address. Do not use this parameter if you are specifying custom_inputs", + "description": "When compiling the UTXOs to use as inputs for the transaction being created, only consider unspent outputs from this specific transaction hash. Defaults to null to consider all UTXOs for the address. Do not use this parameter if you are specifying inputs_set", "required": false }, { @@ -10832,13 +10942,6 @@ "description": "By default, UTXOs utilized when creating a transaction are 'locked' for a few seconds, to prevent a case where rapidly generating create_ calls reuse UTXOs due to their spent status not being updated in bitcoind yet. Specify true for this parameter to disable this behavior, and not temporarily lock UTXOs", "required": false }, - { - "name": "extended_tx_info", - "type": "bool", - "default": false, - "description": "When this is not specified or false, the create_ calls return only a hex-encoded string. If this is true, the create_ calls return a data object with the following keys: tx_hex, btc_in, btc_out, btc_change, and btc_fee", - "required": false - }, { "name": "p2sh_pretx_txid", "type": "str", @@ -10860,25 +10963,46 @@ "description": "The number of blocks to target for confirmation", "required": false }, + { + "name": "exclude_utxos", + "type": "str", + "default": null, + "description": "A comma-separated list of UTXO txids to exclude when selecting UTXOs to use as inputs for the transaction being created", + "required": false + }, + { + "name": "inputs_set", + "type": "str", + "default": null, + "description": "A comma-separated list of UTXOs (`:`) to use as inputs for the transaction being created", + "required": false + }, { "name": "return_psbt", "type": "bool", "default": false, - "description": "Construct a PSBT instead of a raw transaction hex", + "description": "(API v2 only) Construct a PSBT instead of a raw transaction hex", "required": false }, { - "name": "exclude_utxos", - "type": "str", - "default": "", - "description": "A comma-separated list of UTXO txids to exclude when selecting UTXOs to use as inputs for the transaction being created", + "name": "return_only_data", + "type": "bool", + "default": false, + "description": "(API v2 only) Return only the data part of the transaction", "required": false }, { - "name": "return_only_data", + "name": "extended_tx_info", + "type": "bool", + "default": false, + "description": "(API v1 only) When this is not specified or false, the create_ calls return only a hex-encoded string. If this is true, the create_ calls return a data object with the following keys: tx_hex, btc_in, btc_out, btc_change, and btc_fee", + "required": false + }, + { + "name": "old_style_api", "type": "bool", "default": false, - "description": "Return only the data part of the transaction", + "description": "(API v1 only) Returns a single hex-encoded string instead of an array", "required": false }, { @@ -10980,10 +11104,10 @@ "required": false }, { - "name": "pubkey", + "name": "pubkeys", "type": "str", "default": null, - "description": "The hexadecimal public key of the source address (or a list of the keys, if multi-sig). Required when using encoding parameter values of multisig or pubkeyhash.", + "description": "The hexadecimal public key of the source address (or a comma separated list of keys, if multi-sig). Required when using encoding parameter values of multisig or pubkeyhash.", "required": false }, { @@ -10994,7 +11118,7 @@ "required": false }, { - "name": "fee", + "name": "exact_fee", "type": "int", "default": null, "description": "If you'd like to specify a custom miners' fee, specify it here (in satoshis). Leave as default for the server to automatically choose", @@ -11011,7 +11135,7 @@ "name": "unspent_tx_hash", "type": "str", "default": null, - "description": "When compiling the UTXOs to use as inputs for the transaction being created, only consider unspent outputs from this specific transaction hash. Defaults to null to consider all UTXOs for the address. Do not use this parameter if you are specifying custom_inputs", + "description": "When compiling the UTXOs to use as inputs for the transaction being created, only consider unspent outputs from this specific transaction hash. Defaults to null to consider all UTXOs for the address. Do not use this parameter if you are specifying inputs_set", "required": false }, { @@ -11028,13 +11152,6 @@ "description": "By default, UTXOs utilized when creating a transaction are 'locked' for a few seconds, to prevent a case where rapidly generating create_ calls reuse UTXOs due to their spent status not being updated in bitcoind yet. Specify true for this parameter to disable this behavior, and not temporarily lock UTXOs", "required": false }, - { - "name": "extended_tx_info", - "type": "bool", - "default": false, - "description": "When this is not specified or false, the create_ calls return only a hex-encoded string. If this is true, the create_ calls return a data object with the following keys: tx_hex, btc_in, btc_out, btc_change, and btc_fee", - "required": false - }, { "name": "p2sh_pretx_txid", "type": "str", @@ -11057,40 +11174,61 @@ "required": false }, { - "name": "return_psbt", - "type": "bool", - "default": false, - "description": "Construct a PSBT instead of a raw transaction hex", + "name": "exclude_utxos", + "type": "str", + "default": null, + "description": "A comma-separated list of UTXO txids to exclude when selecting UTXOs to use as inputs for the transaction being created", "required": false }, { - "name": "exclude_utxos", + "name": "inputs_set", "type": "str", - "default": "", - "description": "A comma-separated list of UTXO txids to exclude when selecting UTXOs to use as inputs for the transaction being created", + "default": null, + "description": "A comma-separated list of UTXOs (`:`) to use as inputs for the transaction being created", "required": false }, { - "name": "return_only_data", + "name": "return_psbt", "type": "bool", "default": false, - "description": "Return only the data part of the transaction", + "description": "(API v2 only) Construct a PSBT instead of a raw transaction hex", "required": false }, { - "name": "verbose", + "name": "return_only_data", "type": "bool", - "default": "false", - "description": "Include asset and dispenser info and normalized quantities in the response.", + "default": false, + "description": "(API v2 only) Return only the data part of the transaction", "required": false }, { - "name": "show_unconfirmed", + "name": "extended_tx_info", "type": "bool", - "default": "false", - "description": "Include results from Mempool.", + "default": false, + "description": "(API v1 only) When this is not specified or false, the create_ calls return only a hex-encoded string. If this is true, the create_ calls return a data object with the following keys: tx_hex, btc_in, btc_out, btc_change, and btc_fee", "required": false - } + }, + { + "name": "old_style_api", + "type": "bool", + "default": false, + "description": "(API v1 only) Returns a single hex-encoded string instead of an array", + "required": false + }, + { + "name": "verbose", + "type": "bool", + "default": "false", + "description": "Include asset and dispenser info and normalized quantities in the response.", + "required": false + }, + { + "name": "show_unconfirmed", + "type": "bool", + "default": "false", + "description": "Include results from Mempool.", + "required": false + } ] }, "/v2/addresses/
/compose/dividend": { @@ -11150,10 +11288,10 @@ "required": false }, { - "name": "pubkey", + "name": "pubkeys", "type": "str", "default": null, - "description": "The hexadecimal public key of the source address (or a list of the keys, if multi-sig). Required when using encoding parameter values of multisig or pubkeyhash.", + "description": "The hexadecimal public key of the source address (or a comma separated list of keys, if multi-sig). Required when using encoding parameter values of multisig or pubkeyhash.", "required": false }, { @@ -11164,7 +11302,7 @@ "required": false }, { - "name": "fee", + "name": "exact_fee", "type": "int", "default": null, "description": "If you'd like to specify a custom miners' fee, specify it here (in satoshis). Leave as default for the server to automatically choose", @@ -11181,7 +11319,7 @@ "name": "unspent_tx_hash", "type": "str", "default": null, - "description": "When compiling the UTXOs to use as inputs for the transaction being created, only consider unspent outputs from this specific transaction hash. Defaults to null to consider all UTXOs for the address. Do not use this parameter if you are specifying custom_inputs", + "description": "When compiling the UTXOs to use as inputs for the transaction being created, only consider unspent outputs from this specific transaction hash. Defaults to null to consider all UTXOs for the address. Do not use this parameter if you are specifying inputs_set", "required": false }, { @@ -11198,13 +11336,6 @@ "description": "By default, UTXOs utilized when creating a transaction are 'locked' for a few seconds, to prevent a case where rapidly generating create_ calls reuse UTXOs due to their spent status not being updated in bitcoind yet. Specify true for this parameter to disable this behavior, and not temporarily lock UTXOs", "required": false }, - { - "name": "extended_tx_info", - "type": "bool", - "default": false, - "description": "When this is not specified or false, the create_ calls return only a hex-encoded string. If this is true, the create_ calls return a data object with the following keys: tx_hex, btc_in, btc_out, btc_change, and btc_fee", - "required": false - }, { "name": "p2sh_pretx_txid", "type": "str", @@ -11226,25 +11357,46 @@ "description": "The number of blocks to target for confirmation", "required": false }, + { + "name": "exclude_utxos", + "type": "str", + "default": null, + "description": "A comma-separated list of UTXO txids to exclude when selecting UTXOs to use as inputs for the transaction being created", + "required": false + }, + { + "name": "inputs_set", + "type": "str", + "default": null, + "description": "A comma-separated list of UTXOs (`:`) to use as inputs for the transaction being created", + "required": false + }, { "name": "return_psbt", "type": "bool", "default": false, - "description": "Construct a PSBT instead of a raw transaction hex", + "description": "(API v2 only) Construct a PSBT instead of a raw transaction hex", "required": false }, { - "name": "exclude_utxos", - "type": "str", - "default": "", - "description": "A comma-separated list of UTXO txids to exclude when selecting UTXOs to use as inputs for the transaction being created", + "name": "return_only_data", + "type": "bool", + "default": false, + "description": "(API v2 only) Return only the data part of the transaction", "required": false }, { - "name": "return_only_data", + "name": "extended_tx_info", "type": "bool", "default": false, - "description": "Return only the data part of the transaction", + "description": "(API v1 only) When this is not specified or false, the create_ calls return only a hex-encoded string. If this is true, the create_ calls return a data object with the following keys: tx_hex, btc_in, btc_out, btc_change, and btc_fee", + "required": false + }, + { + "name": "old_style_api", + "type": "bool", + "default": false, + "description": "(API v1 only) Returns a single hex-encoded string instead of an array", "required": false }, { @@ -11349,10 +11501,10 @@ "required": false }, { - "name": "pubkey", + "name": "pubkeys", "type": "str", "default": null, - "description": "The hexadecimal public key of the source address (or a list of the keys, if multi-sig). Required when using encoding parameter values of multisig or pubkeyhash.", + "description": "The hexadecimal public key of the source address (or a comma separated list of keys, if multi-sig). Required when using encoding parameter values of multisig or pubkeyhash.", "required": false }, { @@ -11363,7 +11515,7 @@ "required": false }, { - "name": "fee", + "name": "exact_fee", "type": "int", "default": null, "description": "If you'd like to specify a custom miners' fee, specify it here (in satoshis). Leave as default for the server to automatically choose", @@ -11380,7 +11532,7 @@ "name": "unspent_tx_hash", "type": "str", "default": null, - "description": "When compiling the UTXOs to use as inputs for the transaction being created, only consider unspent outputs from this specific transaction hash. Defaults to null to consider all UTXOs for the address. Do not use this parameter if you are specifying custom_inputs", + "description": "When compiling the UTXOs to use as inputs for the transaction being created, only consider unspent outputs from this specific transaction hash. Defaults to null to consider all UTXOs for the address. Do not use this parameter if you are specifying inputs_set", "required": false }, { @@ -11397,13 +11549,6 @@ "description": "By default, UTXOs utilized when creating a transaction are 'locked' for a few seconds, to prevent a case where rapidly generating create_ calls reuse UTXOs due to their spent status not being updated in bitcoind yet. Specify true for this parameter to disable this behavior, and not temporarily lock UTXOs", "required": false }, - { - "name": "extended_tx_info", - "type": "bool", - "default": false, - "description": "When this is not specified or false, the create_ calls return only a hex-encoded string. If this is true, the create_ calls return a data object with the following keys: tx_hex, btc_in, btc_out, btc_change, and btc_fee", - "required": false - }, { "name": "p2sh_pretx_txid", "type": "str", @@ -11425,25 +11570,46 @@ "description": "The number of blocks to target for confirmation", "required": false }, + { + "name": "exclude_utxos", + "type": "str", + "default": null, + "description": "A comma-separated list of UTXO txids to exclude when selecting UTXOs to use as inputs for the transaction being created", + "required": false + }, + { + "name": "inputs_set", + "type": "str", + "default": null, + "description": "A comma-separated list of UTXOs (`:`) to use as inputs for the transaction being created", + "required": false + }, { "name": "return_psbt", "type": "bool", "default": false, - "description": "Construct a PSBT instead of a raw transaction hex", + "description": "(API v2 only) Construct a PSBT instead of a raw transaction hex", "required": false }, { - "name": "exclude_utxos", - "type": "str", - "default": "", - "description": "A comma-separated list of UTXO txids to exclude when selecting UTXOs to use as inputs for the transaction being created", + "name": "return_only_data", + "type": "bool", + "default": false, + "description": "(API v2 only) Return only the data part of the transaction", "required": false }, { - "name": "return_only_data", + "name": "extended_tx_info", + "type": "bool", + "default": false, + "description": "(API v1 only) When this is not specified or false, the create_ calls return only a hex-encoded string. If this is true, the create_ calls return a data object with the following keys: tx_hex, btc_in, btc_out, btc_change, and btc_fee", + "required": false + }, + { + "name": "old_style_api", "type": "bool", "default": false, - "description": "Return only the data part of the transaction", + "description": "(API v1 only) Returns a single hex-encoded string instead of an array", "required": false }, { @@ -11533,10 +11699,10 @@ "required": false }, { - "name": "pubkey", + "name": "pubkeys", "type": "str", "default": null, - "description": "The hexadecimal public key of the source address (or a list of the keys, if multi-sig). Required when using encoding parameter values of multisig or pubkeyhash.", + "description": "The hexadecimal public key of the source address (or a comma separated list of keys, if multi-sig). Required when using encoding parameter values of multisig or pubkeyhash.", "required": false }, { @@ -11547,7 +11713,7 @@ "required": false }, { - "name": "fee", + "name": "exact_fee", "type": "int", "default": null, "description": "If you'd like to specify a custom miners' fee, specify it here (in satoshis). Leave as default for the server to automatically choose", @@ -11564,7 +11730,7 @@ "name": "unspent_tx_hash", "type": "str", "default": null, - "description": "When compiling the UTXOs to use as inputs for the transaction being created, only consider unspent outputs from this specific transaction hash. Defaults to null to consider all UTXOs for the address. Do not use this parameter if you are specifying custom_inputs", + "description": "When compiling the UTXOs to use as inputs for the transaction being created, only consider unspent outputs from this specific transaction hash. Defaults to null to consider all UTXOs for the address. Do not use this parameter if you are specifying inputs_set", "required": false }, { @@ -11581,13 +11747,6 @@ "description": "By default, UTXOs utilized when creating a transaction are 'locked' for a few seconds, to prevent a case where rapidly generating create_ calls reuse UTXOs due to their spent status not being updated in bitcoind yet. Specify true for this parameter to disable this behavior, and not temporarily lock UTXOs", "required": false }, - { - "name": "extended_tx_info", - "type": "bool", - "default": false, - "description": "When this is not specified or false, the create_ calls return only a hex-encoded string. If this is true, the create_ calls return a data object with the following keys: tx_hex, btc_in, btc_out, btc_change, and btc_fee", - "required": false - }, { "name": "p2sh_pretx_txid", "type": "str", @@ -11609,25 +11768,46 @@ "description": "The number of blocks to target for confirmation", "required": false }, + { + "name": "exclude_utxos", + "type": "str", + "default": null, + "description": "A comma-separated list of UTXO txids to exclude when selecting UTXOs to use as inputs for the transaction being created", + "required": false + }, + { + "name": "inputs_set", + "type": "str", + "default": null, + "description": "A comma-separated list of UTXOs (`:`) to use as inputs for the transaction being created", + "required": false + }, { "name": "return_psbt", "type": "bool", "default": false, - "description": "Construct a PSBT instead of a raw transaction hex", + "description": "(API v2 only) Construct a PSBT instead of a raw transaction hex", "required": false }, { - "name": "exclude_utxos", - "type": "str", - "default": "", - "description": "A comma-separated list of UTXO txids to exclude when selecting UTXOs to use as inputs for the transaction being created", + "name": "return_only_data", + "type": "bool", + "default": false, + "description": "(API v2 only) Return only the data part of the transaction", "required": false }, { - "name": "return_only_data", + "name": "extended_tx_info", + "type": "bool", + "default": false, + "description": "(API v1 only) When this is not specified or false, the create_ calls return only a hex-encoded string. If this is true, the create_ calls return a data object with the following keys: tx_hex, btc_in, btc_out, btc_change, and btc_fee", + "required": false + }, + { + "name": "old_style_api", "type": "bool", "default": false, - "description": "Return only the data part of the transaction", + "description": "(API v1 only) Returns a single hex-encoded string instead of an array", "required": false }, { @@ -11721,10 +11901,10 @@ "required": false }, { - "name": "pubkey", + "name": "pubkeys", "type": "str", "default": null, - "description": "The hexadecimal public key of the source address (or a list of the keys, if multi-sig). Required when using encoding parameter values of multisig or pubkeyhash.", + "description": "The hexadecimal public key of the source address (or a comma separated list of keys, if multi-sig). Required when using encoding parameter values of multisig or pubkeyhash.", "required": false }, { @@ -11735,7 +11915,7 @@ "required": false }, { - "name": "fee", + "name": "exact_fee", "type": "int", "default": null, "description": "If you'd like to specify a custom miners' fee, specify it here (in satoshis). Leave as default for the server to automatically choose", @@ -11752,7 +11932,7 @@ "name": "unspent_tx_hash", "type": "str", "default": null, - "description": "When compiling the UTXOs to use as inputs for the transaction being created, only consider unspent outputs from this specific transaction hash. Defaults to null to consider all UTXOs for the address. Do not use this parameter if you are specifying custom_inputs", + "description": "When compiling the UTXOs to use as inputs for the transaction being created, only consider unspent outputs from this specific transaction hash. Defaults to null to consider all UTXOs for the address. Do not use this parameter if you are specifying inputs_set", "required": false }, { @@ -11769,13 +11949,6 @@ "description": "By default, UTXOs utilized when creating a transaction are 'locked' for a few seconds, to prevent a case where rapidly generating create_ calls reuse UTXOs due to their spent status not being updated in bitcoind yet. Specify true for this parameter to disable this behavior, and not temporarily lock UTXOs", "required": false }, - { - "name": "extended_tx_info", - "type": "bool", - "default": false, - "description": "When this is not specified or false, the create_ calls return only a hex-encoded string. If this is true, the create_ calls return a data object with the following keys: tx_hex, btc_in, btc_out, btc_change, and btc_fee", - "required": false - }, { "name": "p2sh_pretx_txid", "type": "str", @@ -11797,25 +11970,46 @@ "description": "The number of blocks to target for confirmation", "required": false }, + { + "name": "exclude_utxos", + "type": "str", + "default": null, + "description": "A comma-separated list of UTXO txids to exclude when selecting UTXOs to use as inputs for the transaction being created", + "required": false + }, + { + "name": "inputs_set", + "type": "str", + "default": null, + "description": "A comma-separated list of UTXOs (`:`) to use as inputs for the transaction being created", + "required": false + }, { "name": "return_psbt", "type": "bool", "default": false, - "description": "Construct a PSBT instead of a raw transaction hex", + "description": "(API v2 only) Construct a PSBT instead of a raw transaction hex", "required": false }, { - "name": "exclude_utxos", - "type": "str", - "default": "", - "description": "A comma-separated list of UTXO txids to exclude when selecting UTXOs to use as inputs for the transaction being created", + "name": "return_only_data", + "type": "bool", + "default": false, + "description": "(API v2 only) Return only the data part of the transaction", "required": false }, { - "name": "return_only_data", + "name": "extended_tx_info", + "type": "bool", + "default": false, + "description": "(API v1 only) When this is not specified or false, the create_ calls return only a hex-encoded string. If this is true, the create_ calls return a data object with the following keys: tx_hex, btc_in, btc_out, btc_change, and btc_fee", + "required": false + }, + { + "name": "old_style_api", "type": "bool", "default": false, - "description": "Return only the data part of the transaction", + "description": "(API v1 only) Returns a single hex-encoded string instead of an array", "required": false }, { @@ -11912,10 +12106,10 @@ "required": false }, { - "name": "pubkey", + "name": "pubkeys", "type": "str", "default": null, - "description": "The hexadecimal public key of the source address (or a list of the keys, if multi-sig). Required when using encoding parameter values of multisig or pubkeyhash.", + "description": "The hexadecimal public key of the source address (or a comma separated list of keys, if multi-sig). Required when using encoding parameter values of multisig or pubkeyhash.", "required": false }, { @@ -11926,7 +12120,7 @@ "required": false }, { - "name": "fee", + "name": "exact_fee", "type": "int", "default": null, "description": "If you'd like to specify a custom miners' fee, specify it here (in satoshis). Leave as default for the server to automatically choose", @@ -11943,7 +12137,7 @@ "name": "unspent_tx_hash", "type": "str", "default": null, - "description": "When compiling the UTXOs to use as inputs for the transaction being created, only consider unspent outputs from this specific transaction hash. Defaults to null to consider all UTXOs for the address. Do not use this parameter if you are specifying custom_inputs", + "description": "When compiling the UTXOs to use as inputs for the transaction being created, only consider unspent outputs from this specific transaction hash. Defaults to null to consider all UTXOs for the address. Do not use this parameter if you are specifying inputs_set", "required": false }, { @@ -11960,13 +12154,6 @@ "description": "By default, UTXOs utilized when creating a transaction are 'locked' for a few seconds, to prevent a case where rapidly generating create_ calls reuse UTXOs due to their spent status not being updated in bitcoind yet. Specify true for this parameter to disable this behavior, and not temporarily lock UTXOs", "required": false }, - { - "name": "extended_tx_info", - "type": "bool", - "default": false, - "description": "When this is not specified or false, the create_ calls return only a hex-encoded string. If this is true, the create_ calls return a data object with the following keys: tx_hex, btc_in, btc_out, btc_change, and btc_fee", - "required": false - }, { "name": "p2sh_pretx_txid", "type": "str", @@ -11988,25 +12175,46 @@ "description": "The number of blocks to target for confirmation", "required": false }, + { + "name": "exclude_utxos", + "type": "str", + "default": null, + "description": "A comma-separated list of UTXO txids to exclude when selecting UTXOs to use as inputs for the transaction being created", + "required": false + }, + { + "name": "inputs_set", + "type": "str", + "default": null, + "description": "A comma-separated list of UTXOs (`:`) to use as inputs for the transaction being created", + "required": false + }, { "name": "return_psbt", "type": "bool", "default": false, - "description": "Construct a PSBT instead of a raw transaction hex", + "description": "(API v2 only) Construct a PSBT instead of a raw transaction hex", "required": false }, { - "name": "exclude_utxos", - "type": "str", - "default": "", - "description": "A comma-separated list of UTXO txids to exclude when selecting UTXOs to use as inputs for the transaction being created", + "name": "return_only_data", + "type": "bool", + "default": false, + "description": "(API v2 only) Return only the data part of the transaction", "required": false }, { - "name": "return_only_data", + "name": "extended_tx_info", "type": "bool", "default": false, - "description": "Return only the data part of the transaction", + "description": "(API v1 only) When this is not specified or false, the create_ calls return only a hex-encoded string. If this is true, the create_ calls return a data object with the following keys: tx_hex, btc_in, btc_out, btc_change, and btc_fee", + "required": false + }, + { + "name": "old_style_api", + "type": "bool", + "default": false, + "description": "(API v1 only) Returns a single hex-encoded string instead of an array", "required": false }, { @@ -12082,10 +12290,10 @@ "required": false }, { - "name": "pubkey", + "name": "pubkeys", "type": "str", "default": null, - "description": "The hexadecimal public key of the source address (or a list of the keys, if multi-sig). Required when using encoding parameter values of multisig or pubkeyhash.", + "description": "The hexadecimal public key of the source address (or a comma separated list of keys, if multi-sig). Required when using encoding parameter values of multisig or pubkeyhash.", "required": false }, { @@ -12096,7 +12304,7 @@ "required": false }, { - "name": "fee", + "name": "exact_fee", "type": "int", "default": null, "description": "If you'd like to specify a custom miners' fee, specify it here (in satoshis). Leave as default for the server to automatically choose", @@ -12113,7 +12321,7 @@ "name": "unspent_tx_hash", "type": "str", "default": null, - "description": "When compiling the UTXOs to use as inputs for the transaction being created, only consider unspent outputs from this specific transaction hash. Defaults to null to consider all UTXOs for the address. Do not use this parameter if you are specifying custom_inputs", + "description": "When compiling the UTXOs to use as inputs for the transaction being created, only consider unspent outputs from this specific transaction hash. Defaults to null to consider all UTXOs for the address. Do not use this parameter if you are specifying inputs_set", "required": false }, { @@ -12130,13 +12338,6 @@ "description": "By default, UTXOs utilized when creating a transaction are 'locked' for a few seconds, to prevent a case where rapidly generating create_ calls reuse UTXOs due to their spent status not being updated in bitcoind yet. Specify true for this parameter to disable this behavior, and not temporarily lock UTXOs", "required": false }, - { - "name": "extended_tx_info", - "type": "bool", - "default": false, - "description": "When this is not specified or false, the create_ calls return only a hex-encoded string. If this is true, the create_ calls return a data object with the following keys: tx_hex, btc_in, btc_out, btc_change, and btc_fee", - "required": false - }, { "name": "p2sh_pretx_txid", "type": "str", @@ -12158,25 +12359,46 @@ "description": "The number of blocks to target for confirmation", "required": false }, + { + "name": "exclude_utxos", + "type": "str", + "default": null, + "description": "A comma-separated list of UTXO txids to exclude when selecting UTXOs to use as inputs for the transaction being created", + "required": false + }, + { + "name": "inputs_set", + "type": "str", + "default": null, + "description": "A comma-separated list of UTXOs (`:`) to use as inputs for the transaction being created", + "required": false + }, { "name": "return_psbt", "type": "bool", "default": false, - "description": "Construct a PSBT instead of a raw transaction hex", + "description": "(API v2 only) Construct a PSBT instead of a raw transaction hex", "required": false }, { - "name": "exclude_utxos", - "type": "str", - "default": "", - "description": "A comma-separated list of UTXO txids to exclude when selecting UTXOs to use as inputs for the transaction being created", + "name": "return_only_data", + "type": "bool", + "default": false, + "description": "(API v2 only) Return only the data part of the transaction", "required": false }, { - "name": "return_only_data", + "name": "extended_tx_info", + "type": "bool", + "default": false, + "description": "(API v1 only) When this is not specified or false, the create_ calls return only a hex-encoded string. If this is true, the create_ calls return a data object with the following keys: tx_hex, btc_in, btc_out, btc_change, and btc_fee", + "required": false + }, + { + "name": "old_style_api", "type": "bool", "default": false, - "description": "Return only the data part of the transaction", + "description": "(API v1 only) Returns a single hex-encoded string instead of an array", "required": false }, { @@ -12246,10 +12468,10 @@ "required": false }, { - "name": "pubkey", + "name": "pubkeys", "type": "str", "default": null, - "description": "The hexadecimal public key of the source address (or a list of the keys, if multi-sig). Required when using encoding parameter values of multisig or pubkeyhash.", + "description": "The hexadecimal public key of the source address (or a comma separated list of keys, if multi-sig). Required when using encoding parameter values of multisig or pubkeyhash.", "required": false }, { @@ -12260,7 +12482,7 @@ "required": false }, { - "name": "fee", + "name": "exact_fee", "type": "int", "default": null, "description": "If you'd like to specify a custom miners' fee, specify it here (in satoshis). Leave as default for the server to automatically choose", @@ -12277,7 +12499,7 @@ "name": "unspent_tx_hash", "type": "str", "default": null, - "description": "When compiling the UTXOs to use as inputs for the transaction being created, only consider unspent outputs from this specific transaction hash. Defaults to null to consider all UTXOs for the address. Do not use this parameter if you are specifying custom_inputs", + "description": "When compiling the UTXOs to use as inputs for the transaction being created, only consider unspent outputs from this specific transaction hash. Defaults to null to consider all UTXOs for the address. Do not use this parameter if you are specifying inputs_set", "required": false }, { @@ -12294,13 +12516,6 @@ "description": "By default, UTXOs utilized when creating a transaction are 'locked' for a few seconds, to prevent a case where rapidly generating create_ calls reuse UTXOs due to their spent status not being updated in bitcoind yet. Specify true for this parameter to disable this behavior, and not temporarily lock UTXOs", "required": false }, - { - "name": "extended_tx_info", - "type": "bool", - "default": false, - "description": "When this is not specified or false, the create_ calls return only a hex-encoded string. If this is true, the create_ calls return a data object with the following keys: tx_hex, btc_in, btc_out, btc_change, and btc_fee", - "required": false - }, { "name": "p2sh_pretx_txid", "type": "str", @@ -12322,25 +12537,46 @@ "description": "The number of blocks to target for confirmation", "required": false }, + { + "name": "exclude_utxos", + "type": "str", + "default": null, + "description": "A comma-separated list of UTXO txids to exclude when selecting UTXOs to use as inputs for the transaction being created", + "required": false + }, + { + "name": "inputs_set", + "type": "str", + "default": null, + "description": "A comma-separated list of UTXOs (`:`) to use as inputs for the transaction being created", + "required": false + }, { "name": "return_psbt", "type": "bool", "default": false, - "description": "Construct a PSBT instead of a raw transaction hex", + "description": "(API v2 only) Construct a PSBT instead of a raw transaction hex", "required": false }, { - "name": "exclude_utxos", - "type": "str", - "default": "", - "description": "A comma-separated list of UTXO txids to exclude when selecting UTXOs to use as inputs for the transaction being created", + "name": "return_only_data", + "type": "bool", + "default": false, + "description": "(API v2 only) Return only the data part of the transaction", "required": false }, { - "name": "return_only_data", + "name": "extended_tx_info", "type": "bool", "default": false, - "description": "Return only the data part of the transaction", + "description": "(API v1 only) When this is not specified or false, the create_ calls return only a hex-encoded string. If this is true, the create_ calls return a data object with the following keys: tx_hex, btc_in, btc_out, btc_change, and btc_fee", + "required": false + }, + { + "name": "old_style_api", + "type": "bool", + "default": false, + "description": "(API v1 only) Returns a single hex-encoded string instead of an array", "required": false }, { @@ -12516,10 +12752,10 @@ "required": false }, { - "name": "pubkey", + "name": "pubkeys", "type": "str", "default": null, - "description": "The hexadecimal public key of the source address (or a list of the keys, if multi-sig). Required when using encoding parameter values of multisig or pubkeyhash.", + "description": "The hexadecimal public key of the source address (or a comma separated list of keys, if multi-sig). Required when using encoding parameter values of multisig or pubkeyhash.", "required": false }, { @@ -12530,7 +12766,7 @@ "required": false }, { - "name": "fee", + "name": "exact_fee", "type": "int", "default": null, "description": "If you'd like to specify a custom miners' fee, specify it here (in satoshis). Leave as default for the server to automatically choose", @@ -12547,7 +12783,7 @@ "name": "unspent_tx_hash", "type": "str", "default": null, - "description": "When compiling the UTXOs to use as inputs for the transaction being created, only consider unspent outputs from this specific transaction hash. Defaults to null to consider all UTXOs for the address. Do not use this parameter if you are specifying custom_inputs", + "description": "When compiling the UTXOs to use as inputs for the transaction being created, only consider unspent outputs from this specific transaction hash. Defaults to null to consider all UTXOs for the address. Do not use this parameter if you are specifying inputs_set", "required": false }, { @@ -12564,13 +12800,6 @@ "description": "By default, UTXOs utilized when creating a transaction are 'locked' for a few seconds, to prevent a case where rapidly generating create_ calls reuse UTXOs due to their spent status not being updated in bitcoind yet. Specify true for this parameter to disable this behavior, and not temporarily lock UTXOs", "required": false }, - { - "name": "extended_tx_info", - "type": "bool", - "default": false, - "description": "When this is not specified or false, the create_ calls return only a hex-encoded string. If this is true, the create_ calls return a data object with the following keys: tx_hex, btc_in, btc_out, btc_change, and btc_fee", - "required": false - }, { "name": "p2sh_pretx_txid", "type": "str", @@ -12592,25 +12821,46 @@ "description": "The number of blocks to target for confirmation", "required": false }, + { + "name": "exclude_utxos", + "type": "str", + "default": null, + "description": "A comma-separated list of UTXO txids to exclude when selecting UTXOs to use as inputs for the transaction being created", + "required": false + }, + { + "name": "inputs_set", + "type": "str", + "default": null, + "description": "A comma-separated list of UTXOs (`:`) to use as inputs for the transaction being created", + "required": false + }, { "name": "return_psbt", "type": "bool", "default": false, - "description": "Construct a PSBT instead of a raw transaction hex", + "description": "(API v2 only) Construct a PSBT instead of a raw transaction hex", "required": false }, { - "name": "exclude_utxos", - "type": "str", - "default": "", - "description": "A comma-separated list of UTXO txids to exclude when selecting UTXOs to use as inputs for the transaction being created", + "name": "return_only_data", + "type": "bool", + "default": false, + "description": "(API v2 only) Return only the data part of the transaction", "required": false }, { - "name": "return_only_data", + "name": "extended_tx_info", "type": "bool", "default": false, - "description": "Return only the data part of the transaction", + "description": "(API v1 only) When this is not specified or false, the create_ calls return only a hex-encoded string. If this is true, the create_ calls return a data object with the following keys: tx_hex, btc_in, btc_out, btc_change, and btc_fee", + "required": false + }, + { + "name": "old_style_api", + "type": "bool", + "default": false, + "description": "(API v1 only) Returns a single hex-encoded string instead of an array", "required": false }, { @@ -12681,10 +12931,10 @@ "required": false }, { - "name": "pubkey", + "name": "pubkeys", "type": "str", "default": null, - "description": "The hexadecimal public key of the source address (or a list of the keys, if multi-sig). Required when using encoding parameter values of multisig or pubkeyhash.", + "description": "The hexadecimal public key of the source address (or a comma separated list of keys, if multi-sig). Required when using encoding parameter values of multisig or pubkeyhash.", "required": false }, { @@ -12695,7 +12945,7 @@ "required": false }, { - "name": "fee", + "name": "exact_fee", "type": "int", "default": null, "description": "If you'd like to specify a custom miners' fee, specify it here (in satoshis). Leave as default for the server to automatically choose", @@ -12712,7 +12962,7 @@ "name": "unspent_tx_hash", "type": "str", "default": null, - "description": "When compiling the UTXOs to use as inputs for the transaction being created, only consider unspent outputs from this specific transaction hash. Defaults to null to consider all UTXOs for the address. Do not use this parameter if you are specifying custom_inputs", + "description": "When compiling the UTXOs to use as inputs for the transaction being created, only consider unspent outputs from this specific transaction hash. Defaults to null to consider all UTXOs for the address. Do not use this parameter if you are specifying inputs_set", "required": false }, { @@ -12729,13 +12979,6 @@ "description": "By default, UTXOs utilized when creating a transaction are 'locked' for a few seconds, to prevent a case where rapidly generating create_ calls reuse UTXOs due to their spent status not being updated in bitcoind yet. Specify true for this parameter to disable this behavior, and not temporarily lock UTXOs", "required": false }, - { - "name": "extended_tx_info", - "type": "bool", - "default": false, - "description": "When this is not specified or false, the create_ calls return only a hex-encoded string. If this is true, the create_ calls return a data object with the following keys: tx_hex, btc_in, btc_out, btc_change, and btc_fee", - "required": false - }, { "name": "p2sh_pretx_txid", "type": "str", @@ -12757,25 +13000,46 @@ "description": "The number of blocks to target for confirmation", "required": false }, + { + "name": "exclude_utxos", + "type": "str", + "default": null, + "description": "A comma-separated list of UTXO txids to exclude when selecting UTXOs to use as inputs for the transaction being created", + "required": false + }, + { + "name": "inputs_set", + "type": "str", + "default": null, + "description": "A comma-separated list of UTXOs (`:`) to use as inputs for the transaction being created", + "required": false + }, { "name": "return_psbt", "type": "bool", "default": false, - "description": "Construct a PSBT instead of a raw transaction hex", + "description": "(API v2 only) Construct a PSBT instead of a raw transaction hex", "required": false }, { - "name": "exclude_utxos", - "type": "str", - "default": "", - "description": "A comma-separated list of UTXO txids to exclude when selecting UTXOs to use as inputs for the transaction being created", + "name": "return_only_data", + "type": "bool", + "default": false, + "description": "(API v2 only) Return only the data part of the transaction", "required": false }, { - "name": "return_only_data", + "name": "extended_tx_info", + "type": "bool", + "default": false, + "description": "(API v1 only) When this is not specified or false, the create_ calls return only a hex-encoded string. If this is true, the create_ calls return a data object with the following keys: tx_hex, btc_in, btc_out, btc_change, and btc_fee", + "required": false + }, + { + "name": "old_style_api", "type": "bool", "default": false, - "description": "Return only the data part of the transaction", + "description": "(API v1 only) Returns a single hex-encoded string instead of an array", "required": false }, { @@ -12852,10 +13116,10 @@ "required": false }, { - "name": "pubkey", + "name": "pubkeys", "type": "str", "default": null, - "description": "The hexadecimal public key of the source address (or a list of the keys, if multi-sig). Required when using encoding parameter values of multisig or pubkeyhash.", + "description": "The hexadecimal public key of the source address (or a comma separated list of keys, if multi-sig). Required when using encoding parameter values of multisig or pubkeyhash.", "required": false }, { @@ -12866,7 +13130,7 @@ "required": false }, { - "name": "fee", + "name": "exact_fee", "type": "int", "default": null, "description": "If you'd like to specify a custom miners' fee, specify it here (in satoshis). Leave as default for the server to automatically choose", @@ -12883,7 +13147,7 @@ "name": "unspent_tx_hash", "type": "str", "default": null, - "description": "When compiling the UTXOs to use as inputs for the transaction being created, only consider unspent outputs from this specific transaction hash. Defaults to null to consider all UTXOs for the address. Do not use this parameter if you are specifying custom_inputs", + "description": "When compiling the UTXOs to use as inputs for the transaction being created, only consider unspent outputs from this specific transaction hash. Defaults to null to consider all UTXOs for the address. Do not use this parameter if you are specifying inputs_set", "required": false }, { @@ -12900,13 +13164,6 @@ "description": "By default, UTXOs utilized when creating a transaction are 'locked' for a few seconds, to prevent a case where rapidly generating create_ calls reuse UTXOs due to their spent status not being updated in bitcoind yet. Specify true for this parameter to disable this behavior, and not temporarily lock UTXOs", "required": false }, - { - "name": "extended_tx_info", - "type": "bool", - "default": false, - "description": "When this is not specified or false, the create_ calls return only a hex-encoded string. If this is true, the create_ calls return a data object with the following keys: tx_hex, btc_in, btc_out, btc_change, and btc_fee", - "required": false - }, { "name": "p2sh_pretx_txid", "type": "str", @@ -12928,25 +13185,46 @@ "description": "The number of blocks to target for confirmation", "required": false }, + { + "name": "exclude_utxos", + "type": "str", + "default": null, + "description": "A comma-separated list of UTXO txids to exclude when selecting UTXOs to use as inputs for the transaction being created", + "required": false + }, + { + "name": "inputs_set", + "type": "str", + "default": null, + "description": "A comma-separated list of UTXOs (`:`) to use as inputs for the transaction being created", + "required": false + }, { "name": "return_psbt", "type": "bool", "default": false, - "description": "Construct a PSBT instead of a raw transaction hex", + "description": "(API v2 only) Construct a PSBT instead of a raw transaction hex", "required": false }, { - "name": "exclude_utxos", - "type": "str", - "default": "", - "description": "A comma-separated list of UTXO txids to exclude when selecting UTXOs to use as inputs for the transaction being created", + "name": "return_only_data", + "type": "bool", + "default": false, + "description": "(API v2 only) Return only the data part of the transaction", "required": false }, { - "name": "return_only_data", + "name": "extended_tx_info", "type": "bool", "default": false, - "description": "Return only the data part of the transaction", + "description": "(API v1 only) When this is not specified or false, the create_ calls return only a hex-encoded string. If this is true, the create_ calls return a data object with the following keys: tx_hex, btc_in, btc_out, btc_change, and btc_fee", + "required": false + }, + { + "name": "old_style_api", + "type": "bool", + "default": false, + "description": "(API v1 only) Returns a single hex-encoded string instead of an array", "required": false }, { @@ -13022,10 +13300,10 @@ "required": false }, { - "name": "pubkey", + "name": "pubkeys", "type": "str", "default": null, - "description": "The hexadecimal public key of the source address (or a list of the keys, if multi-sig). Required when using encoding parameter values of multisig or pubkeyhash.", + "description": "The hexadecimal public key of the source address (or a comma separated list of keys, if multi-sig). Required when using encoding parameter values of multisig or pubkeyhash.", "required": false }, { @@ -13036,7 +13314,7 @@ "required": false }, { - "name": "fee", + "name": "exact_fee", "type": "int", "default": null, "description": "If you'd like to specify a custom miners' fee, specify it here (in satoshis). Leave as default for the server to automatically choose", @@ -13053,7 +13331,7 @@ "name": "unspent_tx_hash", "type": "str", "default": null, - "description": "When compiling the UTXOs to use as inputs for the transaction being created, only consider unspent outputs from this specific transaction hash. Defaults to null to consider all UTXOs for the address. Do not use this parameter if you are specifying custom_inputs", + "description": "When compiling the UTXOs to use as inputs for the transaction being created, only consider unspent outputs from this specific transaction hash. Defaults to null to consider all UTXOs for the address. Do not use this parameter if you are specifying inputs_set", "required": false }, { @@ -13070,13 +13348,6 @@ "description": "By default, UTXOs utilized when creating a transaction are 'locked' for a few seconds, to prevent a case where rapidly generating create_ calls reuse UTXOs due to their spent status not being updated in bitcoind yet. Specify true for this parameter to disable this behavior, and not temporarily lock UTXOs", "required": false }, - { - "name": "extended_tx_info", - "type": "bool", - "default": false, - "description": "When this is not specified or false, the create_ calls return only a hex-encoded string. If this is true, the create_ calls return a data object with the following keys: tx_hex, btc_in, btc_out, btc_change, and btc_fee", - "required": false - }, { "name": "p2sh_pretx_txid", "type": "str", @@ -13098,25 +13369,46 @@ "description": "The number of blocks to target for confirmation", "required": false }, + { + "name": "exclude_utxos", + "type": "str", + "default": null, + "description": "A comma-separated list of UTXO txids to exclude when selecting UTXOs to use as inputs for the transaction being created", + "required": false + }, + { + "name": "inputs_set", + "type": "str", + "default": null, + "description": "A comma-separated list of UTXOs (`:`) to use as inputs for the transaction being created", + "required": false + }, { "name": "return_psbt", "type": "bool", "default": false, - "description": "Construct a PSBT instead of a raw transaction hex", + "description": "(API v2 only) Construct a PSBT instead of a raw transaction hex", "required": false }, { - "name": "exclude_utxos", - "type": "str", - "default": "", - "description": "A comma-separated list of UTXO txids to exclude when selecting UTXOs to use as inputs for the transaction being created", + "name": "return_only_data", + "type": "bool", + "default": false, + "description": "(API v2 only) Return only the data part of the transaction", "required": false }, { - "name": "return_only_data", + "name": "extended_tx_info", "type": "bool", "default": false, - "description": "Return only the data part of the transaction", + "description": "(API v1 only) When this is not specified or false, the create_ calls return only a hex-encoded string. If this is true, the create_ calls return a data object with the following keys: tx_hex, btc_in, btc_out, btc_change, and btc_fee", + "required": false + }, + { + "name": "old_style_api", + "type": "bool", + "default": false, + "description": "(API v1 only) Returns a single hex-encoded string instead of an array", "required": false }, { @@ -13303,20 +13595,20 @@ ] }, "/v2/assets//balances/
": { - "function": "get_balance_by_address_and_asset", + "function": "get_balance_by_asset_and_address", "description": "Returns the balance of an address and asset", "args": [ { - "name": "address", + "name": "asset", "required": true, "type": "str", - "description": "The address to return (e.g. $ADDRESS_1)" + "description": "The asset to return (e.g. XCP)" }, { - "name": "asset", + "name": "address", "required": true, "type": "str", - "description": "The asset to return (e.g. XCP)" + "description": "The address to return (e.g. $ADDRESS_1)" }, { "name": "verbose", @@ -13379,6 +13671,13 @@ "type": "int", "description": "The number of lines to skip before returning results (overrides the `cursor` parameter)" }, + { + "name": "sort", + "default": null, + "required": false, + "type": "str", + "description": "The sort order of the orders to return (overrides the `cursor` parameter) (e.g. expiration:desc)" + }, { "name": "verbose", "type": "bool", @@ -13439,6 +13738,13 @@ "type": "int", "description": "The number of lines to skip before returning results (overrides the `cursor` parameter)" }, + { + "name": "sort", + "default": null, + "required": false, + "type": "str", + "description": "The sort order of the order matches to return (overrides the `cursor` parameter) (e.g. forward_quantity:desc)" + }, { "name": "verbose", "type": "bool", @@ -13798,6 +14104,13 @@ "type": "int", "description": "The number of lines to skip before returning results (overrides the `cursor` parameter)" }, + { + "name": "sort", + "default": null, + "required": false, + "type": "str", + "description": "The sort order of the dispensers to return (overrides the `cursor` parameter) (e.g. give_quantity:desc)" + }, { "name": "verbose", "type": "bool", @@ -14164,6 +14477,13 @@ "type": "int", "description": "The number of lines to skip before returning results (overrides the `cursor` parameter)" }, + { + "name": "sort", + "default": null, + "required": false, + "type": "str", + "description": "The sort order of the orders to return (overrides the `cursor` parameter) (e.g. expiration:desc)" + }, { "name": "verbose", "type": "bool", @@ -14250,6 +14570,13 @@ "type": "int", "description": "The number of lines to skip before returning results (overrides the `cursor` parameter)" }, + { + "name": "sort", + "default": null, + "required": false, + "type": "str", + "description": "The sort order of the order matches to return (overrides the `cursor` parameter) (e.g. forward_quantity:desc)" + }, { "name": "verbose", "type": "bool", @@ -14364,6 +14691,13 @@ "type": "int", "description": "The number of lines to skip before returning results (overrides the `cursor` parameter)" }, + { + "name": "sort", + "default": null, + "required": false, + "type": "str", + "description": "The sort order of the orders to return (overrides the `cursor` parameter) (e.g. expiration:desc)" + }, { "name": "verbose", "type": "bool", @@ -14430,6 +14764,13 @@ "type": "int", "description": "The number of lines to skip before returning results (overrides the `cursor` parameter)" }, + { + "name": "sort", + "default": null, + "required": false, + "type": "str", + "description": "The sort order of the order matches to return (overrides the `cursor` parameter) (e.g. forward_quantity:desc)" + }, { "name": "verbose", "type": "bool", @@ -14484,6 +14825,13 @@ "type": "int", "description": "The number of lines to skip before returning results (overrides the `cursor` parameter)" }, + { + "name": "sort", + "default": null, + "required": false, + "type": "str", + "description": "The sort order of the order matches to return (overrides the `cursor` parameter) (e.g. forward_quantity:desc)" + }, { "name": "verbose", "type": "bool", @@ -14770,6 +15118,13 @@ "type": "int", "description": "The number of lines to skip before returning results (overrides the `cursor` parameter)" }, + { + "name": "sort", + "default": null, + "required": false, + "type": "str", + "description": "The sort order of the dispensers to return (overrides the `cursor` parameter) (e.g. block_index:asc)" + }, { "name": "verbose", "type": "bool", diff --git a/counterparty-core/counterpartycore/test/fixtures/contract_vectors/transaction.py b/counterparty-core/counterpartycore/test/fixtures/contract_vectors/transaction.py new file mode 100644 index 0000000000..81ff4439c0 --- /dev/null +++ b/counterparty-core/counterpartycore/test/fixtures/contract_vectors/transaction.py @@ -0,0 +1,833 @@ +from counterpartycore.lib import config, exceptions, script + +from ..params import ( + ADDR, + DP, + P2SH_ADDR, +) + +TRANSACTION_VECTOR = { + "transaction_helper.transaction_outputs": { + "get_dust_return_pubkey": [ + {"in": (ADDR[1], None), "out": None}, + { + "in": (ADDR[1], []), + "out": b"\x03\x19\xf6\xe0{\x0b\x8duaV9K\x9d\xcf;\x01\x1f\xe9\xac\x19\xf2p\x0b\xd6\xb6\x9aj\x17\x83\xdb\xb8\xb9w", + }, + ], + }, + "transaction": { + "construct": [ + { + "in": ( + ( + "mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns", + [("mvCounterpartyXXXXXXXXXXXXXXW24Hef", 62000000)], + None, + ), + {"encoding": "multisig", "exact_fee": 1.0}, + ), + "error": (exceptions.TransactionError, "Exact fees must be in satoshis."), + }, + { + "in": ( + ( + "mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns", + [("mvCounterpartyXXXXXXXXXXXXXXW24Hef", 62000000)], + None, + ), + {"encoding": "multisig", "fee_provided": 1.0}, + ), + "error": (exceptions.TransactionError, "Fee provided must be in satoshis."), + }, + { + "in": ( + ( + "mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns", + [ + ( + "mvCounterpartyXXXXXXXXXXXXXXW24Hef", + config.DEFAULT_REGULAR_DUST_SIZE - 1, + ) + ], + None, + ), + {"encoding": "singlesig", "regular_dust_size": DP["regular_dust_size"]}, + ), + "error": (exceptions.TransactionError, "Destination output is dust."), + }, + { + "in": ( + ( + "mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns", + [ + ( + "1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2", + config.DEFAULT_MULTISIG_DUST_SIZE - 1, + ) + ], + None, + ), + {"encoding": "multisig"}, + ), + "error": (exceptions.TransactionError, "Destination output is dust."), + }, + { + "in": ( + ( + "mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns", + [("mvCounterpartyXXXXXXXXXXXXXXW24Hef", 62000000)], + b"\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x02\xfa\xf0\x80", + ), + {"encoding": "foobar"}, + ), + "error": (exceptions.TransactionError, "Unknown encoding‐scheme."), + }, + { + "comment": "opreturn encoding with more data that fits in 80 bytes opreturn (73 bytes of data + 8 bytes for PREFIX)", + "in": ( + ( + "mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns", + [("mvCounterpartyXXXXXXXXXXXXXXW24Hef", 62000000)], + b"\x00" * 73, + ), + {"encoding": "opreturn"}, + ), + "error": ( + exceptions.TransactionError, + "One `OP_RETURN` output per transaction.", + ), + }, + { + "in": ( + ( + "mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns", + [("mvCounterpartyXXXXXXXXXXXXXXW24Hef", 2**30)], + b"\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x02\xfa\xf0\x80", + ), + {"encoding": "multisig"}, + ), + "error": ( + exceptions.BalanceError, + "Insufficient BTC at address mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns. Need: 10.73754999 BTC (Including fee: 0.00012175 BTC), available: 1.11121663 BTC. These fees are estimated for a confirmation target of 3 blocks, you can reduce them by using the `confirmation_target` parameter with a higher value or by manually setting the fees with the `fee` parameter. To spend unconfirmed coins, use the flag `--unconfirmed`. (Unconfirmed coins cannot be spent from multi‐sig addresses.)", + ), + }, + { + "comment": "opreturn encoding with maximum possible data that fits in 80 bytes opreturn (72 bytes of data + 8 bytes for PREFIX)", + "in": ( + ( + "mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns", + [("mvCounterpartyXXXXXXXXXXXXXXW24Hef", 62000000)], + b"\x00" * 72, + ), + {"encoding": "opreturn"}, + ), + "out": { + "data": b"TESTXXXX\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00", + "btc_change": 37992125, + "btc_fee": 7875, + "btc_in": 100000000, + "btc_out": 62000000, + "unsigned_pretx_hex": None, + "unsigned_tx_hex": "0100000001ebe3111881a8733ace02271dcf606b7450c41a48c1cb21fd73f4ba787b353ce4000000001976a9148d6ae8a3b381663118b4e1eff4cfc7d0954dd6ec88acffffffff03800bb203000000001976a914a11b66a67b3ff69671c8f82254099faf374b800e88ac0000000000000000536a4c503ab408a679f108a19e35886815c4c468ca75a06799f864a1fad6bc0813f5fe3260e421a30202f2e76f46acdb292c652371ca48b97460f7928ade8ecb02ea9fadc20c0b453de6676872c9e41fad801e8bbdb64302000000001976a9148d6ae8a3b381663118b4e1eff4cfc7d0954dd6ec88ac00000000", + }, + }, + { + "comment": "burn", + "in": ( + ( + "mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns", + [("mvCounterpartyXXXXXXXXXXXXXXW24Hef", 62000000)], + None, + ), + {"encoding": "multisig"}, + ), + "out": { + "data": None, + "btc_change": 37994375, + "btc_fee": 5625, + "btc_in": 100000000, + "btc_out": 62000000, + "unsigned_pretx_hex": None, + "unsigned_tx_hex": "0100000001ebe3111881a8733ace02271dcf606b7450c41a48c1cb21fd73f4ba787b353ce4000000001976a9148d6ae8a3b381663118b4e1eff4cfc7d0954dd6ec88acffffffff02800bb203000000001976a914a11b66a67b3ff69671c8f82254099faf374b800e88ac87bf4302000000001976a9148d6ae8a3b381663118b4e1eff4cfc7d0954dd6ec88ac00000000", + }, + }, + { + "comment": "burn P2SH", + "in": ( + (P2SH_ADDR[0], [("mvCounterpartyXXXXXXXXXXXXXXW24Hef", 62000000)], None), + {"encoding": "multisig", "regular_dust_size": DP["regular_dust_size"]}, + ), + "out": { + "data": None, + "btc_change": 37994375, + "btc_fee": 5625, + "btc_in": 100000000, + "btc_out": 62000000, + "unsigned_pretx_hex": None, + "unsigned_tx_hex": "01000000015001af2c4c3bc2c43b6233261394910d10fb157a082d9b3038c65f2d01e4ff200000000017a9144264cfd7eb65f8cbbdba98bd9815d5461fad8d7e87ffffffff02800bb203000000001976a914a11b66a67b3ff69671c8f82254099faf374b800e88ac87bf43020000000017a9144264cfd7eb65f8cbbdba98bd9815d5461fad8d7e8700000000", + }, + }, + { + "comment": "multisig burn", + "in": ( + ( + "1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2", + [("mvCounterpartyXXXXXXXXXXXXXXW24Hef", 50000000)], + None, + ), + {"encoding": "multisig"}, + ), + "out": { + "data": None, + "btc_change": 49994375, + "btc_fee": 5625, + "btc_in": 100000000, + "btc_out": 50000000, + "unsigned_pretx_hex": None, + "unsigned_tx_hex": "0100000001051511b66ba309e3dbff1fde22aefaff4190675235a010a5c6acb1e43da8005f000000004751210282b886c087eb37dc8182f14ba6cc3e9485ed618b95804d44aecc17c300b585b0210319f6e07b0b8d756156394b9dcf3b011fe9ac19f2700bd6b69a6a1783dbb8b97752aeffffffff0280f0fa02000000001976a914a11b66a67b3ff69671c8f82254099faf374b800e88ac87dafa02000000004751210282b886c087eb37dc8182f14ba6cc3e9485ed618b95804d44aecc17c300b585b0210319f6e07b0b8d756156394b9dcf3b011fe9ac19f2700bd6b69a6a1783dbb8b97752ae00000000", + }, + }, + { + "comment": "send", + "in": ( + ( + "mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc", + [("mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns", None)], + b"\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x02\xfa\xf0\x80", + ), + {"encoding": "multisig", "regular_dust_size": DP["regular_dust_size"]}, + ), + "out": { + "data": b"TESTXXXX\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x02\xfa\xf0\x80", + "btc_change": 199895060, + "btc_fee": 7650, + "btc_in": 199909140, + "btc_out": 6430, + "unsigned_pretx_hex": None, + "unsigned_tx_hex": "0100000001c1d8c075936c3495f6d653c50f73d987f75448d97a750249b1eb83bee71b24ae000000001976a9144838d8b3588c4c7ba7c1d06f866e9b3739c6303788acffffffff0336150000000000001976a9148d6ae8a3b381663118b4e1eff4cfc7d0954dd6ec88ace8030000000000006951210262415bf04af834423d3dd7ada4dc727a030865759f9fba5aee78c9ea71e58798210254da540fb2663b75e6c3cc61190ad0c2431643bab28ced783cd94079bbe72447210282b886c087eb37dc8182f14ba6cc3e9485ed618b95804d44aecc17c300b585b053ae1428ea0b000000001976a9144838d8b3588c4c7ba7c1d06f866e9b3739c6303788ac00000000", + }, + }, + { + "comment": "send with custom input which is too low", + "in": ( + ( + "mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc", + [("mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns", None)], + b"\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x02\xfa\xf0\x80", + ), + { + "encoding": "multisig", + "regular_dust_size": DP["regular_dust_size"], + "inputs_set": [ + { + "address": "mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc", + "txhex": "0100000002eff195acdf2bbd215daa8aca24eb667b563a731d34a9ab75c8d8df5df08be29b000000006c493046022100ec6fa8316a4f5cfd69816e31011022acce0933bd3b01248caa8b49e60de1b98a022100987ba974b2a4f9976a8d61d94009cb7f7986a827dc5730e999de1fb748d2046c01210282b886c087eb37dc8182f14ba6cc3e9485ed618b95804d44aecc17c300b585b0ffffffffeff195acdf2bbd215daa8aca24eb667b563a731d34a9ab75c8d8df5df08be29b010000006a47304402201f8fb2d62df22592cb8d37c68ab26563dbb8e270f7f8409ac0f6d7b24ddb5c940220314e5c767fd12b20116528c028eab2bfbad30eb963bd849993410049cf14a83d01210282b886c087eb37dc8182f14ba6cc3e9485ed618b95804d44aecc17c300b585b0ffffffff02145fea0b000000001976a9144838d8b3588c4c7ba7c1d06f866e9b3739c6303788ac0000000000000000346a32544553540000000a00000000000000010000000005f5e1000000000000000000000000000bebc2000032000000000000271000000000", + "confirmations": 74, + "vout": 0, + "script_pub_key": "76a9144838d8b3588c4c7ba7c1d06f866e9b3739c6303788ac", + "txid": "ae241be7be83ebb14902757ad94854f787d9730fc553d6f695346c9375c0d8c1", + "amount": 0.00001, + "account": "", + } + ], + }, + ), + "error": ( + exceptions.BalanceError, + "Insufficient BTC at address mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc. Need: 0.0001408 BTC (Including fee: 0.0000765 BTC), available: 0.00001 BTC. These fees are estimated for a confirmation target of 3 blocks, you can reduce them by using the `confirmation_target` parameter with a higher value or by manually setting the fees with the `fee` parameter. To spend unconfirmed coins, use the flag `--unconfirmed`. (Unconfirmed coins cannot be spent from multi‐sig addresses.)", + ), + }, + { + "comment": "send with custom input", + "in": ( + ( + "mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc", + [("mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns", None)], + b"\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x02\xfa\xf0\x80", + ), + { + "encoding": "multisig", + "regular_dust_size": DP["regular_dust_size"], + "inputs_set": [ + { + "address": "mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc", + "txhex": "0100000002eff195acdf2bbd215daa8aca24eb667b563a731d34a9ab75c8d8df5df08be29b000000006c493046022100ec6fa8316a4f5cfd69816e31011022acce0933bd3b01248caa8b49e60de1b98a022100987ba974b2a4f9976a8d61d94009cb7f7986a827dc5730e999de1fb748d2046c01210282b886c087eb37dc8182f14ba6cc3e9485ed618b95804d44aecc17c300b585b0ffffffffeff195acdf2bbd215daa8aca24eb667b563a731d34a9ab75c8d8df5df08be29b010000006a47304402201f8fb2d62df22592cb8d37c68ab26563dbb8e270f7f8409ac0f6d7b24ddb5c940220314e5c767fd12b20116528c028eab2bfbad30eb963bd849993410049cf14a83d01210282b886c087eb37dc8182f14ba6cc3e9485ed618b95804d44aecc17c300b585b0ffffffff02145fea0b000000001976a9144838d8b3588c4c7ba7c1d06f866e9b3739c6303788ac0000000000000000346a32544553540000000a00000000000000010000000005f5e1000000000000000000000000000bebc2000032000000000000271000000000", + "confirmations": 74, + "vout": 0, + "script_pub_key": "76a9144838d8b3588c4c7ba7c1d06f866e9b3739c6303788ac", + "txid": "ae241be7be83ebb14902757ad94854f787d9730fc553d6f695346c9375c0d8c1", + "amount": 1.9990914, + "account": "", + } + ], + }, + ), + "out": { + "data": b"TESTXXXX\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x02\xfa\xf0\x80", + "btc_change": 199895060, + "btc_fee": 7650, + "btc_in": 199909140, + "btc_out": 6430, + "unsigned_pretx_hex": None, + "unsigned_tx_hex": "0100000001c1d8c075936c3495f6d653c50f73d987f75448d97a750249b1eb83bee71b24ae000000001976a9144838d8b3588c4c7ba7c1d06f866e9b3739c6303788acffffffff0336150000000000001976a9148d6ae8a3b381663118b4e1eff4cfc7d0954dd6ec88ace8030000000000006951210262415bf04af834423d3dd7ada4dc727a030865759f9fba5aee78c9ea71e58798210254da540fb2663b75e6c3cc61190ad0c2431643bab28ced783cd94079bbe72447210282b886c087eb37dc8182f14ba6cc3e9485ed618b95804d44aecc17c300b585b053ae1428ea0b000000001976a9144838d8b3588c4c7ba7c1d06f866e9b3739c6303788ac00000000", + }, + }, + { + "comment": "send with multisig encoding and bytespersigop enabled for address with multiple UTXOs", + "mock_protocol_changes": {"bytespersigop": True}, + "in": ( + ( + "mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns", + [("mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc", None)], + b"\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x02\xfa\xf0\x80", + ), + {"encoding": "multisig", "regular_dust_size": DP["regular_dust_size"]}, + ), + "out": { + "data": b"TESTXXXX\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x02\xfa\xf0\x80", + "btc_change": 111103058, + "btc_fee": 12175, + "btc_in": 111121663, + "btc_out": 6430, + "unsigned_pretx_hex": None, + "unsigned_tx_hex": "0100000002ebe3111881a8733ace02271dcf606b7450c41a48c1cb21fd73f4ba787b353ce4000000001976a9148d6ae8a3b381663118b4e1eff4cfc7d0954dd6ec88acffffffff85497c27fbc3ecfbfb41f49cbf983e252a91636ec92f2863cb7eb755a33afcb9000000001976a9148d6ae8a3b381663118b4e1eff4cfc7d0954dd6ec88acffffffff0336150000000000001976a9144838d8b3588c4c7ba7c1d06f866e9b3739c6303788ace8030000000000006951210372a51ea175f108a1c635886815c4c468ca75a06798f864a1fad446f893f5fef121023260e421a30202f2e76f46acdb292c652371ca48b97460f7928ade8ecb02ea66210319f6e07b0b8d756156394b9dcf3b011fe9ac19f2700bd6b69a6a1783dbb8b97753ae524c9f06000000001976a9148d6ae8a3b381663118b4e1eff4cfc7d0954dd6ec88ac00000000", + }, + }, + { + "comment": "send, different dust pubkey", + "in": ( + ( + "mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc", + [("mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns", None)], + b"\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x02\xfa\xf0\x80", + ), + { + "encoding": "multisig", + "regular_dust_size": DP["regular_dust_size"], + "dust_return_pubkey": "0319f6e07b0b8d756156394b9dcf3b011fe9ac19f2700bd6b69a6a1783dbb8b977", + }, + ), + "out": { + "data": b"TESTXXXX\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x02\xfa\xf0\x80", + "btc_change": 199895060, + "btc_fee": 7650, + "btc_in": 199909140, + "btc_out": 6430, + "unsigned_pretx_hex": None, + "unsigned_tx_hex": "0100000001c1d8c075936c3495f6d653c50f73d987f75448d97a750249b1eb83bee71b24ae000000001976a9144838d8b3588c4c7ba7c1d06f866e9b3739c6303788acffffffff0336150000000000001976a9148d6ae8a3b381663118b4e1eff4cfc7d0954dd6ec88ace8030000000000006951210262415bf04af834423d3dd7ada4dc727a030865759f9fba5aee78c9ea71e58798210254da540fb2663b75e6c3cc61190ad0c2431643bab28ced783cd94079bbe72447210319f6e07b0b8d756156394b9dcf3b011fe9ac19f2700bd6b69a6a1783dbb8b97753ae1428ea0b000000001976a9144838d8b3588c4c7ba7c1d06f866e9b3739c6303788ac00000000", + }, + }, + { + "comment": "send, burn dust pubkey", + "in": ( + ( + "mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc", + [("mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns", None)], + b"\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x02\xfa\xf0\x80", + ), + { + "encoding": "multisig", + "regular_dust_size": DP["regular_dust_size"], + "dust_return_pubkey": False, + }, + ), + "out": { + "data": b"TESTXXXX\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x02\xfa\xf0\x80", + "btc_change": 199895060, + "btc_fee": 7650, + "btc_in": 199909140, + "btc_out": 6430, + "unsigned_pretx_hex": None, + "unsigned_tx_hex": "0100000001c1d8c075936c3495f6d653c50f73d987f75448d97a750249b1eb83bee71b24ae000000001976a9144838d8b3588c4c7ba7c1d06f866e9b3739c6303788acffffffff0336150000000000001976a9148d6ae8a3b381663118b4e1eff4cfc7d0954dd6ec88ace8030000000000006951210262415bf04af834423d3dd7ada4dc727a030865759f9fba5aee78c9ea71e58798210254da540fb2663b75e6c3cc61190ad0c2431643bab28ced783cd94079bbe724472111111111111111111111111111111111111111111111111111111111111111111153ae1428ea0b000000001976a9144838d8b3588c4c7ba7c1d06f866e9b3739c6303788ac00000000", + }, + }, + { + "comment": "send from P2SH address, multsig encoding, no dust pubkey", + "in": ( + ( + P2SH_ADDR[0], + [("mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns", None)], + b"\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x02\xfa\xf0\x80", + ), + { + "encoding": "multisig", + "dust_return_pubkey": False, + "regular_dust_size": DP["regular_dust_size"], + }, + ), + "out": { + "data": b"TESTXXXX\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x02\xfa\xf0\x80", + "btc_change": 99985920, + "btc_fee": 7650, + "btc_in": 100000000, + "btc_out": 6430, + "unsigned_pretx_hex": None, + "unsigned_tx_hex": "01000000015001af2c4c3bc2c43b6233261394910d10fb157a082d9b3038c65f2d01e4ff200000000017a9144264cfd7eb65f8cbbdba98bd9815d5461fad8d7e87ffffffff0336150000000000001976a9148d6ae8a3b381663118b4e1eff4cfc7d0954dd6ec88ace8030000000000006951210397b51de78b0f3a171f5ed27fff56d17dcba739c8b00035c8bbb9c380fdc4ed1321036932bcbeac2a4d8846b7feb4bf93b2b88efd02f2d8dc1fc0067bcc972257e3912111111111111111111111111111111111111111111111111111111111111111111153ae00aaf5050000000017a9144264cfd7eb65f8cbbdba98bd9815d5461fad8d7e8700000000", + }, + }, + { + "comment": "send to P2SH address", + "in": ( + ( + "mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc", + [(P2SH_ADDR[0], None)], + b"\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x02\xfa\xf0\x80", + ), + {"encoding": "multisig", "regular_dust_size": DP["regular_dust_size"]}, + ), + "out": { + "data": b"TESTXXXX\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x02\xfa\xf0\x80", + "btc_change": 199895060, + "btc_fee": 7650, + "btc_in": 199909140, + "btc_out": 6430, + "unsigned_pretx_hex": None, + "unsigned_tx_hex": "0100000001c1d8c075936c3495f6d653c50f73d987f75448d97a750249b1eb83bee71b24ae000000001976a9144838d8b3588c4c7ba7c1d06f866e9b3739c6303788acffffffff03361500000000000017a9144264cfd7eb65f8cbbdba98bd9815d5461fad8d7e87e8030000000000006951210262415bf04af834423d3dd7ada4dc727a030865759f9fba5aee78c9ea71e58798210254da540fb2663b75e6c3cc61190ad0c2431643bab28ced783cd94079bbe72447210282b886c087eb37dc8182f14ba6cc3e9485ed618b95804d44aecc17c300b585b053ae1428ea0b000000001976a9144838d8b3588c4c7ba7c1d06f866e9b3739c6303788ac00000000", + }, + }, + { + "comment": "send dest multisig", + "in": ( + ( + "mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc", + [ + ( + "1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2", + None, + ) + ], + b"\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x05\xf5\xe1\x00", + ), + {"encoding": "multisig"}, + ), + "out": { + "data": b"TESTXXXX\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x05\xf5\xe1\x00", + "btc_change": 199899490, + "btc_fee": 7650, + "btc_in": 199909140, + "btc_out": 2000, + "unsigned_pretx_hex": None, + "unsigned_tx_hex": "0100000001c1d8c075936c3495f6d653c50f73d987f75448d97a750249b1eb83bee71b24ae000000001976a9144838d8b3588c4c7ba7c1d06f866e9b3739c6303788acffffffff03e8030000000000004751210282b886c087eb37dc8182f14ba6cc3e9485ed618b95804d44aecc17c300b585b0210319f6e07b0b8d756156394b9dcf3b011fe9ac19f2700bd6b69a6a1783dbb8b97752aee8030000000000006951210362415bf04af834423d3dd7ada4dc727a030865759f9fba5aee7fc6fbf1e5875a210254da540fb2663b75e6c3cc61190ad0c2431643bab28ced783cd94079bbe72447210282b886c087eb37dc8182f14ba6cc3e9485ed618b95804d44aecc17c300b585b053ae6239ea0b000000001976a9144838d8b3588c4c7ba7c1d06f866e9b3739c6303788ac00000000", + }, + }, + { + "comment": "send dest multisig exact_fee", + "in": ( + ( + "mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc", + [ + ( + "1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2", + None, + ) + ], + b"\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x05\xf5\xe1\x00", + ), + {"encoding": "multisig", "exact_fee": 1}, + ), + "out": { + "data": b"TESTXXXX\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x05\xf5\xe1\x00", + "btc_change": 199907139, + "btc_fee": 1, + "btc_in": 199909140, + "btc_out": 2000, + "unsigned_pretx_hex": None, + "unsigned_tx_hex": "0100000001c1d8c075936c3495f6d653c50f73d987f75448d97a750249b1eb83bee71b24ae000000001976a9144838d8b3588c4c7ba7c1d06f866e9b3739c6303788acffffffff03e8030000000000004751210282b886c087eb37dc8182f14ba6cc3e9485ed618b95804d44aecc17c300b585b0210319f6e07b0b8d756156394b9dcf3b011fe9ac19f2700bd6b69a6a1783dbb8b97752aee8030000000000006951210362415bf04af834423d3dd7ada4dc727a030865759f9fba5aee7fc6fbf1e5875a210254da540fb2663b75e6c3cc61190ad0c2431643bab28ced783cd94079bbe72447210282b886c087eb37dc8182f14ba6cc3e9485ed618b95804d44aecc17c300b585b053ae4357ea0b000000001976a9144838d8b3588c4c7ba7c1d06f866e9b3739c6303788ac00000000", + }, + }, + { + "comment": "send dest opreturn", + "in": ( + ( + "mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc", + [ + ( + "1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2", + None, + ) + ], + b"\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x05\xf5\xe1\x00", + ), + {"encoding": "opreturn"}, + ), + "out": { + "data": b"TESTXXXX\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x05\xf5\xe1\x00", + "btc_change": 199901565, + "btc_fee": 6575, + "btc_in": 199909140, + "btc_out": 1000, + "unsigned_pretx_hex": None, + "unsigned_tx_hex": "0100000001c1d8c075936c3495f6d653c50f73d987f75448d97a750249b1eb83bee71b24ae000000001976a9144838d8b3588c4c7ba7c1d06f866e9b3739c6303788acffffffff03e8030000000000004751210282b886c087eb37dc8182f14ba6cc3e9485ed618b95804d44aecc17c300b585b0210319f6e07b0b8d756156394b9dcf3b011fe9ac19f2700bd6b69a6a1783dbb8b97752ae00000000000000001e6a1c2a504df746f83442653dd7ada4dc727a030865749e9fba5aeb8fd21a7d41ea0b000000001976a9144838d8b3588c4c7ba7c1d06f866e9b3739c6303788ac00000000", + }, + }, + { + "comment": "send dest pubkeyhash", + "in": ( + ( + "mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc", + [ + ( + "1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2", + None, + ) + ], + b"\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x05\xf5\xe1\x00", + ), + {"encoding": "pubkeyhash", "regular_dust_size": DP["regular_dust_size"]}, + ), + "out": { + "data": b"TESTXXXX\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x05\xf5\xe1\x00", + "btc_change": 199889955, + "btc_fee": 7325, + "btc_in": 199909140, + "btc_out": 11860, + "unsigned_pretx_hex": None, + "unsigned_tx_hex": "0100000001c1d8c075936c3495f6d653c50f73d987f75448d97a750249b1eb83bee71b24ae000000001976a9144838d8b3588c4c7ba7c1d06f866e9b3739c6303788acffffffff04e8030000000000004751210282b886c087eb37dc8182f14ba6cc3e9485ed618b95804d44aecc17c300b585b0210319f6e07b0b8d756156394b9dcf3b011fe9ac19f2700bd6b69a6a1783dbb8b97752ae36150000000000001976a9146d415bf04af834423d3dd7ada4dc727a0308657588ac36150000000000001976a9146f415bf04af834423d3cd7ada4dc778fe208657588ac2314ea0b000000001976a9144838d8b3588c4c7ba7c1d06f866e9b3739c6303788ac00000000", + }, + }, + { + "comment": "send dest 1-of-1", + "in": ( + ( + "mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc", + [("1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_1", None)], + b"\x00\x00\x00\x00\x00\x00\x00\xa2[\xe3Kf\x00\x00\x00\x00\x00\x00\x00\x00", + ), + {"encoding": "multisig"}, + ), + "error": (script.MultiSigAddressError, "Invalid signatures_possible."), + }, + { + "comment": "send source multisig", + "in": ( + ( + "1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2", + [("mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc", None)], + b"\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x05\xf5\xe1\x00", + ), + {"encoding": "multisig", "regular_dust_size": DP["regular_dust_size"]}, + ), + "out": { + "data": b"TESTXXXX\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x05\xf5\xe1\x00", + "btc_change": 99985920, + "btc_fee": 7650, + "btc_in": 100000000, + "btc_out": 6430, + "unsigned_pretx_hex": None, + "unsigned_tx_hex": "0100000001051511b66ba309e3dbff1fde22aefaff4190675235a010a5c6acb1e43da8005f000000004751210282b886c087eb37dc8182f14ba6cc3e9485ed618b95804d44aecc17c300b585b0210319f6e07b0b8d756156394b9dcf3b011fe9ac19f2700bd6b69a6a1783dbb8b97752aeffffffff0336150000000000001976a9144838d8b3588c4c7ba7c1d06f866e9b3739c6303788ace8030000000000006951210334caf7ca87f0fd78a01d9a0d68221e55beef3722da8be72d254dd351c26108892102bc14528340c27d005aa9e2913fd8c032ffa94625307a450077125d580099b57d210282b886c087eb37dc8182f14ba6cc3e9485ed618b95804d44aecc17c300b585b053ae00aaf505000000004751210282b886c087eb37dc8182f14ba6cc3e9485ed618b95804d44aecc17c300b585b0210319f6e07b0b8d756156394b9dcf3b011fe9ac19f2700bd6b69a6a1783dbb8b97752ae00000000", + }, + }, + { + "comment": "send source and dest multisig", + "in": ( + ( + "1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2", + [ + ( + "1_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2", + None, + ) + ], + b"\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x05\xf5\xe1\x00", + ), + {"encoding": "multisig"}, + ), + "out": { + "data": b"TESTXXXX\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x05\xf5\xe1\x00", + "btc_change": 99990350, + "btc_fee": 7650, + "btc_in": 100000000, + "btc_out": 2000, + "unsigned_pretx_hex": None, + "unsigned_tx_hex": "0100000001051511b66ba309e3dbff1fde22aefaff4190675235a010a5c6acb1e43da8005f000000004751210282b886c087eb37dc8182f14ba6cc3e9485ed618b95804d44aecc17c300b585b0210319f6e07b0b8d756156394b9dcf3b011fe9ac19f2700bd6b69a6a1783dbb8b97752aeffffffff03e8030000000000004751210319f6e07b0b8d756156394b9dcf3b011fe9ac19f2700bd6b69a6a1783dbb8b977210378ee11c3fb97054877a809ce083db292b16d971bcdc6aa4c8f92087133729d8b52aee8030000000000006951210334caf7ca87f0fd78a01d9a0d68221e55beef3722da8be72d254dd351c26108892102bc14528340c27d005aa9e2913fd8c032ffa94625307a450077125d580099b57d210282b886c087eb37dc8182f14ba6cc3e9485ed618b95804d44aecc17c300b585b053ae4ebbf505000000004751210282b886c087eb37dc8182f14ba6cc3e9485ed618b95804d44aecc17c300b585b0210319f6e07b0b8d756156394b9dcf3b011fe9ac19f2700bd6b69a6a1783dbb8b97752ae00000000", + }, + }, + { + "comment": "maximum quantity send", + "in": ( + ( + "mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc", + [("mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns", None)], + b"\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03:>\x7f\xff\xff\xff\xff\xff\xff\xff", + ), + {"encoding": "multisig", "regular_dust_size": DP["regular_dust_size"]}, + ), + "out": { + "data": b"TESTXXXX\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03:>\x7f\xff\xff\xff\xff\xff\xff\xff", + "btc_change": 199895060, + "btc_fee": 7650, + "btc_in": 199909140, + "btc_out": 6430, + "unsigned_pretx_hex": None, + "unsigned_tx_hex": "0100000001c1d8c075936c3495f6d653c50f73d987f75448d97a750249b1eb83bee71b24ae000000001976a9144838d8b3588c4c7ba7c1d06f866e9b3739c6303788acffffffff0336150000000000001976a9148d6ae8a3b381663118b4e1eff4cfc7d0954dd6ec88ace8030000000000006951210362415bf04af834423d3dd7ada4dc727a0308664fa0e045a51185cce50ee58717210254da540fb2663b75e6c3cc61190ad0c2431643bab28ced783cd94079bbe72447210282b886c087eb37dc8182f14ba6cc3e9485ed618b95804d44aecc17c300b585b053ae1428ea0b000000001976a9144838d8b3588c4c7ba7c1d06f866e9b3739c6303788ac00000000", + }, + }, + { + "comment": "issuance", + "in": ( + ( + "mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc", + [], + b"\x00\x00\x00\x16\x00\x00\x00\x00\x00\x0b\xfc\xe3\x00\x00\x00\x00\x00\x00\x03\xe8\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc0NULL", + ), + {"encoding": "multisig"}, + ), + "out": { + "data": b"TESTXXXX\x00\x00\x00\x16\x00\x00\x00\x00\x00\x0b\xfc\xe3\x00\x00\x00\x00\x00\x00\x03\xe8\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc0NULL", + "btc_change": 199901340, + "btc_fee": 6800, + "btc_in": 199909140, + "btc_out": 1000, + "unsigned_pretx_hex": None, + "unsigned_tx_hex": "0100000001c1d8c075936c3495f6d653c50f73d987f75448d97a750249b1eb83bee71b24ae000000001976a9144838d8b3588c4c7ba7c1d06f866e9b3739c6303788acffffffff02e8030000000000006951210355415bf04af834423d3dd7adb2dc727a03086e897d9fba5aee7a331919e48780210254da540fb2663b75268d992d550ad0c2431643bab28ced783cd94079bbe7244d210282b886c087eb37dc8182f14ba6cc3e9485ed618b95804d44aecc17c300b585b053ae9c40ea0b000000001976a9144838d8b3588c4c7ba7c1d06f866e9b3739c6303788ac00000000", + }, + }, + { + "comment": "issuance", + "in": ( + ( + "mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc", + [("mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns", None)], + b"\x00\x00\x00\x16\x00\x00\x00\xa2[\xe3Kf\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc0NULL", + ), + {"encoding": "multisig", "regular_dust_size": DP["regular_dust_size"]}, + ), + "out": { + "data": b"TESTXXXX\x00\x00\x00\x16\x00\x00\x00\xa2[\xe3Kf\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc0NULL", + "btc_change": 199895060, + "btc_fee": 7650, + "btc_in": 199909140, + "btc_out": 6430, + "unsigned_pretx_hex": None, + "unsigned_tx_hex": "0100000001c1d8c075936c3495f6d653c50f73d987f75448d97a750249b1eb83bee71b24ae000000001976a9144838d8b3588c4c7ba7c1d06f866e9b3739c6303788acffffffff0336150000000000001976a9148d6ae8a3b381663118b4e1eff4cfc7d0954dd6ec88ace8030000000000006951210355415bf04af834423d3dd7adb2dc727aa153863ef89fba5aee7a331af1e48750210254da540fb2663b75268d992d550ad0c2431643bab28ced783cd94079bbe7244d210282b886c087eb37dc8182f14ba6cc3e9485ed618b95804d44aecc17c300b585b053ae1428ea0b000000001976a9144838d8b3588c4c7ba7c1d06f866e9b3739c6303788ac00000000", + }, + }, + { + "comment": "multisig issuance", + "in": ( + ( + "1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2", + [], + b"\x00\x00\x00\x16\x00\x00\x00\x00\x00\x0b\xfc\xe3\x00\x00\x00\x00\x00\x00\x03\xe8\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc0NULL", + ), + {"encoding": "multisig"}, + ), + "out": { + "data": b"TESTXXXX\x00\x00\x00\x16\x00\x00\x00\x00\x00\x0b\xfc\xe3\x00\x00\x00\x00\x00\x00\x03\xe8\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc0NULL", + "btc_change": 99992200, + "btc_fee": 6800, + "btc_in": 100000000, + "btc_out": 1000, + "unsigned_pretx_hex": None, + "unsigned_tx_hex": "0100000001051511b66ba309e3dbff1fde22aefaff4190675235a010a5c6acb1e43da8005f000000004751210282b886c087eb37dc8182f14ba6cc3e9485ed618b95804d44aecc17c300b585b0210319f6e07b0b8d756156394b9dcf3b011fe9ac19f2700bd6b69a6a1783dbb8b97752aeffffffff02e8030000000000006951210203caf7ca87f0fd78a01d9a0d7e221e55beef3cde388be72d254826b32a6008b62103bc14528340c27d009ae7b7dd73d8c032ffa94625307a450077125d580099b55a210282b886c087eb37dc8182f14ba6cc3e9485ed618b95804d44aecc17c300b585b053ae88c2f505000000004751210282b886c087eb37dc8182f14ba6cc3e9485ed618b95804d44aecc17c300b585b0210319f6e07b0b8d756156394b9dcf3b011fe9ac19f2700bd6b69a6a1783dbb8b97752ae00000000", + }, + }, + { + "comment": "maximum quantity issuance", + "in": ( + ( + "mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc", + [], + b"\x00\x00\x00\x16\x00\x00\x00\x00\xdd\x96\xd2t\x7f\xff\xff\xff\xff\xff\xff\xff\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc0NULL", + ), + {"encoding": "multisig"}, + ), + "out": { + "data": b"TESTXXXX\x00\x00\x00\x16\x00\x00\x00\x00\xdd\x96\xd2t\x7f\xff\xff\xff\xff\xff\xff\xff\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc0NULL", + "btc_change": 199901340, + "btc_fee": 6800, + "btc_in": 199909140, + "btc_out": 1000, + "unsigned_pretx_hex": None, + "unsigned_tx_hex": "0100000001c1d8c075936c3495f6d653c50f73d987f75448d97a750249b1eb83bee71b24ae000000001976a9144838d8b3588c4c7ba7c1d06f866e9b3739c6303788acffffffff02e8030000000000006951210355415bf04af834423d3dd7adb2dc727a03d5f3a7eae045a51185cce50ee487c2210254da540fb2663b75268d992d550ad0c2431643bab28ced783cd94079bbe7244d210282b886c087eb37dc8182f14ba6cc3e9485ed618b95804d44aecc17c300b585b053ae9c40ea0b000000001976a9144838d8b3588c4c7ba7c1d06f866e9b3739c6303788ac00000000", + }, + }, + { + "comment": "transfer asset to multisig", + "in": ( + ( + "mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc", + [ + ( + "1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2", + None, + ) + ], + b"\x00\x00\x00\x16\x00\x00\x00\xa2[\xe3Kf\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc0NULL", + ), + {"encoding": "multisig"}, + ), + "out": { + "data": b"TESTXXXX\x00\x00\x00\x16\x00\x00\x00\xa2[\xe3Kf\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc0NULL", + "btc_change": 199899490, + "btc_fee": 7650, + "btc_in": 199909140, + "btc_out": 2000, + "unsigned_pretx_hex": None, + "unsigned_tx_hex": "0100000001c1d8c075936c3495f6d653c50f73d987f75448d97a750249b1eb83bee71b24ae000000001976a9144838d8b3588c4c7ba7c1d06f866e9b3739c6303788acffffffff03e8030000000000004751210282b886c087eb37dc8182f14ba6cc3e9485ed618b95804d44aecc17c300b585b0210319f6e07b0b8d756156394b9dcf3b011fe9ac19f2700bd6b69a6a1783dbb8b97752aee8030000000000006951210355415bf04af834423d3dd7adb2dc727aa153863ef89fba5aee7a331af1e48750210254da540fb2663b75268d992d550ad0c2431643bab28ced783cd94079bbe7244d210282b886c087eb37dc8182f14ba6cc3e9485ed618b95804d44aecc17c300b585b053ae6239ea0b000000001976a9144838d8b3588c4c7ba7c1d06f866e9b3739c6303788ac00000000", + }, + }, + { + "comment": "order", + "in": ( + ( + "mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc", + [], + b"\x00\x00\x00\n\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\xfa\xf0\x80\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x05\xf5\xe1\x00\x00\n\x00\x00\x00\x00\x00\x00\x00\x00", + ), + {"encoding": "multisig", "fee_provided": DP["fee_provided"]}, + ), + "out": { + "data": b"TESTXXXX\x00\x00\x00\n\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\xfa\xf0\x80\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x05\xf5\xe1\x00\x00\n\x00\x00\x00\x00\x00\x00\x00\x00", + "btc_change": 198908140, + "btc_fee": 1000000, + "btc_in": 199909140, + "btc_out": 1000, + "unsigned_pretx_hex": None, + "unsigned_tx_hex": "0100000001c1d8c075936c3495f6d653c50f73d987f75448d97a750249b1eb83bee71b24ae000000001976a9144838d8b3588c4c7ba7c1d06f866e9b3739c6303788acffffffff02e8030000000000006951210348415bf04af834423d3dd7adaedc727a030865759e9fba5aee78c9ea71e5870f210354da540fb2673b75e6c3c994f80ad0c8431643bab28ced783cd94079bbe72445210282b886c087eb37dc8182f14ba6cc3e9485ed618b95804d44aecc17c300b585b053aeec18db0b000000001976a9144838d8b3588c4c7ba7c1d06f866e9b3739c6303788ac00000000", + }, + }, + { + "comment": "multisig order", + "in": ( + ( + "1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2", + [], + b"\x00\x00\x00\n\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\xfa\xf0\x80\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x05\xf5\xe1\x00\x00\n\x00\x00\x00\x00\x00\x00\x00\x00", + ), + {"encoding": "multisig", "fee_provided": DP["fee_provided"]}, + ), + "out": { + "data": b"TESTXXXX\x00\x00\x00\n\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\xfa\xf0\x80\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x05\xf5\xe1\x00\x00\n\x00\x00\x00\x00\x00\x00\x00\x00", + "btc_change": 98999000, + "btc_fee": 1000000, + "btc_in": 100000000, + "btc_out": 1000, + "unsigned_pretx_hex": None, + "unsigned_tx_hex": "0100000001051511b66ba309e3dbff1fde22aefaff4190675235a010a5c6acb1e43da8005f000000004751210282b886c087eb37dc8182f14ba6cc3e9485ed618b95804d44aecc17c300b585b0210319f6e07b0b8d756156394b9dcf3b011fe9ac19f2700bd6b69a6a1783dbb8b97752aeffffffff02e803000000000000695121021ecaf7ca87f0fd78a01d9a0d62221e55beef3722db8be72d254adc40426108d02103bc14528340c37d005aa9e764ded8c038ffa94625307a450077125d580099b53b210282b886c087eb37dc8182f14ba6cc3e9485ed618b95804d44aecc17c300b585b053aed89ae605000000004751210282b886c087eb37dc8182f14ba6cc3e9485ed618b95804d44aecc17c300b585b0210319f6e07b0b8d756156394b9dcf3b011fe9ac19f2700bd6b69a6a1783dbb8b97752ae00000000", + }, + }, + { + "comment": "multisig order", + "in": ( + ( + "1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2", + [], + b"\x00\x00\x00\n\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x06B,@\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\xfa\xf0\x80\x00\n\x00\x00\x00\x00\x00\r\xbb\xa0", + ), + {"encoding": "multisig"}, + ), + "out": { + "data": b"TESTXXXX\x00\x00\x00\n\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x06B,@\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\xfa\xf0\x80\x00\n\x00\x00\x00\x00\x00\r\xbb\xa0", + "btc_change": 99992200, + "btc_fee": 6800, + "btc_in": 100000000, + "btc_out": 1000, + "unsigned_pretx_hex": None, + "unsigned_tx_hex": "0100000001051511b66ba309e3dbff1fde22aefaff4190675235a010a5c6acb1e43da8005f000000004751210282b886c087eb37dc8182f14ba6cc3e9485ed618b95804d44aecc17c300b585b0210319f6e07b0b8d756156394b9dcf3b011fe9ac19f2700bd6b69a6a1783dbb8b97752aeffffffff02e803000000000000695121031ecaf7ca87f0fd78a01d9a0d62221e55beef3722da8be72d254e649c8261083d2102bc14528340c27d005aa9e06bcf58c038ffa946253077fea077125d580099b5bb210282b886c087eb37dc8182f14ba6cc3e9485ed618b95804d44aecc17c300b585b053ae88c2f505000000004751210282b886c087eb37dc8182f14ba6cc3e9485ed618b95804d44aecc17c300b585b0210319f6e07b0b8d756156394b9dcf3b011fe9ac19f2700bd6b69a6a1783dbb8b97752ae00000000", + }, + }, + { + "comment": "maximum quantity order", + "in": ( + ( + "mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc", + [], + b"\x00\x00\x00\n\x00\x00\x00\x00\x00\x03:>\x7f\xff\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x05\xf5\xe1\x00\x00\n\x00\x00\x00\x00\x00\r\xbb\xa0", + ), + {"encoding": "multisig"}, + ), + "out": { + "data": b"TESTXXXX\x00\x00\x00\n\x00\x00\x00\x00\x00\x03:>\x7f\xff\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x05\xf5\xe1\x00\x00\n\x00\x00\x00\x00\x00\r\xbb\xa0", + "btc_change": 199901340, + "btc_fee": 6800, + "btc_in": 199909140, + "btc_out": 1000, + "unsigned_pretx_hex": None, + "unsigned_tx_hex": "0100000001c1d8c075936c3495f6d653c50f73d987f75448d97a750249b1eb83bee71b24ae000000001976a9144838d8b3588c4c7ba7c1d06f866e9b3739c6303788acffffffff02e8030000000000006951210248415bf04af834423d3dd7adaedc727a0308664fa0e045a51185cce50ee58759210354da540fb2673b75e6c3c994f80ad0c8431643bab28156d83cd94079bbe72452210282b886c087eb37dc8182f14ba6cc3e9485ed618b95804d44aecc17c300b585b053ae9c40ea0b000000001976a9144838d8b3588c4c7ba7c1d06f866e9b3739c6303788ac00000000", + }, + }, + { + "comment": "dividend", + "in": ( + ( + "mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc", + [], + b"\x00\x00\x002\x00\x00\x00\x00\x05\xf5\xe1\x00\x00\x00\x00\xa2[\xe3Kf\x00\x00\x00\x00\x00\x00\x00\x01", + ), + {"encoding": "multisig"}, + ), + "out": { + "data": b"TESTXXXX\x00\x00\x002\x00\x00\x00\x00\x05\xf5\xe1\x00\x00\x00\x00\xa2[\xe3Kf\x00\x00\x00\x00\x00\x00\x00\x01", + "btc_change": 199901340, + "btc_fee": 6800, + "btc_in": 199909140, + "btc_out": 1000, + "unsigned_pretx_hex": None, + "unsigned_tx_hex": "0100000001c1d8c075936c3495f6d653c50f73d987f75448d97a750249b1eb83bee71b24ae000000001976a9144838d8b3588c4c7ba7c1d06f866e9b3739c6303788acffffffff02e803000000000000695121035a415bf04af834423d3dd7ad96dc727a030d90949e9fba5a4c21d05197e58735210254da540fb2673b75e6c3cc61190ad0c2431643bab28ced783cd94079bbe7246f210282b886c087eb37dc8182f14ba6cc3e9485ed618b95804d44aecc17c300b585b053ae9c40ea0b000000001976a9144838d8b3588c4c7ba7c1d06f866e9b3739c6303788ac00000000", + }, + }, + { + "comment": "dividend", + "in": ( + ( + "mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc", + [], + b"\x00\x00\x002\x00\x00\x00\x00\x00\x00\x00\x01\x00\x06\xca\xd8\xdc\x7f\x0bf\x00\x00\x00\x00\x00\x00\x00\x01", + ), + {"encoding": "multisig"}, + ), + "out": { + "data": b"TESTXXXX\x00\x00\x002\x00\x00\x00\x00\x00\x00\x00\x01\x00\x06\xca\xd8\xdc\x7f\x0bf\x00\x00\x00\x00\x00\x00\x00\x01", + "btc_change": 199901340, + "btc_fee": 6800, + "btc_in": 199909140, + "btc_out": 1000, + "unsigned_pretx_hex": None, + "unsigned_tx_hex": "0100000001c1d8c075936c3495f6d653c50f73d987f75448d97a750249b1eb83bee71b24ae000000001976a9144838d8b3588c4c7ba7c1d06f866e9b3739c6303788acffffffff02e803000000000000695121025a415bf04af834423d3dd7ad96dc727a030865759f9fbc9036a64c1197e587c8210254da540fb2673b75e6c3cc61190ad0c2431643bab28ced783cd94079bbe7246f210282b886c087eb37dc8182f14ba6cc3e9485ed618b95804d44aecc17c300b585b053ae9c40ea0b000000001976a9144838d8b3588c4c7ba7c1d06f866e9b3739c6303788ac00000000", + }, + }, + { + "comment": "free issuance", + "in": ( + ( + "mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc", + [], + b"\x00\x00\x00\x16\xff\xff\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\x00\x00\x03\xe8\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc0NULL", + ), + {"encoding": "multisig"}, + ), + "out": { + "data": b"TESTXXXX\x00\x00\x00\x16\xff\xff\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\x00\x00\x03\xe8\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc0NULL", + "btc_change": 199901340, + "btc_fee": 6800, + "btc_in": 199909140, + "btc_out": 1000, + "unsigned_pretx_hex": None, + "unsigned_tx_hex": "0100000001c1d8c075936c3495f6d653c50f73d987f75448d97a750249b1eb83bee71b24ae000000001976a9144838d8b3588c4c7ba7c1d06f866e9b3739c6303788acffffffff02e8030000000000006951210255415bf04af834423d3dd7adb2238d85fcf79a8a619fba5aee7a331919e4870d210254da540fb2663b75268d992d550ad0c2431643bab28ced783cd94079bbe7244d210282b886c087eb37dc8182f14ba6cc3e9485ed618b95804d44aecc17c300b585b053ae9c40ea0b000000001976a9144838d8b3588c4c7ba7c1d06f866e9b3739c6303788ac00000000", + }, + }, + { + "comment": "large broadcast", + "in": ( + ( + "mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc", + [], + b"\x00\x00\x00\x1e^\xa6\xf5\x00?\xf0\x00\x00\x00\x00\x00\x00\x00LK@lOver 80 characters test test test test test test test test test test test test test test test test test test", + ), + {}, + ), + "out": { + "data": b"TESTXXXX\x00\x00\x00\x1e^\xa6\xf5\x00?\xf0\x00\x00\x00\x00\x00\x00\x00LK@lOver 80 characters test test test test test test test test test test test test test test test test test test", + "btc_change": 199895290, + "btc_fee": 10850, + "btc_in": 199909140, + "btc_out": 3000, + "unsigned_pretx_hex": None, + "unsigned_tx_hex": "0100000001c1d8c075936c3495f6d653c50f73d987f75448d97a750249b1eb83bee71b24ae000000001976a9144838d8b3588c4c7ba7c1d06f866e9b3739c6303788acffffffff04e8030000000000006951210343415bf04af834423d3dd7adba82d48f033795759e9fba5aee7a7f51b189c8c0210322bf262f8a561b168ea2be007a7eb5b0303637dfc1f8cd0c59aa3459cf825784210282b886c087eb37dc8182f14ba6cc3e9485ed618b95804d44aecc17c300b585b053aee8030000000000006951210343415bf04af834423d49f7d9c1af065a776d1601beebdf299a5a477f8291a7c4210220bf277b92125e0692e3b8046a7ef0b62665379ac6e99e0c1cad250acfc750c9210282b886c087eb37dc8182f14ba6cc3e9485ed618b95804d44aecc17c300b585b053aee8030000000000006951210361415bf04af834423d58a4d984a8170977281110edeb9a2e8b09473a8580f45d210220da540fb2663b75e6c3cc61190ad0c2431643bab28ced783cd94079bbe724dc210282b886c087eb37dc8182f14ba6cc3e9485ed618b95804d44aecc17c300b585b053aefa28ea0b000000001976a9144838d8b3588c4c7ba7c1d06f866e9b3739c6303788ac00000000", + }, + }, + ], + }, +} diff --git a/counterparty-core/counterpartycore/test/fixtures/scenarios/multisig_1_of_2.log b/counterparty-core/counterpartycore/test/fixtures/scenarios/multisig_1_of_2.log index 9724a4681e..6fbcc8fecf 100644 --- a/counterparty-core/counterpartycore/test/fixtures/scenarios/multisig_1_of_2.log +++ b/counterparty-core/counterpartycore/test/fixtures/scenarios/multisig_1_of_2.log @@ -1,49 +1,35 @@ Creating connection to `:memory:`... Initializing database... -TX Construct - Constructing transaction from 1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2. TX Construct - Transaction constructed. 1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2 burned 62000000 BTC for 93000000000 XCP (9b6b1abb696d8d1b70c5beed046d7cddd23cd95b69ef18946cb18c5b56cfde30) [valid] -TX Construct - Constructing `MULTISIG` transaction from 1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2. TX Construct - Transaction constructed. Send XCP from 1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2 to 1_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2 (58e839ec2b1584d3474014093393ce57e5c22d6e686213ee4a7a0abe7bbac33c) [valid] -TX Construct - Constructing `MULTISIG` transaction from 1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2. TX Construct - Transaction constructed. Order opened for 50000000 BTC at 1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2 (332b030da57b9565324df01414778b1eafbee6c52343fea80774ee1725484367) [open] -TX Construct - Constructing `MULTISIG` transaction from 1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2. TX Construct - Transaction constructed. Order opened for 105000000 XCP at 1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2 (f093b6c00e1bbe85106db6874b1ab4e3f4378d0bf0bcffbd8b51835285dfbf3f) [open] Order match for 50000000 BTC against 100000000 XCP (332b030da57b9565324df01414778b1eafbee6c52343fea80774ee1725484367_f093b6c00e1bbe85106db6874b1ab4e3f4378d0bf0bcffbd8b51835285dfbf3f) [pending] Order match has only -10 confirmation(s). -TX Construct - Constructing `MULTISIG` transaction from 1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2. TX Construct - Transaction constructed. BTC Pay for order match 332b030da57b9565324df01414778b1eafbee6c52343fea80774ee1725484367_f093b6c00e1bbe85106db6874b1ab4e3f4378d0bf0bcffbd8b51835285dfbf3f (ed17dc38233838e15d319a1786825b9e7cdba815554c9d6f4dd527615bce10b8) [valid] -TX Construct - Constructing `MULTISIG` transaction from 1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2. TX Construct - Transaction constructed. Issuance of 1000000000 BBBB by 1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2 [cd2b44cb56dd5aaae1181c42ab8953ebb9d0fb8e177e960ffe55e3500b3aae25] (valid) -TX Construct - Constructing `MULTISIG` transaction from 1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2. TX Construct - Transaction constructed. Issuance of 100000 BBBC by 1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2 [ddefdf227fd8cd8df1e77f0b531e98a033d2e5b237fa4331b83c003de54877d9] (valid) -TX Construct - Constructing `MULTISIG` transaction from 1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2. TX Construct - Transaction constructed. Send BBBB from 1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2 to 1_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2 (f337451a19eac3c2fe66daf7d44d39c41a012d2dfd85de90cc3877bbc2e7d30c) [valid] -TX Construct - Constructing `MULTISIG` transaction from 1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2. TX Construct - Transaction constructed. Send BBBC from 1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2 to 1_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2 (c639e9482b31b487115b4437dd87cff98338003fabf18066bf051e1164aa4394) [valid] Total quantity to be distributed in dividends: 0.00000024 XCP -TX Construct - Constructing `MULTISIG` transaction from 1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2. TX Construct - Transaction constructed. Dividend of 600 XCP per unit of BBBB (7881c1fe7881a590d09302dde67cfd888a74154888e0c310bd01575f560b8ac8) [valid] Total quantity to be distributed in dividends: 0.004208 XCP -TX Construct - Constructing `MULTISIG` transaction from 1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2. TX Construct - Transaction constructed. Dividend of 800 XCP per unit of BBBC (c41898ad625e2236110101070c09e9f28b6fea1ed436ecb78f231f3f99f123f7) [valid] -TX Construct - Constructing `MULTISIG` transaction from 1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2. TX Construct - Transaction constructed. Broadcast from 1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2 (a21533ad03334823cca2aa8e57c383113a7f93a5810c5df8dd2fa70f6eec416d) [valid] -TX Construct - Constructing `MULTISIG` transaction from 1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2. TX Construct - Transaction constructed. Open Bet (74062934f0a97c41851735fef2a7df4d9ad9945424f09a54281e145a5e32492f) [open] -TX Construct - Constructing `MULTISIG` transaction from 1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2. TX Construct - Transaction constructed. Order cancelled BTC / XCP (332b030da57b9565324df01414778b1eafbee6c52343fea80774ee1725484367) [expired] Open Bet (6a5f30666a5f24b6e0e6f31cf06b22ee74d3e692a550297450bdf1d36b1cc167) [open] @@ -55,11 +41,9 @@ Backward Quantity: 20750000 Bet 74062934f0a97c41851735fef2a7df4d9ad9945424f09a54281e145a5e32492f updated (6a5f30666a5f24b6e0e6f31cf06b22ee74d3e692a550297450bdf1d36b1cc167) [open] Bet 6a5f30666a5f24b6e0e6f31cf06b22ee74d3e692a550297450bdf1d36b1cc167 updated (6a5f30666a5f24b6e0e6f31cf06b22ee74d3e692a550297450bdf1d36b1cc167) [filled] Bet match 13 for 41500000 XCP against 20750000 XCP on 1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2 -TX Construct - Constructing `MULTISIG` transaction from 1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2. TX Construct - Transaction constructed. Order cancelled XCP / BTC (f093b6c00e1bbe85106db6874b1ab4e3f4378d0bf0bcffbd8b51835285dfbf3f) [expired] Open Bet (2066b9a6b8913412384a0401ef57bfc604e7c5a2c141e23111a8ccc6881b0fb3) [open] -TX Construct - Constructing `MULTISIG` transaction from 1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2. TX Construct - Transaction constructed. Open Bet (65db3ab58b65891a947ab9bdba4723e907678bf3b48397add62802dcc65d1d8e) [open] Considering: 74062934f0a97c41851735fef2a7df4d9ad9945424f09a54281e145a5e32492f @@ -72,10 +56,8 @@ Backward Quantity: 350000000 Bet 2066b9a6b8913412384a0401ef57bfc604e7c5a2c141e23111a8ccc6881b0fb3 updated (65db3ab58b65891a947ab9bdba4723e907678bf3b48397add62802dcc65d1d8e) [filled] Bet 65db3ab58b65891a947ab9bdba4723e907678bf3b48397add62802dcc65d1d8e updated (65db3ab58b65891a947ab9bdba4723e907678bf3b48397add62802dcc65d1d8e) [filled] Bet match 15 for 150000000 XCP against 350000000 XCP on 1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2 -TX Construct - Constructing `MULTISIG` transaction from 1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2. TX Construct - Transaction constructed. Open Bet (94b11df6b519372bfbcf0ec5f3e6465a63e323c7cd7cff83a8abd78596d4bce4) [open] -TX Construct - Constructing `MULTISIG` transaction from 1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2. TX Construct - Transaction constructed. Open Bet (a7daff1ca2874f6b18a8f1a1e70db27f58c6b39a9f106c353223fbccde57098e) [open] Considering: 94b11df6b519372bfbcf0ec5f3e6465a63e323c7cd7cff83a8abd78596d4bce4 @@ -86,28 +68,22 @@ Backward Quantity: 650000000 Bet 94b11df6b519372bfbcf0ec5f3e6465a63e323c7cd7cff83a8abd78596d4bce4 updated (a7daff1ca2874f6b18a8f1a1e70db27f58c6b39a9f106c353223fbccde57098e) [filled] Bet a7daff1ca2874f6b18a8f1a1e70db27f58c6b39a9f106c353223fbccde57098e updated (a7daff1ca2874f6b18a8f1a1e70db27f58c6b39a9f106c353223fbccde57098e) [filled] Bet match 17 for 750000000 XCP against 650000000 XCP on 1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2 -TX Construct - Constructing `MULTISIG` transaction from 1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2. TX Construct - Transaction constructed. Broadcast from 1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2 (f020ae6c0b1aadbba4893581678ef87f9d2a925be5e6b08d02440e213f6183b4) [valid] Bet Match 74062934f0a97c41851735fef2a7df4d9ad9945424f09a54281e145a5e32492f_6a5f30666a5f24b6e0e6f31cf06b22ee74d3e692a550297450bdf1d36b1cc167 resolved Bet Match 74062934f0a97c41851735fef2a7df4d9ad9945424f09a54281e145a5e32492f_6a5f30666a5f24b6e0e6f31cf06b22ee74d3e692a550297450bdf1d36b1cc167 updated [settled: liquidated for bear] -TX Construct - Constructing `MULTISIG` transaction from 1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2. TX Construct - Transaction constructed. Broadcast from 1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2 (dccbd8852c8d489d32f87be0c86a631b63ec50202b0109a2be6aa96f27f89600) [valid] Bet Match 2066b9a6b8913412384a0401ef57bfc604e7c5a2c141e23111a8ccc6881b0fb3_65db3ab58b65891a947ab9bdba4723e907678bf3b48397add62802dcc65d1d8e resolved Bet Match 2066b9a6b8913412384a0401ef57bfc604e7c5a2c141e23111a8ccc6881b0fb3_65db3ab58b65891a947ab9bdba4723e907678bf3b48397add62802dcc65d1d8e updated [settled] -TX Construct - Constructing `MULTISIG` transaction from 1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2. TX Construct - Transaction constructed. Broadcast from 1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2 (457f36dccce6664a8e28b00ebf47aa60ba4a41b46642aceef0e2a297429eb64e) [valid] Bet Match 94b11df6b519372bfbcf0ec5f3e6465a63e323c7cd7cff83a8abd78596d4bce4_a7daff1ca2874f6b18a8f1a1e70db27f58c6b39a9f106c353223fbccde57098e resolved Bet Match 94b11df6b519372bfbcf0ec5f3e6465a63e323c7cd7cff83a8abd78596d4bce4_a7daff1ca2874f6b18a8f1a1e70db27f58c6b39a9f106c353223fbccde57098e updated [settled: for notequal] -TX Construct - Constructing `MULTISIG` transaction from 1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2. TX Construct - Transaction constructed. Order opened for 50000000 BBBB at 1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2 (6cb08a1c0547ab0d0d37b74633c1c8a2fd2372d9fd72eb3abdea298f2b245fee) [open] -TX Construct - Constructing transaction from 1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2. TX Construct - Transaction constructed. 1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2 burned 38000000 BTC for 56999887262 XCP (c81cd36f1efabd22f1a00923714fd5a5f1ba07852ef1f0763223563e3f55dfda) [valid] -TX Construct - Constructing `MULTISIG` transaction from 1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2. TX Construct - Transaction constructed. Bet 74062934f0a97c41851735fef2a7df4d9ad9945424f09a54281e145a5e32492f canceled [expired] Bet Expiration 74062934f0a97c41851735fef2a7df4d9ad9945424f09a54281e145a5e32492f diff --git a/counterparty-core/counterpartycore/test/fixtures/scenarios/multisig_1_of_3.log b/counterparty-core/counterpartycore/test/fixtures/scenarios/multisig_1_of_3.log index 28cd8db500..5984ce9bdd 100644 --- a/counterparty-core/counterpartycore/test/fixtures/scenarios/multisig_1_of_3.log +++ b/counterparty-core/counterpartycore/test/fixtures/scenarios/multisig_1_of_3.log @@ -1,49 +1,35 @@ Creating connection to `:memory:`... Initializing database... -TX Construct - Constructing transaction from 1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3. TX Construct - Transaction constructed. 1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3 burned 62000000 BTC for 93000000000 XCP (63f8a75a06328d984c928bdcf6bebb20d9c2b154712f1d03041d07c6f319efd2) [valid] -TX Construct - Constructing `MULTISIG` transaction from 1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3. TX Construct - Transaction constructed. Send XCP from 1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3 to 1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mqPCfvqTfYctXMUfmniXeG2nyaN8w6tPmj_3 (5849bd15f5a73840e4babd220ed450d0f46128479d6bb7eaf9f4e98a409c97d4) [valid] -TX Construct - Constructing `MULTISIG` transaction from 1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3. TX Construct - Transaction constructed. Order opened for 50000000 BTC at 1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3 (04d5809f0085bf2655c500a8c65d6d8b42dd373160fb431af05792b0f30b63a6) [open] -TX Construct - Constructing `MULTISIG` transaction from 1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3. TX Construct - Transaction constructed. Order opened for 105000000 XCP at 1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3 (98ef3d31d1777ad18801e94eef03d4314911ac03d7a82483b40614ea5cf80e52) [open] Order match for 50000000 BTC against 100000000 XCP (04d5809f0085bf2655c500a8c65d6d8b42dd373160fb431af05792b0f30b63a6_98ef3d31d1777ad18801e94eef03d4314911ac03d7a82483b40614ea5cf80e52) [pending] Order match has only -10 confirmation(s). -TX Construct - Constructing `MULTISIG` transaction from 1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3. TX Construct - Transaction constructed. BTC Pay for order match 04d5809f0085bf2655c500a8c65d6d8b42dd373160fb431af05792b0f30b63a6_98ef3d31d1777ad18801e94eef03d4314911ac03d7a82483b40614ea5cf80e52 (90eb885df58d93c1d5fdc86a88257db69e6ac7904409929733250b3f7bbe5613) [valid] -TX Construct - Constructing `MULTISIG` transaction from 1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3. TX Construct - Transaction constructed. Issuance of 1000000000 BBBB by 1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3 [1ba2a0b4ee8543976aab629c78103c0ba86c60250c11d51f9bc40676487283b7] (valid) -TX Construct - Constructing `MULTISIG` transaction from 1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3. TX Construct - Transaction constructed. Issuance of 100000 BBBC by 1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3 [3f9e2dc4f7a72dee0e2d3badd871324506fe6c8239f62b6aa35f316800d55846] (valid) -TX Construct - Constructing `MULTISIG` transaction from 1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3. TX Construct - Transaction constructed. Send BBBB from 1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3 to 1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mqPCfvqTfYctXMUfmniXeG2nyaN8w6tPmj_3 (30bfb2793bd1a65e5993edb9c3268db31bc96b8bf1f6e3bef037da4f4e93bc65) [valid] -TX Construct - Constructing `MULTISIG` transaction from 1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3. TX Construct - Transaction constructed. Send BBBC from 1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3 to 1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mqPCfvqTfYctXMUfmniXeG2nyaN8w6tPmj_3 (7da21bef68887cb50f8582fc0dda69ee5414993450dfab7437891b5a1117e849) [valid] Total quantity to be distributed in dividends: 0.00000024 XCP -TX Construct - Constructing `MULTISIG` transaction from 1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3. TX Construct - Transaction constructed. Dividend of 600 XCP per unit of BBBB (f3cb8e3c39c261fef8d71c5222b8864bee3c7c1c4ec342430cff08945273779f) [valid] Total quantity to be distributed in dividends: 0.004208 XCP -TX Construct - Constructing `MULTISIG` transaction from 1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3. TX Construct - Transaction constructed. Dividend of 800 XCP per unit of BBBC (15741649c83a752d61662fe00bd28b1c33dfd7816cb92225a0a61008f9059a59) [valid] -TX Construct - Constructing `MULTISIG` transaction from 1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3. TX Construct - Transaction constructed. Broadcast from 1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3 (1a5b6320346fcb5f7b59ce88553ef92738d2f5ba0a7477e898df85b2730a0f1a) [valid] -TX Construct - Constructing `MULTISIG` transaction from 1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3. TX Construct - Transaction constructed. Open Bet (1075391072b01264a783bf31205a83abdf7356c8c405753d3ef8599f852df887) [open] -TX Construct - Constructing `MULTISIG` transaction from 1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3. TX Construct - Transaction constructed. Order cancelled BTC / XCP (04d5809f0085bf2655c500a8c65d6d8b42dd373160fb431af05792b0f30b63a6) [expired] Open Bet (a067f79057992245507ea08e901e623918be2b0eb2d178e35b01f36da2d30a33) [open] @@ -55,11 +41,9 @@ Backward Quantity: 20750000 Bet 1075391072b01264a783bf31205a83abdf7356c8c405753d3ef8599f852df887 updated (a067f79057992245507ea08e901e623918be2b0eb2d178e35b01f36da2d30a33) [open] Bet a067f79057992245507ea08e901e623918be2b0eb2d178e35b01f36da2d30a33 updated (a067f79057992245507ea08e901e623918be2b0eb2d178e35b01f36da2d30a33) [filled] Bet match 13 for 41500000 XCP against 20750000 XCP on 1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3 -TX Construct - Constructing `MULTISIG` transaction from 1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3. TX Construct - Transaction constructed. Order cancelled XCP / BTC (98ef3d31d1777ad18801e94eef03d4314911ac03d7a82483b40614ea5cf80e52) [expired] Open Bet (040e03dfdef2df24411a077cfe5f90f3311bbb82bb3783ea2d7e6f484afd3e2b) [open] -TX Construct - Constructing `MULTISIG` transaction from 1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3. TX Construct - Transaction constructed. Open Bet (62ece578c6760773bd4252922a7a0af87da1a1c308f32423e20cf49a369ea0a2) [open] Considering: 1075391072b01264a783bf31205a83abdf7356c8c405753d3ef8599f852df887 @@ -72,10 +56,8 @@ Backward Quantity: 350000000 Bet 040e03dfdef2df24411a077cfe5f90f3311bbb82bb3783ea2d7e6f484afd3e2b updated (62ece578c6760773bd4252922a7a0af87da1a1c308f32423e20cf49a369ea0a2) [filled] Bet 62ece578c6760773bd4252922a7a0af87da1a1c308f32423e20cf49a369ea0a2 updated (62ece578c6760773bd4252922a7a0af87da1a1c308f32423e20cf49a369ea0a2) [filled] Bet match 15 for 150000000 XCP against 350000000 XCP on 1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3 -TX Construct - Constructing `MULTISIG` transaction from 1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3. TX Construct - Transaction constructed. Open Bet (578d8026c9a3a9173fdb7d5f10c6d5e7d49f375edf5fd8b3f29ccb37a8b42d1f) [open] -TX Construct - Constructing `MULTISIG` transaction from 1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3. TX Construct - Transaction constructed. Open Bet (479b0fbec468381f1e27332755b12a69800680379d0037e02f641265a8beb183) [open] Considering: 578d8026c9a3a9173fdb7d5f10c6d5e7d49f375edf5fd8b3f29ccb37a8b42d1f @@ -86,28 +68,22 @@ Backward Quantity: 650000000 Bet 578d8026c9a3a9173fdb7d5f10c6d5e7d49f375edf5fd8b3f29ccb37a8b42d1f updated (479b0fbec468381f1e27332755b12a69800680379d0037e02f641265a8beb183) [filled] Bet 479b0fbec468381f1e27332755b12a69800680379d0037e02f641265a8beb183 updated (479b0fbec468381f1e27332755b12a69800680379d0037e02f641265a8beb183) [filled] Bet match 17 for 750000000 XCP against 650000000 XCP on 1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3 -TX Construct - Constructing `MULTISIG` transaction from 1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3. TX Construct - Transaction constructed. Broadcast from 1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3 (16a5d04f339e5765125c4b2fdda91e45e135e44df489b97805b5d3bae50a6485) [valid] Bet Match 1075391072b01264a783bf31205a83abdf7356c8c405753d3ef8599f852df887_a067f79057992245507ea08e901e623918be2b0eb2d178e35b01f36da2d30a33 resolved Bet Match 1075391072b01264a783bf31205a83abdf7356c8c405753d3ef8599f852df887_a067f79057992245507ea08e901e623918be2b0eb2d178e35b01f36da2d30a33 updated [settled: liquidated for bear] -TX Construct - Constructing `MULTISIG` transaction from 1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3. TX Construct - Transaction constructed. Broadcast from 1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3 (65c96e80d7bfe2c7b00086196a7fc38889d91f5907658a6bbe795c89ef90ce37) [valid] Bet Match 040e03dfdef2df24411a077cfe5f90f3311bbb82bb3783ea2d7e6f484afd3e2b_62ece578c6760773bd4252922a7a0af87da1a1c308f32423e20cf49a369ea0a2 resolved Bet Match 040e03dfdef2df24411a077cfe5f90f3311bbb82bb3783ea2d7e6f484afd3e2b_62ece578c6760773bd4252922a7a0af87da1a1c308f32423e20cf49a369ea0a2 updated [settled] -TX Construct - Constructing `MULTISIG` transaction from 1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3. TX Construct - Transaction constructed. Broadcast from 1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3 (43232e4a2e0863cde59fb404a8da059c01cc8afb6c88b509f77d6cbfa02d187e) [valid] Bet Match 578d8026c9a3a9173fdb7d5f10c6d5e7d49f375edf5fd8b3f29ccb37a8b42d1f_479b0fbec468381f1e27332755b12a69800680379d0037e02f641265a8beb183 resolved Bet Match 578d8026c9a3a9173fdb7d5f10c6d5e7d49f375edf5fd8b3f29ccb37a8b42d1f_479b0fbec468381f1e27332755b12a69800680379d0037e02f641265a8beb183 updated [settled: for notequal] -TX Construct - Constructing `MULTISIG` transaction from 1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3. TX Construct - Transaction constructed. Order opened for 50000000 BBBB at 1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3 (cd79f155a7a8b7737cf959cdc347db22f2f38288261842997e13844a09f6f2ee) [open] -TX Construct - Constructing transaction from 1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3. TX Construct - Transaction constructed. 1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3 burned 38000000 BTC for 56999887262 XCP (ec9788fbae83a6cdf980d5373d85911a27447410efa4b11997fefcc41bc89caa) [valid] -TX Construct - Constructing `MULTISIG` transaction from 1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3. TX Construct - Transaction constructed. Bet 1075391072b01264a783bf31205a83abdf7356c8c405753d3ef8599f852df887 canceled [expired] Bet Expiration 1075391072b01264a783bf31205a83abdf7356c8c405753d3ef8599f852df887 diff --git a/counterparty-core/counterpartycore/test/fixtures/scenarios/multisig_2_of_2.log b/counterparty-core/counterpartycore/test/fixtures/scenarios/multisig_2_of_2.log index 68bafcd5a9..b52a2e2bb1 100644 --- a/counterparty-core/counterpartycore/test/fixtures/scenarios/multisig_2_of_2.log +++ b/counterparty-core/counterpartycore/test/fixtures/scenarios/multisig_2_of_2.log @@ -1,49 +1,35 @@ Creating connection to `:memory:`... Initializing database... -TX Construct - Constructing transaction from 2_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2. TX Construct - Transaction constructed. 2_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2 burned 62000000 BTC for 93000000000 XCP (5fde1c728d8d00aaa1b5f8dae963ceb4fd30c415eb0b8a982ba2d8d676fec0bb) [valid] -TX Construct - Constructing `MULTISIG` transaction from 2_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2. TX Construct - Transaction constructed. Send XCP from 2_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2 to 2_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2 (eacd03b732d28924807d4f0cb1c1aa5720a78bf44d23660fb1658a5fd1b4e9a3) [valid] -TX Construct - Constructing `MULTISIG` transaction from 2_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2. TX Construct - Transaction constructed. Order opened for 50000000 BTC at 2_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2 (025ca2c1784ca3c9389b9f227a5a04445908337e21e2ef9411c890e20aff61c0) [open] -TX Construct - Constructing `MULTISIG` transaction from 2_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2. TX Construct - Transaction constructed. Order opened for 105000000 XCP at 2_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2 (c6881f7505bd7fe0742c2ce50490e21431705bf2df4368be43f423fa0c515aee) [open] Order match for 50000000 BTC against 100000000 XCP (025ca2c1784ca3c9389b9f227a5a04445908337e21e2ef9411c890e20aff61c0_c6881f7505bd7fe0742c2ce50490e21431705bf2df4368be43f423fa0c515aee) [pending] Order match has only -10 confirmation(s). -TX Construct - Constructing `MULTISIG` transaction from 2_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2. TX Construct - Transaction constructed. BTC Pay for order match 025ca2c1784ca3c9389b9f227a5a04445908337e21e2ef9411c890e20aff61c0_c6881f7505bd7fe0742c2ce50490e21431705bf2df4368be43f423fa0c515aee (b0bf5693ba52a5c6bda34671ba065606bd02277f281e9aa19d25778e26c2f7e2) [valid] -TX Construct - Constructing `MULTISIG` transaction from 2_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2. TX Construct - Transaction constructed. Issuance of 1000000000 BBBB by 2_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2 [93599860b4a4a3b672a79c064812eb18d2e1b532613e08bd3ae1ee2a9979eae2] (valid) -TX Construct - Constructing `MULTISIG` transaction from 2_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2. TX Construct - Transaction constructed. Issuance of 100000 BBBC by 2_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2 [3318c4b8b244fbc64f6894d28f7a1866db5671f04d2e4f5911d0fd688f804404] (valid) -TX Construct - Constructing `MULTISIG` transaction from 2_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2. TX Construct - Transaction constructed. Send BBBB from 2_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2 to 2_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2 (e43d2ab22a3a5fe1de032bdf042381fc1d6fc34794abc51a1b3db46ccf8cbdbe) [valid] -TX Construct - Constructing `MULTISIG` transaction from 2_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2. TX Construct - Transaction constructed. Send BBBC from 2_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2 to 2_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2 (7b48b32b5373757d0bfa50358184117ca01b5ad564ca4338ecb021ae726a19c9) [valid] Total quantity to be distributed in dividends: 0.00000024 XCP -TX Construct - Constructing `MULTISIG` transaction from 2_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2. TX Construct - Transaction constructed. Dividend of 600 XCP per unit of BBBB (cbc73bb03bae7cbaa0e88c9c16cb78fa6f315b9a6383f0f7efb63d0fdd831a81) [valid] Total quantity to be distributed in dividends: 0.004208 XCP -TX Construct - Constructing `MULTISIG` transaction from 2_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2. TX Construct - Transaction constructed. Dividend of 800 XCP per unit of BBBC (c59e9803933740537b59928d19d2b65812e6f2b8d1ac811d9262353a19327b97) [valid] -TX Construct - Constructing `MULTISIG` transaction from 2_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2. TX Construct - Transaction constructed. Broadcast from 2_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2 (0a15cc28e58f28a690051e66e6c50ecb68826077d59b75d05590a1db453d9d61) [valid] -TX Construct - Constructing `MULTISIG` transaction from 2_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2. TX Construct - Transaction constructed. Open Bet (c36b65e3d4c105739d5c8cef470c0878d2e8da138416e09cb499edcec343c0b8) [open] -TX Construct - Constructing `MULTISIG` transaction from 2_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2. TX Construct - Transaction constructed. Order cancelled BTC / XCP (025ca2c1784ca3c9389b9f227a5a04445908337e21e2ef9411c890e20aff61c0) [expired] Open Bet (23f77ca0034c19aa841413edfde7f4a3dca8d8ef582ce939dfc2e170c7c811a1) [open] @@ -55,11 +41,9 @@ Backward Quantity: 20750000 Bet c36b65e3d4c105739d5c8cef470c0878d2e8da138416e09cb499edcec343c0b8 updated (23f77ca0034c19aa841413edfde7f4a3dca8d8ef582ce939dfc2e170c7c811a1) [open] Bet 23f77ca0034c19aa841413edfde7f4a3dca8d8ef582ce939dfc2e170c7c811a1 updated (23f77ca0034c19aa841413edfde7f4a3dca8d8ef582ce939dfc2e170c7c811a1) [filled] Bet match 13 for 41500000 XCP against 20750000 XCP on 2_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2 -TX Construct - Constructing `MULTISIG` transaction from 2_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2. TX Construct - Transaction constructed. Order cancelled XCP / BTC (c6881f7505bd7fe0742c2ce50490e21431705bf2df4368be43f423fa0c515aee) [expired] Open Bet (a5a1927a83521144a5aa751f61065b530c9447c5b2c35e35064de32dae9573fd) [open] -TX Construct - Constructing `MULTISIG` transaction from 2_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2. TX Construct - Transaction constructed. Open Bet (6aa4c5853aa9971d13c0291c4e91ee5cddd506521942377aca5c3b1a48780c75) [open] Considering: c36b65e3d4c105739d5c8cef470c0878d2e8da138416e09cb499edcec343c0b8 @@ -72,10 +56,8 @@ Backward Quantity: 350000000 Bet a5a1927a83521144a5aa751f61065b530c9447c5b2c35e35064de32dae9573fd updated (6aa4c5853aa9971d13c0291c4e91ee5cddd506521942377aca5c3b1a48780c75) [filled] Bet 6aa4c5853aa9971d13c0291c4e91ee5cddd506521942377aca5c3b1a48780c75 updated (6aa4c5853aa9971d13c0291c4e91ee5cddd506521942377aca5c3b1a48780c75) [filled] Bet match 15 for 150000000 XCP against 350000000 XCP on 2_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2 -TX Construct - Constructing `MULTISIG` transaction from 2_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2. TX Construct - Transaction constructed. Open Bet (91cea72c920a13cc450d14c92a81a318462300670308d6b1eb344ac06a72eda1) [open] -TX Construct - Constructing `MULTISIG` transaction from 2_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2. TX Construct - Transaction constructed. Open Bet (c345c2e6d9899c7729a0ca2ef13fab71ca5808854fb6be62e3b3dcd9225d1c4a) [open] Considering: 91cea72c920a13cc450d14c92a81a318462300670308d6b1eb344ac06a72eda1 @@ -86,28 +68,22 @@ Backward Quantity: 650000000 Bet 91cea72c920a13cc450d14c92a81a318462300670308d6b1eb344ac06a72eda1 updated (c345c2e6d9899c7729a0ca2ef13fab71ca5808854fb6be62e3b3dcd9225d1c4a) [filled] Bet c345c2e6d9899c7729a0ca2ef13fab71ca5808854fb6be62e3b3dcd9225d1c4a updated (c345c2e6d9899c7729a0ca2ef13fab71ca5808854fb6be62e3b3dcd9225d1c4a) [filled] Bet match 17 for 750000000 XCP against 650000000 XCP on 2_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2 -TX Construct - Constructing `MULTISIG` transaction from 2_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2. TX Construct - Transaction constructed. Broadcast from 2_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2 (c473921b7c5d877de55ef38b39935e149003d6fec701bea0c8b66b77255942d4) [valid] Bet Match c36b65e3d4c105739d5c8cef470c0878d2e8da138416e09cb499edcec343c0b8_23f77ca0034c19aa841413edfde7f4a3dca8d8ef582ce939dfc2e170c7c811a1 resolved Bet Match c36b65e3d4c105739d5c8cef470c0878d2e8da138416e09cb499edcec343c0b8_23f77ca0034c19aa841413edfde7f4a3dca8d8ef582ce939dfc2e170c7c811a1 updated [settled: liquidated for bear] -TX Construct - Constructing `MULTISIG` transaction from 2_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2. TX Construct - Transaction constructed. Broadcast from 2_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2 (c9388ea12ab42ec1502dbb54e2da81beca5adee6056777559200aab28e5e1dc0) [valid] Bet Match a5a1927a83521144a5aa751f61065b530c9447c5b2c35e35064de32dae9573fd_6aa4c5853aa9971d13c0291c4e91ee5cddd506521942377aca5c3b1a48780c75 resolved Bet Match a5a1927a83521144a5aa751f61065b530c9447c5b2c35e35064de32dae9573fd_6aa4c5853aa9971d13c0291c4e91ee5cddd506521942377aca5c3b1a48780c75 updated [settled] -TX Construct - Constructing `MULTISIG` transaction from 2_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2. TX Construct - Transaction constructed. Broadcast from 2_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2 (54292b0676d266705f8dd0daa1194cff3d16414564f25c422309af75d8ca344e) [valid] Bet Match 91cea72c920a13cc450d14c92a81a318462300670308d6b1eb344ac06a72eda1_c345c2e6d9899c7729a0ca2ef13fab71ca5808854fb6be62e3b3dcd9225d1c4a resolved Bet Match 91cea72c920a13cc450d14c92a81a318462300670308d6b1eb344ac06a72eda1_c345c2e6d9899c7729a0ca2ef13fab71ca5808854fb6be62e3b3dcd9225d1c4a updated [settled: for notequal] -TX Construct - Constructing `MULTISIG` transaction from 2_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2. TX Construct - Transaction constructed. Order opened for 50000000 BBBB at 2_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2 (6d3c6a9ea36e82a0e8162f69c68fc8bb95d316ad5586a30553fbaf1717f4121e) [open] -TX Construct - Constructing transaction from 2_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2. TX Construct - Transaction constructed. 2_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2 burned 38000000 BTC for 56999887262 XCP (df080a76ceb263201901bc23c85c3e8dce4eca0e72c873131adaf2f46820e9f1) [valid] -TX Construct - Constructing `MULTISIG` transaction from 2_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2. TX Construct - Transaction constructed. Bet c36b65e3d4c105739d5c8cef470c0878d2e8da138416e09cb499edcec343c0b8 canceled [expired] Bet Expiration c36b65e3d4c105739d5c8cef470c0878d2e8da138416e09cb499edcec343c0b8 diff --git a/counterparty-core/counterpartycore/test/fixtures/scenarios/multisig_2_of_3.log b/counterparty-core/counterpartycore/test/fixtures/scenarios/multisig_2_of_3.log index 083b7e4e63..e0994ae835 100644 --- a/counterparty-core/counterpartycore/test/fixtures/scenarios/multisig_2_of_3.log +++ b/counterparty-core/counterpartycore/test/fixtures/scenarios/multisig_2_of_3.log @@ -1,49 +1,35 @@ Creating connection to `:memory:`... Initializing database... -TX Construct - Constructing transaction from 2_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3. TX Construct - Transaction constructed. 2_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3 burned 62000000 BTC for 93000000000 XCP (15b35d5497f454c43576f21a1b61d99bde25dfc5aae1a4796dcf55e739d6a399) [valid] -TX Construct - Constructing `MULTISIG` transaction from 2_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3. TX Construct - Transaction constructed. Send XCP from 2_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3 to 2_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mqPCfvqTfYctXMUfmniXeG2nyaN8w6tPmj_3 (121285e4ce5c17fbd6e0b0277702af982cdc14054735154a9043beecb247b84f) [valid] -TX Construct - Constructing `MULTISIG` transaction from 2_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3. TX Construct - Transaction constructed. Order opened for 50000000 BTC at 2_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3 (c953eb18873ce8aed42456df0ece8e4678e13282d9917916e7a4aec10e828375) [open] -TX Construct - Constructing `MULTISIG` transaction from 2_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3. TX Construct - Transaction constructed. Order opened for 105000000 XCP at 2_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3 (89a44a3314b298a83d5d14c8646900a5122b8a1e8f6e0528e73ea82044d1726a) [open] Order match for 50000000 BTC against 100000000 XCP (c953eb18873ce8aed42456df0ece8e4678e13282d9917916e7a4aec10e828375_89a44a3314b298a83d5d14c8646900a5122b8a1e8f6e0528e73ea82044d1726a) [pending] Order match has only -10 confirmation(s). -TX Construct - Constructing `MULTISIG` transaction from 2_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3. TX Construct - Transaction constructed. BTC Pay for order match c953eb18873ce8aed42456df0ece8e4678e13282d9917916e7a4aec10e828375_89a44a3314b298a83d5d14c8646900a5122b8a1e8f6e0528e73ea82044d1726a (f0c58099c1614dcf2b8fd12be01c63427a5877b8c0367ecadea31ae9eb9714e6) [valid] -TX Construct - Constructing `MULTISIG` transaction from 2_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3. TX Construct - Transaction constructed. Issuance of 1000000000 BBBB by 2_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3 [9238105e39efd4b7d428ad14011ad0c0f366bdcd150afa954e1f25c0cf4c2cc9] (valid) -TX Construct - Constructing `MULTISIG` transaction from 2_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3. TX Construct - Transaction constructed. Issuance of 100000 BBBC by 2_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3 [19d9d6059edf351635fa19ad867ccfa1db3959a5109fc63729430110a661b6e8] (valid) -TX Construct - Constructing `MULTISIG` transaction from 2_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3. TX Construct - Transaction constructed. Send BBBB from 2_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3 to 2_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mqPCfvqTfYctXMUfmniXeG2nyaN8w6tPmj_3 (b25659252f68f162d96cf2cf3070b30e5913b472cbace76985e314b4634641a0) [valid] -TX Construct - Constructing `MULTISIG` transaction from 2_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3. TX Construct - Transaction constructed. Send BBBC from 2_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3 to 2_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mqPCfvqTfYctXMUfmniXeG2nyaN8w6tPmj_3 (592e248181970aa6f97f2cfe133323d3ffb2095dd7f411cfd20b1ab611238a11) [valid] Total quantity to be distributed in dividends: 0.00000024 XCP -TX Construct - Constructing `MULTISIG` transaction from 2_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3. TX Construct - Transaction constructed. Dividend of 600 XCP per unit of BBBB (f2f6db13d6bda4def4f1bd759b603c64c962f82017329057a9237ceaf171520a) [valid] Total quantity to be distributed in dividends: 0.004208 XCP -TX Construct - Constructing `MULTISIG` transaction from 2_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3. TX Construct - Transaction constructed. Dividend of 800 XCP per unit of BBBC (a4353c6bd3159d3288f76c9f40fdbde89d681b09ec64d1f2b422b2e9e30c10d8) [valid] -TX Construct - Constructing `MULTISIG` transaction from 2_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3. TX Construct - Transaction constructed. Broadcast from 2_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3 (9ec74a4822710f9534a3815f0e836a09219f6c766880a57767c7514071d99084) [valid] -TX Construct - Constructing `MULTISIG` transaction from 2_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3. TX Construct - Transaction constructed. Open Bet (ef92dc4986fdfb4ccb6e101ee949d5307c554e8dd1619307548ec032a973f19c) [open] -TX Construct - Constructing `MULTISIG` transaction from 2_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3. TX Construct - Transaction constructed. Order cancelled BTC / XCP (c953eb18873ce8aed42456df0ece8e4678e13282d9917916e7a4aec10e828375) [expired] Open Bet (ce9d3a5ea18ed454ddee80b75bd12abdd47de8e176d9c9dfc768c1233e729943) [open] @@ -55,11 +41,9 @@ Backward Quantity: 20750000 Bet ef92dc4986fdfb4ccb6e101ee949d5307c554e8dd1619307548ec032a973f19c updated (ce9d3a5ea18ed454ddee80b75bd12abdd47de8e176d9c9dfc768c1233e729943) [open] Bet ce9d3a5ea18ed454ddee80b75bd12abdd47de8e176d9c9dfc768c1233e729943 updated (ce9d3a5ea18ed454ddee80b75bd12abdd47de8e176d9c9dfc768c1233e729943) [filled] Bet match 13 for 41500000 XCP against 20750000 XCP on 2_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3 -TX Construct - Constructing `MULTISIG` transaction from 2_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3. TX Construct - Transaction constructed. Order cancelled XCP / BTC (89a44a3314b298a83d5d14c8646900a5122b8a1e8f6e0528e73ea82044d1726a) [expired] Open Bet (6722884208180367a60c5c96ae86865dad3c63525a9498d716e98b5015ec2e3d) [open] -TX Construct - Constructing `MULTISIG` transaction from 2_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3. TX Construct - Transaction constructed. Open Bet (10c669ad89d61e1a983e179f66f355b1dd21e53d520fd4dc3bb5a6f9e5e24fcd) [open] Considering: ef92dc4986fdfb4ccb6e101ee949d5307c554e8dd1619307548ec032a973f19c @@ -72,10 +56,8 @@ Backward Quantity: 350000000 Bet 6722884208180367a60c5c96ae86865dad3c63525a9498d716e98b5015ec2e3d updated (10c669ad89d61e1a983e179f66f355b1dd21e53d520fd4dc3bb5a6f9e5e24fcd) [filled] Bet 10c669ad89d61e1a983e179f66f355b1dd21e53d520fd4dc3bb5a6f9e5e24fcd updated (10c669ad89d61e1a983e179f66f355b1dd21e53d520fd4dc3bb5a6f9e5e24fcd) [filled] Bet match 15 for 150000000 XCP against 350000000 XCP on 2_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3 -TX Construct - Constructing `MULTISIG` transaction from 2_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3. TX Construct - Transaction constructed. Open Bet (caaceb9160747bd86fa4b3b4d090c9e1617285fae312eac2152bf3fabedcd2bc) [open] -TX Construct - Constructing `MULTISIG` transaction from 2_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3. TX Construct - Transaction constructed. Open Bet (67497105b77192af401ec8024ad34de211592877dee8532dbe216d8a8f17dd0c) [open] Considering: caaceb9160747bd86fa4b3b4d090c9e1617285fae312eac2152bf3fabedcd2bc @@ -86,28 +68,22 @@ Backward Quantity: 650000000 Bet caaceb9160747bd86fa4b3b4d090c9e1617285fae312eac2152bf3fabedcd2bc updated (67497105b77192af401ec8024ad34de211592877dee8532dbe216d8a8f17dd0c) [filled] Bet 67497105b77192af401ec8024ad34de211592877dee8532dbe216d8a8f17dd0c updated (67497105b77192af401ec8024ad34de211592877dee8532dbe216d8a8f17dd0c) [filled] Bet match 17 for 750000000 XCP against 650000000 XCP on 2_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3 -TX Construct - Constructing `MULTISIG` transaction from 2_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3. TX Construct - Transaction constructed. Broadcast from 2_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3 (e87bf8dfeda7df143873ff042cc7a05dd590a6bef6a55c5832e22db1bd5e3bcd) [valid] Bet Match ef92dc4986fdfb4ccb6e101ee949d5307c554e8dd1619307548ec032a973f19c_ce9d3a5ea18ed454ddee80b75bd12abdd47de8e176d9c9dfc768c1233e729943 resolved Bet Match ef92dc4986fdfb4ccb6e101ee949d5307c554e8dd1619307548ec032a973f19c_ce9d3a5ea18ed454ddee80b75bd12abdd47de8e176d9c9dfc768c1233e729943 updated [settled: liquidated for bear] -TX Construct - Constructing `MULTISIG` transaction from 2_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3. TX Construct - Transaction constructed. Broadcast from 2_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3 (1fcd2de64aabc6c05796e28cbea31df45a25928c2cd8dd30d774c9e70c4e97df) [valid] Bet Match 6722884208180367a60c5c96ae86865dad3c63525a9498d716e98b5015ec2e3d_10c669ad89d61e1a983e179f66f355b1dd21e53d520fd4dc3bb5a6f9e5e24fcd resolved Bet Match 6722884208180367a60c5c96ae86865dad3c63525a9498d716e98b5015ec2e3d_10c669ad89d61e1a983e179f66f355b1dd21e53d520fd4dc3bb5a6f9e5e24fcd updated [settled] -TX Construct - Constructing `MULTISIG` transaction from 2_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3. TX Construct - Transaction constructed. Broadcast from 2_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3 (dc4b57ad8a0b23dbc7ffc03f51e8076cd2418edf256b2660783bb0d1be0b8b73) [valid] Bet Match caaceb9160747bd86fa4b3b4d090c9e1617285fae312eac2152bf3fabedcd2bc_67497105b77192af401ec8024ad34de211592877dee8532dbe216d8a8f17dd0c resolved Bet Match caaceb9160747bd86fa4b3b4d090c9e1617285fae312eac2152bf3fabedcd2bc_67497105b77192af401ec8024ad34de211592877dee8532dbe216d8a8f17dd0c updated [settled: for notequal] -TX Construct - Constructing `MULTISIG` transaction from 2_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3. TX Construct - Transaction constructed. Order opened for 50000000 BBBB at 2_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3 (4408350196e71533e054ef84d1bdc4ba4b0f693d2d98d240d3c697b553078ab7) [open] -TX Construct - Constructing transaction from 2_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3. TX Construct - Transaction constructed. 2_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3 burned 38000000 BTC for 56999887262 XCP (181709b341ec136f90975fdaa362c767ebd789e72f16d4e17348ab2985c1bd01) [valid] -TX Construct - Constructing `MULTISIG` transaction from 2_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3. TX Construct - Transaction constructed. Bet ef92dc4986fdfb4ccb6e101ee949d5307c554e8dd1619307548ec032a973f19c canceled [expired] Bet Expiration ef92dc4986fdfb4ccb6e101ee949d5307c554e8dd1619307548ec032a973f19c diff --git a/counterparty-core/counterpartycore/test/fixtures/scenarios/multisig_3_of_3.log b/counterparty-core/counterpartycore/test/fixtures/scenarios/multisig_3_of_3.log index 8dd5c15504..614057c588 100644 --- a/counterparty-core/counterpartycore/test/fixtures/scenarios/multisig_3_of_3.log +++ b/counterparty-core/counterpartycore/test/fixtures/scenarios/multisig_3_of_3.log @@ -1,49 +1,35 @@ Creating connection to `:memory:`... Initializing database... -TX Construct - Constructing transaction from 3_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3. TX Construct - Transaction constructed. 3_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3 burned 62000000 BTC for 93000000000 XCP (c9ff1be2579378fad6d83ca87e6c91428b1eb8cfd1b0f341b3c7e452764404f5) [valid] -TX Construct - Constructing `MULTISIG` transaction from 3_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3. TX Construct - Transaction constructed. Send XCP from 3_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3 to 3_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mqPCfvqTfYctXMUfmniXeG2nyaN8w6tPmj_3 (8968369ff47b1f5f6959aa67aca82d1385f3763e1cac2180d8cf41b44a515a32) [valid] -TX Construct - Constructing `MULTISIG` transaction from 3_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3. TX Construct - Transaction constructed. Order opened for 50000000 BTC at 3_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3 (1385519ca199f1b39bb89caac062fe3a342f18e393d301d7a56c150a8ab84093) [open] -TX Construct - Constructing `MULTISIG` transaction from 3_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3. TX Construct - Transaction constructed. Order opened for 105000000 XCP at 3_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3 (a2e93083b871e68cb89e216f9a99c4c6aea1eb92cbdbafc5b4b0e160c19c517e) [open] Order match for 50000000 BTC against 100000000 XCP (1385519ca199f1b39bb89caac062fe3a342f18e393d301d7a56c150a8ab84093_a2e93083b871e68cb89e216f9a99c4c6aea1eb92cbdbafc5b4b0e160c19c517e) [pending] Order match has only -10 confirmation(s). -TX Construct - Constructing `MULTISIG` transaction from 3_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3. TX Construct - Transaction constructed. BTC Pay for order match 1385519ca199f1b39bb89caac062fe3a342f18e393d301d7a56c150a8ab84093_a2e93083b871e68cb89e216f9a99c4c6aea1eb92cbdbafc5b4b0e160c19c517e (06448effa4c26f1101b315b2dbe3d2b7b888ca18f5755f4365c97215a6c760ac) [valid] -TX Construct - Constructing `MULTISIG` transaction from 3_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3. TX Construct - Transaction constructed. Issuance of 1000000000 BBBB by 3_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3 [57b34dae586111eefeecae4d16f6d20d6447efa974b72931f7b2cd0f39890406] (valid) -TX Construct - Constructing `MULTISIG` transaction from 3_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3. TX Construct - Transaction constructed. Issuance of 100000 BBBC by 3_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3 [6163ab5e7282e43a2f07a146d28b4b45c55820ee541881bc98d2592f4e6ba975] (valid) -TX Construct - Constructing `MULTISIG` transaction from 3_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3. TX Construct - Transaction constructed. Send BBBB from 3_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3 to 3_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mqPCfvqTfYctXMUfmniXeG2nyaN8w6tPmj_3 (8972d4a117a0c4161ddf2bcdeb3877e0ad4cbf9cb5ce2be3411c69eedc9f718b) [valid] -TX Construct - Constructing `MULTISIG` transaction from 3_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3. TX Construct - Transaction constructed. Send BBBC from 3_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3 to 3_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mqPCfvqTfYctXMUfmniXeG2nyaN8w6tPmj_3 (3f49e685b22a7cd1a4d20bb7ca9a3f1ec4e593bc6e60c67037de2aab8b992391) [valid] Total quantity to be distributed in dividends: 0.00000024 XCP -TX Construct - Constructing `MULTISIG` transaction from 3_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3. TX Construct - Transaction constructed. Dividend of 600 XCP per unit of BBBB (6aa6c552e5a302b056768aed88aa8da6e9f78def669d5203904719e15ff1ac29) [valid] Total quantity to be distributed in dividends: 0.004208 XCP -TX Construct - Constructing `MULTISIG` transaction from 3_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3. TX Construct - Transaction constructed. Dividend of 800 XCP per unit of BBBC (8606cbcb3aaa438e207e9ef279191f6f100e34d479b1985268525e32a91c953e) [valid] -TX Construct - Constructing `MULTISIG` transaction from 3_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3. TX Construct - Transaction constructed. Broadcast from 3_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3 (47a25bd63a47c61ca2709279bb5c1dc8695f0e93926bf659038be64e6a1c4060) [valid] -TX Construct - Constructing `MULTISIG` transaction from 3_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3. TX Construct - Transaction constructed. Open Bet (5c49e06f8ddf9cc0f83541550664bb00075a2f01df493278097066462497af16) [open] -TX Construct - Constructing `MULTISIG` transaction from 3_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3. TX Construct - Transaction constructed. Order cancelled BTC / XCP (1385519ca199f1b39bb89caac062fe3a342f18e393d301d7a56c150a8ab84093) [expired] Open Bet (813e45480753e39c6ea548efd6b77f830120a41ac3b9bd37a4470b14e83301a3) [open] @@ -55,11 +41,9 @@ Backward Quantity: 20750000 Bet 5c49e06f8ddf9cc0f83541550664bb00075a2f01df493278097066462497af16 updated (813e45480753e39c6ea548efd6b77f830120a41ac3b9bd37a4470b14e83301a3) [open] Bet 813e45480753e39c6ea548efd6b77f830120a41ac3b9bd37a4470b14e83301a3 updated (813e45480753e39c6ea548efd6b77f830120a41ac3b9bd37a4470b14e83301a3) [filled] Bet match 13 for 41500000 XCP against 20750000 XCP on 3_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3 -TX Construct - Constructing `MULTISIG` transaction from 3_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3. TX Construct - Transaction constructed. Order cancelled XCP / BTC (a2e93083b871e68cb89e216f9a99c4c6aea1eb92cbdbafc5b4b0e160c19c517e) [expired] Open Bet (33fdca6b108f99ffb56d590f55f9d19c7d16fe83c096b9fbbf71eabeda826a41) [open] -TX Construct - Constructing `MULTISIG` transaction from 3_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3. TX Construct - Transaction constructed. Open Bet (22375d61ad5cb70e45ca8843ccffa0abe11b028351352d5da874d246c834ab6f) [open] Considering: 5c49e06f8ddf9cc0f83541550664bb00075a2f01df493278097066462497af16 @@ -72,10 +56,8 @@ Backward Quantity: 350000000 Bet 33fdca6b108f99ffb56d590f55f9d19c7d16fe83c096b9fbbf71eabeda826a41 updated (22375d61ad5cb70e45ca8843ccffa0abe11b028351352d5da874d246c834ab6f) [filled] Bet 22375d61ad5cb70e45ca8843ccffa0abe11b028351352d5da874d246c834ab6f updated (22375d61ad5cb70e45ca8843ccffa0abe11b028351352d5da874d246c834ab6f) [filled] Bet match 15 for 150000000 XCP against 350000000 XCP on 3_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3 -TX Construct - Constructing `MULTISIG` transaction from 3_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3. TX Construct - Transaction constructed. Open Bet (5e0cd8d81531e656dc3a4ae4b7edfd1bec48e455ed0bd69a4a3c22c0c08bbede) [open] -TX Construct - Constructing `MULTISIG` transaction from 3_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3. TX Construct - Transaction constructed. Open Bet (07d3cbac831b5edb261b1445071e307949d7825565b8d5c8cba1d720d5c7ab4a) [open] Considering: 5e0cd8d81531e656dc3a4ae4b7edfd1bec48e455ed0bd69a4a3c22c0c08bbede @@ -86,28 +68,22 @@ Backward Quantity: 650000000 Bet 5e0cd8d81531e656dc3a4ae4b7edfd1bec48e455ed0bd69a4a3c22c0c08bbede updated (07d3cbac831b5edb261b1445071e307949d7825565b8d5c8cba1d720d5c7ab4a) [filled] Bet 07d3cbac831b5edb261b1445071e307949d7825565b8d5c8cba1d720d5c7ab4a updated (07d3cbac831b5edb261b1445071e307949d7825565b8d5c8cba1d720d5c7ab4a) [filled] Bet match 17 for 750000000 XCP against 650000000 XCP on 3_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3 -TX Construct - Constructing `MULTISIG` transaction from 3_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3. TX Construct - Transaction constructed. Broadcast from 3_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3 (5a057227535fcb5aeaf56ec919321667cc45f4fa7d11bf940d22abaad909cd66) [valid] Bet Match 5c49e06f8ddf9cc0f83541550664bb00075a2f01df493278097066462497af16_813e45480753e39c6ea548efd6b77f830120a41ac3b9bd37a4470b14e83301a3 resolved Bet Match 5c49e06f8ddf9cc0f83541550664bb00075a2f01df493278097066462497af16_813e45480753e39c6ea548efd6b77f830120a41ac3b9bd37a4470b14e83301a3 updated [settled: liquidated for bear] -TX Construct - Constructing `MULTISIG` transaction from 3_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3. TX Construct - Transaction constructed. Broadcast from 3_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3 (0baab7280b14d7d8597dc5f570682654fac0453b0b4c374d45cef3d21a7ceb17) [valid] Bet Match 33fdca6b108f99ffb56d590f55f9d19c7d16fe83c096b9fbbf71eabeda826a41_22375d61ad5cb70e45ca8843ccffa0abe11b028351352d5da874d246c834ab6f resolved Bet Match 33fdca6b108f99ffb56d590f55f9d19c7d16fe83c096b9fbbf71eabeda826a41_22375d61ad5cb70e45ca8843ccffa0abe11b028351352d5da874d246c834ab6f updated [settled] -TX Construct - Constructing `MULTISIG` transaction from 3_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3. TX Construct - Transaction constructed. Broadcast from 3_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3 (2b39f99114417cb4857c8c2c671b4bc3bc8b3e52865daa91a49ea6d9bdfb6402) [valid] Bet Match 5e0cd8d81531e656dc3a4ae4b7edfd1bec48e455ed0bd69a4a3c22c0c08bbede_07d3cbac831b5edb261b1445071e307949d7825565b8d5c8cba1d720d5c7ab4a resolved Bet Match 5e0cd8d81531e656dc3a4ae4b7edfd1bec48e455ed0bd69a4a3c22c0c08bbede_07d3cbac831b5edb261b1445071e307949d7825565b8d5c8cba1d720d5c7ab4a updated [settled: for notequal] -TX Construct - Constructing `MULTISIG` transaction from 3_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3. TX Construct - Transaction constructed. Order opened for 50000000 BBBB at 3_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3 (19c6fe5cbf0be99ff3d469077e866e0f9fdc56901824b7fec89b0b523526e323) [open] -TX Construct - Constructing transaction from 3_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3. TX Construct - Transaction constructed. 3_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3 burned 38000000 BTC for 56999887262 XCP (3739350ed4c86474468cb1fed825b1ef141304d638b298867d0b2ae58c509c22) [valid] -TX Construct - Constructing `MULTISIG` transaction from 3_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_3. TX Construct - Transaction constructed. Bet 5c49e06f8ddf9cc0f83541550664bb00075a2f01df493278097066462497af16 canceled [expired] Bet Expiration 5c49e06f8ddf9cc0f83541550664bb00075a2f01df493278097066462497af16 diff --git a/counterparty-core/counterpartycore/test/fixtures/scenarios/parseblock_unittest_fixture.log b/counterparty-core/counterpartycore/test/fixtures/scenarios/parseblock_unittest_fixture.log index 4a38a98ae5..0749fc2e6a 100644 --- a/counterparty-core/counterpartycore/test/fixtures/scenarios/parseblock_unittest_fixture.log +++ b/counterparty-core/counterpartycore/test/fixtures/scenarios/parseblock_unittest_fixture.log @@ -1,67 +1,46 @@ Creating connection to `:memory:`... Initializing database... -TX Construct - Constructing transaction from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc. TX Construct - Transaction constructed. mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc burned 62000000 BTC for 93000000000 XCP (6dc5b0a33d4d4297e0f5cc2d23ae307951d32aab2d86b7fa147b385219f3a597) [valid] -TX Construct - Constructing `MULTISIG` transaction from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc. TX Construct - Transaction constructed. Issuance of 100000000000 DIVISIBLE by mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc [1fc2e5a57f584b2f2edd05676e75c33d03eed1d3098cc0550ea33474e3ec9db1] (valid) -TX Construct - Constructing `MULTISIG` transaction from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc. TX Construct - Transaction constructed. Issuance of 1000 NODIVISIBLE by mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc [7b1bf5144346279271b1ff78664f118224fe27fd8679d6c1519345f9c6c54584] (valid) -TX Construct - Constructing `MULTISIG` transaction from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc. TX Construct - Transaction constructed. Issuance of 1000 CALLABLE by mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc [c26f3a0c4e57e41919ff27aae95a9a9d4d65d34c6da6f1893884a17c8d407140] (valid) -TX Construct - Constructing `MULTISIG` transaction from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc. TX Construct - Transaction constructed. Issuance of 1000 LOCKED by mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc [90b5734be98b0f2a0bd4b6a269c8db3368e2e387bb890ade239951d05423b4da] (valid) -TX Construct - Constructing `MULTISIG` transaction from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc. TX Construct - Transaction constructed. Issuance of 0 LOCKED by mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc [344dcc8909ca3a137630726d0071dfd2df4f7c855bac150c7d3a8367835c90bc] (valid) -TX Construct - Constructing `MULTISIG` transaction from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc. TX Construct - Transaction constructed. Order opened for 100000000 XCP at mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc (4f0433ba841038e2e16328445930dd7bca35309b14b0da4451c8f94c631368b8) [open] -TX Construct - Constructing `MULTISIG` transaction from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc. TX Construct - Transaction constructed. Send DIVISIBLE from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc to mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns (6e91ae23de2035e3e28c3322712212333592a1f666bcff9dd91aec45d5ea2753) [valid] -TX Construct - Constructing `MULTISIG` transaction from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc. TX Construct - Transaction constructed. Send XCP from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc to mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns (4fd55abadfdbe77c3bda2431749cca934a29994a179620a62c1b57f28bd62a43) [valid] -TX Construct - Constructing `MULTISIG` transaction from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc. TX Construct - Transaction constructed. BUMP TXID 4f0433ba841038e2e16328445930dd7bca35309b14b0da4451c8f94c631368b8 Order opened for 100000000 XCP at mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc (21460d5c07284f9be9baf824927d0d4e4eb790e297f3162305841607b672349b) [open] -TX Construct - Constructing `MULTISIG` transaction from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc. TX Construct - Transaction constructed. Order opened for 100000000 XCP at mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc (1899b2e6ec36ba4bc9d035e6640b0a62b08c3a147c77c89183a77d9ed9081b3a) [open] -TX Construct - Constructing `MULTISIG` transaction from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc. TX Construct - Transaction constructed. Order opened for 666667 BTC at mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc (a1768d7db2db3b9732b26df8c04db4b9a8535a1e5cf684a680e81e7c06f394b6) [open] -TX Construct - Constructing `MULTISIG` transaction from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc. TX Construct - Transaction constructed. Send XCP from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc to 1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2 (698e97e507da8623cf38ab42701853443c8f7fe0d93b4674aabb42f9800ee9d6) [valid] -TX Construct - Constructing `MULTISIG` transaction from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc. TX Construct - Transaction constructed. Send DIVISIBLE from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc to 1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2 (0cfeeb559ed794d067557df0376a6c213b48b174b80cdb2c3c6d365cf538e132) [valid] -TX Construct - Constructing `MULTISIG` transaction from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc. TX Construct - Transaction constructed. Send NODIVISIBLE from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc to mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns (1facb0072f16f6bdca64ea859c82b850f58f0ec7ff410d901679772a4727515a) [valid] -TX Construct - Constructing `MULTISIG` transaction from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc. TX Construct - Transaction constructed. Send NODIVISIBLE from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc to 1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2 (e3b6667b7baa515048a7fcf2be7818e3e7622371236b78e19b4b08e2d7e7818c) [valid] -TX Construct - Constructing `MULTISIG` transaction from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc. TX Construct - Transaction constructed. Issuance of 9223372036854775807 MAXI by mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc [bd4e9cbbe69c2db893cd32182a2d315c89c45ba4e31aa5775d1fe42d841cea39] (valid) -TX Construct - Constructing `MULTISIG` transaction from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc. TX Construct - Transaction constructed. Broadcast from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc (d14388b74b63d93e4477b1fe8426028bb8ab20656703e3ce8deeb23c2fe0b8af) [valid] -TX Construct - Constructing `MULTISIG` transaction from mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH. TX Construct - Transaction constructed. Broadcast from mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH (f9e0527c85a9084d7eda91fc30a49993370d029efea031a8ccccdf846146a660) [valid] -TX Construct - Constructing `MULTISIG` transaction from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc. TX Construct - Transaction constructed. Open Bet (2a2169991597036b6dad687ea1feffd55465a204466f40c35cbba811cb3109b1) [open] -TX Construct - Constructing `MULTISIG` transaction from mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns. TX Construct - Transaction constructed. Open Bet (5c6562ddad0bc8a1faaded18813a65522cd273709acd190cf9d3271817eefc93) [open] Considering: 2a2169991597036b6dad687ea1feffd55465a204466f40c35cbba811cb3109b1 @@ -72,136 +51,93 @@ Backward Quantity: 9 Bet 2a2169991597036b6dad687ea1feffd55465a204466f40c35cbba811cb3109b1 updated (5c6562ddad0bc8a1faaded18813a65522cd273709acd190cf9d3271817eefc93) [filled] Bet 5c6562ddad0bc8a1faaded18813a65522cd273709acd190cf9d3271817eefc93 updated (5c6562ddad0bc8a1faaded18813a65522cd273709acd190cf9d3271817eefc93) [filled] Bet match 20 for 9 XCP against 9 XCP on mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc -TX Construct - Constructing `MULTISIG` transaction from mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns. TX Construct - Transaction constructed. Open Bet (db4ea092bea6036e3d1e5f6ec863db9b900252b4f4d6d9faa6165323f433c51e) [open] -TX Construct - Constructing `MULTISIG` transaction from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc. TX Construct - Transaction constructed. Broadcast from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc (16462eac6c795cea6e5985ee063867d8c61ae24373df02048186d28118d25bae) [valid] Bet Match 2a2169991597036b6dad687ea1feffd55465a204466f40c35cbba811cb3109b1_5c6562ddad0bc8a1faaded18813a65522cd273709acd190cf9d3271817eefc93 resolved Bet Match 2a2169991597036b6dad687ea1feffd55465a204466f40c35cbba811cb3109b1_5c6562ddad0bc8a1faaded18813a65522cd273709acd190cf9d3271817eefc93 updated [settled] -TX Construct - Constructing transaction from myAtcJEHAsDLbTkai6ipWDZeeL7VkxXsiM. TX Construct - Transaction constructed. myAtcJEHAsDLbTkai6ipWDZeeL7VkxXsiM burned 62000000 BTC for 92999138821 XCP (65d4048700fb8ae03f321be93c6669b8497f506a1f43920f96d994f43358c35b) [valid] -TX Construct - Constructing transaction from munimLLHjPhGeSU5rYB2HN79LJa8bRZr5b. TX Construct - Transaction constructed. munimLLHjPhGeSU5rYB2HN79LJa8bRZr5b burned 62000000 BTC for 92999130460 XCP (95332a7e3e2b04f2c10e3027327bfc31b686947fb05381e28903e3ff569bd4ff) [valid] -TX Construct - Constructing transaction from mwtPsLQxW9xpm7gdLmwWvJK5ABdPUVJm42. TX Construct - Transaction constructed. mwtPsLQxW9xpm7gdLmwWvJK5ABdPUVJm42 burned 62000000 BTC for 92999122099 XCP (e062d1ebf4cb71bd22d80c949b956f5286080838a7607ccf87945b2b3abfcafa) [valid] -TX Construct - Constructing transaction from mrPk7hTeZWjjSCrMTC2ET4SAUThQt7C4uK. TX Construct - Transaction constructed. mrPk7hTeZWjjSCrMTC2ET4SAUThQt7C4uK burned 10000 BTC for 14999857 XCP (bbf0b9f6992755a3e371fb0c0b72f6828831e81c6f7ada6f95ba1104fb901ac3) [valid] -TX Construct - Constructing `OPRETURN` transaction from munimLLHjPhGeSU5rYB2HN79LJa8bRZr5b. TX Construct - Transaction constructed. Dispenser opened for XCP at munimLLHjPhGeSU5rYB2HN79LJa8bRZr5b (9834219d2825b4d85ca7ee0d75a5372d9d42ce75eb9144951fca1af5a25915ec) [valid] -TX Construct - Constructing transaction from 2MyJHMUenMWonC35Yi6PHC7i2tkS7PuomCy. TX Construct - Transaction constructed. 2MyJHMUenMWonC35Yi6PHC7i2tkS7PuomCy burned 31000000 BTC for 46499548508 XCP (93c6d2499a0536c31c77a3db3fc9fc8456fbd0726c45b8f716af16f938727a73) [valid] -TX Construct - Constructing `MULTISIG` transaction from 2MyJHMUenMWonC35Yi6PHC7i2tkS7PuomCy. TX Construct - Transaction constructed. Issuance of 1000 PAYTOSCRIPT by 2MyJHMUenMWonC35Yi6PHC7i2tkS7PuomCy [e8baf787b9e4636a3cad0ffeb62992ad7abb160dc6506af0546f566dc178de7e] (valid) -TX Construct - Constructing `MULTISIG` transaction from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc. TX Construct - Transaction constructed. Send DIVISIBLE from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc to 2MyJHMUenMWonC35Yi6PHC7i2tkS7PuomCy (f6a0f819e899b407cbfa07b4eff3d58902af3899abfbaa47d5f31d5b398e76e7) [valid] -TX Construct - Constructing `OPRETURN` transaction from 2MyJHMUenMWonC35Yi6PHC7i2tkS7PuomCy. TX Construct - Transaction constructed. Broadcast from 2MyJHMUenMWonC35Yi6PHC7i2tkS7PuomCy (510f6feb902159622d83f64eae590a4fec88989869a20caf5804c313aa5e0186) [valid] -TX Construct - Constructing `OPRETURN` transaction from 2MyJHMUenMWonC35Yi6PHC7i2tkS7PuomCy. TX Construct - Transaction constructed. Open Bet (d79b590e4ec3e74cbc3eb4d0f956ce7abb0e3af2ccac85ff90ed8acf13f2e048) [open] -TX Construct - Constructing `MULTISIG` transaction from mwtPsLQxW9xpm7gdLmwWvJK5ABdPUVJm42. TX Construct - Transaction constructed. Issuance of 1000 LOCKEDPREV by mwtPsLQxW9xpm7gdLmwWvJK5ABdPUVJm42 [34bce6f409758b3d6fd13282a99b277ef1fdf44a1025d2901075cac0249dbc63] (valid) -TX Construct - Constructing `MULTISIG` transaction from mwtPsLQxW9xpm7gdLmwWvJK5ABdPUVJm42. TX Construct - Transaction constructed. Issuance of 0 LOCKEDPREV by mwtPsLQxW9xpm7gdLmwWvJK5ABdPUVJm42 [025b810fce7735c5869b90846007e5f604f60c1beda4c1695f1c7fbec3d44bc2] (valid) -TX Construct - Constructing `MULTISIG` transaction from mwtPsLQxW9xpm7gdLmwWvJK5ABdPUVJm42. TX Construct - Transaction constructed. Issuance of 0 LOCKEDPREV by mwtPsLQxW9xpm7gdLmwWvJK5ABdPUVJm42 [4ab1a24283c1dbfc710be7b215d64e8a4510ee97af019e210049c25773b50beb] (valid) -TX Construct - Constructing transaction from tb1qw508d6qejxtdg4y5r3zarvary0c5xw7kxpjzsx. TX Construct - Transaction constructed. tb1qw508d6qejxtdg4y5r3zarvary0c5xw7kxpjzsx burned 62000000 BTC for 92999030129 XCP (27929c4fcad307a76ea7da34dd2691084f678a22ee43ce7f3842b78730ee08f9) [valid] -TX Construct - Constructing `OPRETURN` transaction from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc. TX Construct - Transaction constructed. Send (Enhanced) XCP from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc to mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns (b00bdf03402d81a2cbdbeac4b0df90cff5ab6bf9688f653383d49fe42b8422a5) [valid] -TX Construct - Constructing `OPRETURN` transaction from mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns. TX Construct - Transaction constructed. Send (Enhanced) XCP from mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns to mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc (c8716524f33646b9af94d6f5e52494ff3b34466497094b1db2ab920e4f79bc34) [valid] -TX Construct - Constructing `MULTISIG` transaction from myAtcJEHAsDLbTkai6ipWDZeeL7VkxXsiM. TX Construct - Transaction constructed. Broadcast from myAtcJEHAsDLbTkai6ipWDZeeL7VkxXsiM (3b95e07a2194174ac020de27e8b2b6ee24d5fc120f118df516ba28495657cf14) [valid] -TX Construct - Constructing `MULTISIG` transaction from myAtcJEHAsDLbTkai6ipWDZeeL7VkxXsiM. TX Construct - Transaction constructed. Open Bet (41e821ae1c6b553d0fa5d5a807b2e7e9ffaec5d62706d9d2a59c6e65a3ed9cef) [open] -TX Construct - Constructing `MULTISIG` transaction from myAtcJEHAsDLbTkai6ipWDZeeL7VkxXsiM. TX Construct - Transaction constructed. Broadcast from myAtcJEHAsDLbTkai6ipWDZeeL7VkxXsiM (870fb08b373705423f31ccd91fdbcabe135ad92d74e709a959dfa2e12f9a6638) [valid] -TX Construct - Constructing `MULTISIG` transaction from myAtcJEHAsDLbTkai6ipWDZeeL7VkxXsiM. TX Construct - Transaction constructed. Broadcast from myAtcJEHAsDLbTkai6ipWDZeeL7VkxXsiM (685d7f99fa76a05201c3239a4e0d9060ea53307b171f6ad7d482a26c73e9c0d1) [valid] -TX Construct - Constructing `MULTISIG` transaction from mwtPsLQxW9xpm7gdLmwWvJK5ABdPUVJm42. TX Construct - Transaction constructed. Broadcast from mwtPsLQxW9xpm7gdLmwWvJK5ABdPUVJm42 (7c437705c315212315c85c0b8ba09d358679c91be20b54f30929c5a6052426af) [valid] -TX Construct - Constructing `MULTISIG` transaction from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc. TX Construct - Transaction constructed. Order opened for 100000000 XCP at mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc (74db175c4669a3d3a59e3fcddce9e97fcd7d12c35b58ef31845a1b20a1739498) [open] -TX Construct - Constructing `MULTISIG` transaction from mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns. TX Construct - Transaction constructed. Order opened for 800000 BTC at mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns (1b294dd8592e76899b1c106782e4c96e63114abd8e3fa09ab6d2d52496b5bf81) [open] Order match for 100000000 XCP against 800000 BTC (74db175c4669a3d3a59e3fcddce9e97fcd7d12c35b58ef31845a1b20a1739498_1b294dd8592e76899b1c106782e4c96e63114abd8e3fa09ab6d2d52496b5bf81) [pending] -TX Construct - Constructing transaction from mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH. TX Construct - Transaction constructed. mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH burned 62000000 BTC for 92995878046 XCP (c0733e1287afb1bb3d2fdacd1db7c74ea84f14362f3a8d1c038e662e1d0b1b1a) [valid] -TX Construct - Constructing `MULTISIG` transaction from mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH. TX Construct - Transaction constructed. Issuance of 100 DIVIDEND by mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH [321bed395482e034f2ce0a4dbf28d1f800592a658e26ea91ae9c5b0928204503] (valid) -TX Construct - Constructing `MULTISIG` transaction from mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH. TX Construct - Transaction constructed. Send DIVIDEND from mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH to mqPCfvqTfYctXMUfmniXeG2nyaN8w6tPmj (02156b9a1f643fb48330396274a37620c8abbbe5eddb2f8b53dadd135f5d2e2e) [valid] -TX Construct - Constructing `MULTISIG` transaction from mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH. TX Construct - Transaction constructed. Send XCP from mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH to mqPCfvqTfYctXMUfmniXeG2nyaN8w6tPmj (a35ab1736565aceddbd1d71f92fc7f39d1361006aa9099f731e54e762964d5ba) [valid] -TX Construct - Constructing `OPRETURN` transaction from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc. TX Construct - Transaction constructed. Issuance of 100000000 PARENT by mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc [076ae3d8eeb7fb40d2ae27692340157c746d9832806766b0dac5adb1526dc78f] (valid) -TX Construct - Constructing `OPRETURN` transaction from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc. TX Construct - Transaction constructed. Issuance of 100000000 A95428956661682277 by mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc [0abfce2662c05852fd8b181a60900678643cedad47b23a853b8c4eda82cb2cbf] (valid) -TX Construct - Constructing `OPRETURN` transaction from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc. TX Construct - Transaction constructed. Fair minter opened for FREEFAIRMIN by mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc. -TX Construct - Constructing `OPRETURN` transaction from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc. TX Construct - Transaction constructed. Fair minter opened for PAIDFAIRMIN by mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc. -TX Construct - Constructing `OPRETURN` transaction from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc. TX Construct - Transaction constructed. 10 FREEFAIRMIN minted for 0 XCP by mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc -TX Construct - Constructing `OPRETURN` transaction from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc. TX Construct - Transaction constructed. Fair minter opened for RAIDFAIRMIN by mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc. -TX Construct - Constructing `OPRETURN` transaction from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc. TX Construct - Transaction constructed. Fair minter opened for QAIDFAIRMIN by mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc. -TX Construct - Constructing `MULTISIG` transaction from mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns. TX Construct - Transaction constructed. Fair minter opened for A160361285792733729 by mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns. -TX Construct - Constructing `OPRETURN` transaction from mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns. TX Construct - Transaction constructed. 10 A160361285792733729 minted for 100 XCP by mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns -TX Construct - Constructing `OPRETURN` transaction from mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns. TX Construct - Transaction constructed. 20 A160361285792733729 minted for 200 XCP by mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns -TX Construct - Constructing `MULTISIG` transaction from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc. TX Construct - Transaction constructed. Attach XCP from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc to utxo: 4f0433ba841038e2e16328445930dd7bca35309b14b0da4451c8f94c631368b8:1 (9d2243c84df0132061884dfce73f3b7c5262a1cde0d029de472a079f3a1c4883) [valid] -TX Construct - Constructing `MULTISIG` transaction from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc. TX Construct - Transaction constructed. Attach DIVISIBLE from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc to utxo: 4f0433ba841038e2e16328445930dd7bca35309b14b0da4451c8f94c631368b8:1 (ff23dc6911d401e9868b8ac747d31febc2078f004eff7b56a8895c107ed8a73e) [valid] -TX Construct - Constructing `MULTISIG` transaction from munimLLHjPhGeSU5rYB2HN79LJa8bRZr5b. TX Construct - Transaction constructed. Issuance of 1000 TESTDISP by munimLLHjPhGeSU5rYB2HN79LJa8bRZr5b [01e52e3770a932827a4b4e5db193eef916fcf69bda1a7944298210a74f1633a1] (valid) -TX Construct - Constructing `OPRETURN` transaction from munimLLHjPhGeSU5rYB2HN79LJa8bRZr5b. TX Construct - Transaction constructed. Dispenser opened for TESTDISP at munimLLHjPhGeSU5rYB2HN79LJa8bRZr5b (af67f6762d4b00b4bf5fb93a9d556e007a147aa80fbf6a84410df05a0182da9e) [valid] Order match cancelled XCP / BTC (74db175c4669a3d3a59e3fcddce9e97fcd7d12c35b58ef31845a1b20a1739498_1b294dd8592e76899b1c106782e4c96e63114abd8e3fa09ab6d2d52496b5bf81) [expired] diff --git a/counterparty-core/counterpartycore/test/fixtures/scenarios/simplesig.log b/counterparty-core/counterpartycore/test/fixtures/scenarios/simplesig.log index 3ef05839c7..3bb37ae2b8 100644 --- a/counterparty-core/counterpartycore/test/fixtures/scenarios/simplesig.log +++ b/counterparty-core/counterpartycore/test/fixtures/scenarios/simplesig.log @@ -1,49 +1,35 @@ Creating connection to `:memory:`... Initializing database... -TX Construct - Constructing transaction from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc. TX Construct - Transaction constructed. mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc burned 62000000 BTC for 93000000000 XCP (6dc5b0a33d4d4297e0f5cc2d23ae307951d32aab2d86b7fa147b385219f3a597) [valid] -TX Construct - Constructing `MULTISIG` transaction from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc. TX Construct - Transaction constructed. Send XCP from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc to mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns (3b273ba342ed8bd4ccd2ae28d3df7754768a6c65ec1cee4a6e84b4b4bdec8d8c) [valid] -TX Construct - Constructing `MULTISIG` transaction from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc. TX Construct - Transaction constructed. Order opened for 50000000 BTC at mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc (6bdb2ef465e9fc04060f58ced26c159dc983a616cb121c5e7954e66833444c59) [open] -TX Construct - Constructing `MULTISIG` transaction from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc. TX Construct - Transaction constructed. Order opened for 105000000 XCP at mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc (36d00f8c35a9c6ecc7dd0a64610b1c39a71110d1a95face6a2486a6a7a1ff83c) [open] Order match for 50000000 BTC against 100000000 XCP (6bdb2ef465e9fc04060f58ced26c159dc983a616cb121c5e7954e66833444c59_36d00f8c35a9c6ecc7dd0a64610b1c39a71110d1a95face6a2486a6a7a1ff83c) [pending] Order match has only -10 confirmation(s). -TX Construct - Constructing `MULTISIG` transaction from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc. TX Construct - Transaction constructed. BTC Pay for order match 6bdb2ef465e9fc04060f58ced26c159dc983a616cb121c5e7954e66833444c59_36d00f8c35a9c6ecc7dd0a64610b1c39a71110d1a95face6a2486a6a7a1ff83c (843c5df8f979db230ba61f26ad1342ed5803adeba7333b019b8a96ac6703f099) [valid] -TX Construct - Constructing `MULTISIG` transaction from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc. TX Construct - Transaction constructed. Issuance of 1000000000 BBBB by mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc [5d951d44d034cb6fd5dc5c98cd877c63f55c1ae108d335b6b6d991d072856adf] (valid) -TX Construct - Constructing `MULTISIG` transaction from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc. TX Construct - Transaction constructed. Issuance of 100000 BBBC by mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc [2b44f590422a3ab5b70fb1265a2e4f4d3b0bcb3de3f296dc7280924870ec8c59] (valid) -TX Construct - Constructing `MULTISIG` transaction from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc. TX Construct - Transaction constructed. Send BBBB from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc to mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns (5836fb23c2bb94eeb4b71cb8e3c622c6d943b3e4ed3aebee42d240445e615db8) [valid] -TX Construct - Constructing `MULTISIG` transaction from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc. TX Construct - Transaction constructed. Send BBBC from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc to mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns (843e6f7712b7847099502bda8a4bd7127c17a2799290b91ef1584a6bfe069412) [valid] Total quantity to be distributed in dividends: 0.00000024 XCP -TX Construct - Constructing `MULTISIG` transaction from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc. TX Construct - Transaction constructed. Dividend of 600 XCP per unit of BBBB (42ae2fd7f3a18f84334bc37aa88283e79d6bff0b234dbf97e788695957d75518) [valid] Total quantity to be distributed in dividends: 0.004208 XCP -TX Construct - Constructing `MULTISIG` transaction from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc. TX Construct - Transaction constructed. Dividend of 800 XCP per unit of BBBC (201123e1ddbc4dab954fed0043a29fca770a9bd4268714354bb7991f01133c10) [valid] -TX Construct - Constructing `MULTISIG` transaction from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc. TX Construct - Transaction constructed. Broadcast from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc (1afa4fa28e1ef63b2b67c288e078cfeb109a2b236558ab5544eedc7f171e0a84) [valid] -TX Construct - Constructing `MULTISIG` transaction from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc. TX Construct - Transaction constructed. Open Bet (7025ded3ba412d1285be69c8aaa02773b8f4e2504310832c99a9b171b7e07e81) [open] -TX Construct - Constructing `MULTISIG` transaction from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc. TX Construct - Transaction constructed. Order cancelled BTC / XCP (6bdb2ef465e9fc04060f58ced26c159dc983a616cb121c5e7954e66833444c59) [expired] Open Bet (e566ab052d414d2c9b9d6ffc643bc5d2b31d80976dffe7acceaf2576246f9e42) [open] @@ -55,11 +41,9 @@ Backward Quantity: 20750000 Bet 7025ded3ba412d1285be69c8aaa02773b8f4e2504310832c99a9b171b7e07e81 updated (e566ab052d414d2c9b9d6ffc643bc5d2b31d80976dffe7acceaf2576246f9e42) [open] Bet e566ab052d414d2c9b9d6ffc643bc5d2b31d80976dffe7acceaf2576246f9e42 updated (e566ab052d414d2c9b9d6ffc643bc5d2b31d80976dffe7acceaf2576246f9e42) [filled] Bet match 13 for 41500000 XCP against 20750000 XCP on mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc -TX Construct - Constructing `MULTISIG` transaction from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc. TX Construct - Transaction constructed. Order cancelled XCP / BTC (36d00f8c35a9c6ecc7dd0a64610b1c39a71110d1a95face6a2486a6a7a1ff83c) [expired] Open Bet (3d3ae119aa3891770b7ae1e1ce34062b7a850593f39a96b6df19d69960d4a76a) [open] -TX Construct - Constructing `MULTISIG` transaction from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc. TX Construct - Transaction constructed. Open Bet (a73843f1c9197674ba45e3aa92ed0671062c8acd8955e6b1e4d10dd149f40bc8) [open] Considering: 7025ded3ba412d1285be69c8aaa02773b8f4e2504310832c99a9b171b7e07e81 @@ -72,10 +56,8 @@ Backward Quantity: 350000000 Bet 3d3ae119aa3891770b7ae1e1ce34062b7a850593f39a96b6df19d69960d4a76a updated (a73843f1c9197674ba45e3aa92ed0671062c8acd8955e6b1e4d10dd149f40bc8) [filled] Bet a73843f1c9197674ba45e3aa92ed0671062c8acd8955e6b1e4d10dd149f40bc8 updated (a73843f1c9197674ba45e3aa92ed0671062c8acd8955e6b1e4d10dd149f40bc8) [filled] Bet match 15 for 150000000 XCP against 350000000 XCP on mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc -TX Construct - Constructing `MULTISIG` transaction from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc. TX Construct - Transaction constructed. Open Bet (194a87d56aecedf43bb9724b6f20f10626c26c00267fd108db843772e5ee41f5) [open] -TX Construct - Constructing `MULTISIG` transaction from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc. TX Construct - Transaction constructed. Open Bet (72baa141e136cbafc08ee2f6c8e5841076c7573d5d5cd619f45149bf84a6a207) [open] Considering: 194a87d56aecedf43bb9724b6f20f10626c26c00267fd108db843772e5ee41f5 @@ -86,28 +68,22 @@ Backward Quantity: 650000000 Bet 194a87d56aecedf43bb9724b6f20f10626c26c00267fd108db843772e5ee41f5 updated (72baa141e136cbafc08ee2f6c8e5841076c7573d5d5cd619f45149bf84a6a207) [filled] Bet 72baa141e136cbafc08ee2f6c8e5841076c7573d5d5cd619f45149bf84a6a207 updated (72baa141e136cbafc08ee2f6c8e5841076c7573d5d5cd619f45149bf84a6a207) [filled] Bet match 17 for 750000000 XCP against 650000000 XCP on mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc -TX Construct - Constructing `MULTISIG` transaction from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc. TX Construct - Transaction constructed. Broadcast from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc (065de641fd87c0b3ef893130ef4a3dca7643b7a35f6d18c721f34a7a36a5992f) [valid] Bet Match 7025ded3ba412d1285be69c8aaa02773b8f4e2504310832c99a9b171b7e07e81_e566ab052d414d2c9b9d6ffc643bc5d2b31d80976dffe7acceaf2576246f9e42 resolved Bet Match 7025ded3ba412d1285be69c8aaa02773b8f4e2504310832c99a9b171b7e07e81_e566ab052d414d2c9b9d6ffc643bc5d2b31d80976dffe7acceaf2576246f9e42 updated [settled: liquidated for bear] -TX Construct - Constructing `MULTISIG` transaction from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc. TX Construct - Transaction constructed. Broadcast from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc (7cc015005c559686a8e10294015ca1773c0bcd9f4d7d9768deb4bb94cdd4a69e) [valid] Bet Match 3d3ae119aa3891770b7ae1e1ce34062b7a850593f39a96b6df19d69960d4a76a_a73843f1c9197674ba45e3aa92ed0671062c8acd8955e6b1e4d10dd149f40bc8 resolved Bet Match 3d3ae119aa3891770b7ae1e1ce34062b7a850593f39a96b6df19d69960d4a76a_a73843f1c9197674ba45e3aa92ed0671062c8acd8955e6b1e4d10dd149f40bc8 updated [settled] -TX Construct - Constructing `MULTISIG` transaction from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc. TX Construct - Transaction constructed. Broadcast from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc (0899b8bccef3403252fd7d37ec550eea3350845dca098368b84bf4c3c48d3fc9) [valid] Bet Match 194a87d56aecedf43bb9724b6f20f10626c26c00267fd108db843772e5ee41f5_72baa141e136cbafc08ee2f6c8e5841076c7573d5d5cd619f45149bf84a6a207 resolved Bet Match 194a87d56aecedf43bb9724b6f20f10626c26c00267fd108db843772e5ee41f5_72baa141e136cbafc08ee2f6c8e5841076c7573d5d5cd619f45149bf84a6a207 updated [settled: for notequal] -TX Construct - Constructing `MULTISIG` transaction from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc. TX Construct - Transaction constructed. Order opened for 50000000 BBBB at mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc (eb5953f4e1dec30f0bf4741cb2044c11b6e1c3be20fef2111461f69d989b852a) [open] -TX Construct - Constructing transaction from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc. TX Construct - Transaction constructed. mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc burned 38000000 BTC for 56999887262 XCP (c3f73d02e630cb2824f044e6d91f47b1ce351feff0339ea7b85652d24d8ff6bc) [valid] -TX Construct - Constructing `MULTISIG` transaction from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc. TX Construct - Transaction constructed. Bet 7025ded3ba412d1285be69c8aaa02773b8f4e2504310832c99a9b171b7e07e81 canceled [expired] Bet Expiration 7025ded3ba412d1285be69c8aaa02773b8f4e2504310832c99a9b171b7e07e81 diff --git a/counterparty-core/counterpartycore/test/fixtures/scenarios/unittest_fixture.log b/counterparty-core/counterpartycore/test/fixtures/scenarios/unittest_fixture.log index 6075a82ad0..838429adc6 100644 --- a/counterparty-core/counterpartycore/test/fixtures/scenarios/unittest_fixture.log +++ b/counterparty-core/counterpartycore/test/fixtures/scenarios/unittest_fixture.log @@ -1,69 +1,48 @@ Creating connection to `:memory:`... Initializing database... -TX Construct - Constructing transaction from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc. TX Construct - Transaction constructed. mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc burned 62000000 BTC for 93000000000 XCP (6dc5b0a33d4d4297e0f5cc2d23ae307951d32aab2d86b7fa147b385219f3a597) [valid] -TX Construct - Constructing `MULTISIG` transaction from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc. TX Construct - Transaction constructed. Issuance of 100000000000 DIVISIBLE by mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc [1fc2e5a57f584b2f2edd05676e75c33d03eed1d3098cc0550ea33474e3ec9db1] (valid) -TX Construct - Constructing `MULTISIG` transaction from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc. TX Construct - Transaction constructed. Issuance of 1000 NODIVISIBLE by mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc [7b1bf5144346279271b1ff78664f118224fe27fd8679d6c1519345f9c6c54584] (valid) -TX Construct - Constructing `MULTISIG` transaction from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc. TX Construct - Transaction constructed. Issuance of 1000 CALLABLE by mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc [c26f3a0c4e57e41919ff27aae95a9a9d4d65d34c6da6f1893884a17c8d407140] (valid) -TX Construct - Constructing `MULTISIG` transaction from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc. TX Construct - Transaction constructed. Issuance of 1000 LOCKED by mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc [90b5734be98b0f2a0bd4b6a269c8db3368e2e387bb890ade239951d05423b4da] (valid) -TX Construct - Constructing `MULTISIG` transaction from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc. TX Construct - Transaction constructed. Issuance of 0 LOCKED by mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc [344dcc8909ca3a137630726d0071dfd2df4f7c855bac150c7d3a8367835c90bc] (valid) -TX Construct - Constructing `MULTISIG` transaction from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc. TX Construct - Transaction constructed. Initialising orders cache... Creating connection to `:memory:`... Order opened for 100000000 XCP at mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc (4f0433ba841038e2e16328445930dd7bca35309b14b0da4451c8f94c631368b8) [open] -TX Construct - Constructing `MULTISIG` transaction from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc. TX Construct - Transaction constructed. Send DIVISIBLE from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc to mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns (6e91ae23de2035e3e28c3322712212333592a1f666bcff9dd91aec45d5ea2753) [valid] -TX Construct - Constructing `MULTISIG` transaction from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc. TX Construct - Transaction constructed. Send XCP from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc to mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns (4fd55abadfdbe77c3bda2431749cca934a29994a179620a62c1b57f28bd62a43) [valid] -TX Construct - Constructing `MULTISIG` transaction from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc. TX Construct - Transaction constructed. BUMP TXID 4f0433ba841038e2e16328445930dd7bca35309b14b0da4451c8f94c631368b8 Order opened for 100000000 XCP at mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc (21460d5c07284f9be9baf824927d0d4e4eb790e297f3162305841607b672349b) [open] -TX Construct - Constructing `MULTISIG` transaction from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc. TX Construct - Transaction constructed. Order opened for 100000000 XCP at mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc (1899b2e6ec36ba4bc9d035e6640b0a62b08c3a147c77c89183a77d9ed9081b3a) [open] -TX Construct - Constructing `MULTISIG` transaction from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc. TX Construct - Transaction constructed. Order opened for 666667 BTC at mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc (a1768d7db2db3b9732b26df8c04db4b9a8535a1e5cf684a680e81e7c06f394b6) [open] -TX Construct - Constructing `MULTISIG` transaction from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc. TX Construct - Transaction constructed. Send XCP from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc to 1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2 (698e97e507da8623cf38ab42701853443c8f7fe0d93b4674aabb42f9800ee9d6) [valid] -TX Construct - Constructing `MULTISIG` transaction from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc. TX Construct - Transaction constructed. Send DIVISIBLE from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc to 1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2 (0cfeeb559ed794d067557df0376a6c213b48b174b80cdb2c3c6d365cf538e132) [valid] -TX Construct - Constructing `MULTISIG` transaction from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc. TX Construct - Transaction constructed. Send NODIVISIBLE from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc to mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns (1facb0072f16f6bdca64ea859c82b850f58f0ec7ff410d901679772a4727515a) [valid] -TX Construct - Constructing `MULTISIG` transaction from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc. TX Construct - Transaction constructed. Send NODIVISIBLE from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc to 1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2 (e3b6667b7baa515048a7fcf2be7818e3e7622371236b78e19b4b08e2d7e7818c) [valid] -TX Construct - Constructing `MULTISIG` transaction from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc. TX Construct - Transaction constructed. Issuance of 9223372036854775807 MAXI by mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc [bd4e9cbbe69c2db893cd32182a2d315c89c45ba4e31aa5775d1fe42d841cea39] (valid) -TX Construct - Constructing `MULTISIG` transaction from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc. TX Construct - Transaction constructed. Broadcast from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc (d14388b74b63d93e4477b1fe8426028bb8ab20656703e3ce8deeb23c2fe0b8af) [valid] -TX Construct - Constructing `MULTISIG` transaction from mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH. TX Construct - Transaction constructed. Broadcast from mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH (f9e0527c85a9084d7eda91fc30a49993370d029efea031a8ccccdf846146a660) [valid] -TX Construct - Constructing `MULTISIG` transaction from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc. TX Construct - Transaction constructed. Open Bet (2a2169991597036b6dad687ea1feffd55465a204466f40c35cbba811cb3109b1) [open] -TX Construct - Constructing `MULTISIG` transaction from mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns. TX Construct - Transaction constructed. Open Bet (5c6562ddad0bc8a1faaded18813a65522cd273709acd190cf9d3271817eefc93) [open] Considering: 2a2169991597036b6dad687ea1feffd55465a204466f40c35cbba811cb3109b1 @@ -74,137 +53,94 @@ Backward Quantity: 9 Bet 2a2169991597036b6dad687ea1feffd55465a204466f40c35cbba811cb3109b1 updated (5c6562ddad0bc8a1faaded18813a65522cd273709acd190cf9d3271817eefc93) [filled] Bet 5c6562ddad0bc8a1faaded18813a65522cd273709acd190cf9d3271817eefc93 updated (5c6562ddad0bc8a1faaded18813a65522cd273709acd190cf9d3271817eefc93) [filled] Bet match 20 for 9 XCP against 9 XCP on mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc -TX Construct - Constructing `MULTISIG` transaction from mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns. TX Construct - Transaction constructed. Open Bet (db4ea092bea6036e3d1e5f6ec863db9b900252b4f4d6d9faa6165323f433c51e) [open] -TX Construct - Constructing `MULTISIG` transaction from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc. TX Construct - Transaction constructed. Broadcast from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc (16462eac6c795cea6e5985ee063867d8c61ae24373df02048186d28118d25bae) [valid] Bet Match 2a2169991597036b6dad687ea1feffd55465a204466f40c35cbba811cb3109b1_5c6562ddad0bc8a1faaded18813a65522cd273709acd190cf9d3271817eefc93 resolved Bet Match 2a2169991597036b6dad687ea1feffd55465a204466f40c35cbba811cb3109b1_5c6562ddad0bc8a1faaded18813a65522cd273709acd190cf9d3271817eefc93 updated [settled] -TX Construct - Constructing transaction from myAtcJEHAsDLbTkai6ipWDZeeL7VkxXsiM. TX Construct - Transaction constructed. myAtcJEHAsDLbTkai6ipWDZeeL7VkxXsiM burned 62000000 BTC for 92999138821 XCP (65d4048700fb8ae03f321be93c6669b8497f506a1f43920f96d994f43358c35b) [valid] -TX Construct - Constructing transaction from munimLLHjPhGeSU5rYB2HN79LJa8bRZr5b. TX Construct - Transaction constructed. munimLLHjPhGeSU5rYB2HN79LJa8bRZr5b burned 62000000 BTC for 92999130460 XCP (95332a7e3e2b04f2c10e3027327bfc31b686947fb05381e28903e3ff569bd4ff) [valid] -TX Construct - Constructing transaction from mwtPsLQxW9xpm7gdLmwWvJK5ABdPUVJm42. TX Construct - Transaction constructed. mwtPsLQxW9xpm7gdLmwWvJK5ABdPUVJm42 burned 62000000 BTC for 92999122099 XCP (e062d1ebf4cb71bd22d80c949b956f5286080838a7607ccf87945b2b3abfcafa) [valid] -TX Construct - Constructing transaction from mrPk7hTeZWjjSCrMTC2ET4SAUThQt7C4uK. TX Construct - Transaction constructed. mrPk7hTeZWjjSCrMTC2ET4SAUThQt7C4uK burned 10000 BTC for 14999857 XCP (bbf0b9f6992755a3e371fb0c0b72f6828831e81c6f7ada6f95ba1104fb901ac3) [valid] -TX Construct - Constructing `OPRETURN` transaction from munimLLHjPhGeSU5rYB2HN79LJa8bRZr5b. TX Construct - Transaction constructed. Initialising Dispensable Cache... Dispenser opened for XCP at munimLLHjPhGeSU5rYB2HN79LJa8bRZr5b (9834219d2825b4d85ca7ee0d75a5372d9d42ce75eb9144951fca1af5a25915ec) [valid] -TX Construct - Constructing transaction from 2MyJHMUenMWonC35Yi6PHC7i2tkS7PuomCy. TX Construct - Transaction constructed. 2MyJHMUenMWonC35Yi6PHC7i2tkS7PuomCy burned 31000000 BTC for 46499548508 XCP (93c6d2499a0536c31c77a3db3fc9fc8456fbd0726c45b8f716af16f938727a73) [valid] -TX Construct - Constructing `MULTISIG` transaction from 2MyJHMUenMWonC35Yi6PHC7i2tkS7PuomCy. TX Construct - Transaction constructed. Issuance of 1000 PAYTOSCRIPT by 2MyJHMUenMWonC35Yi6PHC7i2tkS7PuomCy [e8baf787b9e4636a3cad0ffeb62992ad7abb160dc6506af0546f566dc178de7e] (valid) -TX Construct - Constructing `MULTISIG` transaction from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc. TX Construct - Transaction constructed. Send DIVISIBLE from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc to 2MyJHMUenMWonC35Yi6PHC7i2tkS7PuomCy (f6a0f819e899b407cbfa07b4eff3d58902af3899abfbaa47d5f31d5b398e76e7) [valid] -TX Construct - Constructing `OPRETURN` transaction from 2MyJHMUenMWonC35Yi6PHC7i2tkS7PuomCy. TX Construct - Transaction constructed. Broadcast from 2MyJHMUenMWonC35Yi6PHC7i2tkS7PuomCy (510f6feb902159622d83f64eae590a4fec88989869a20caf5804c313aa5e0186) [valid] -TX Construct - Constructing `OPRETURN` transaction from 2MyJHMUenMWonC35Yi6PHC7i2tkS7PuomCy. TX Construct - Transaction constructed. Open Bet (d79b590e4ec3e74cbc3eb4d0f956ce7abb0e3af2ccac85ff90ed8acf13f2e048) [open] -TX Construct - Constructing `MULTISIG` transaction from mwtPsLQxW9xpm7gdLmwWvJK5ABdPUVJm42. TX Construct - Transaction constructed. Issuance of 1000 LOCKEDPREV by mwtPsLQxW9xpm7gdLmwWvJK5ABdPUVJm42 [34bce6f409758b3d6fd13282a99b277ef1fdf44a1025d2901075cac0249dbc63] (valid) -TX Construct - Constructing `MULTISIG` transaction from mwtPsLQxW9xpm7gdLmwWvJK5ABdPUVJm42. TX Construct - Transaction constructed. Issuance of 0 LOCKEDPREV by mwtPsLQxW9xpm7gdLmwWvJK5ABdPUVJm42 [025b810fce7735c5869b90846007e5f604f60c1beda4c1695f1c7fbec3d44bc2] (valid) -TX Construct - Constructing `MULTISIG` transaction from mwtPsLQxW9xpm7gdLmwWvJK5ABdPUVJm42. TX Construct - Transaction constructed. Issuance of 0 LOCKEDPREV by mwtPsLQxW9xpm7gdLmwWvJK5ABdPUVJm42 [4ab1a24283c1dbfc710be7b215d64e8a4510ee97af019e210049c25773b50beb] (valid) -TX Construct - Constructing transaction from tb1qw508d6qejxtdg4y5r3zarvary0c5xw7kxpjzsx. TX Construct - Transaction constructed. tb1qw508d6qejxtdg4y5r3zarvary0c5xw7kxpjzsx burned 62000000 BTC for 92999030129 XCP (27929c4fcad307a76ea7da34dd2691084f678a22ee43ce7f3842b78730ee08f9) [valid] -TX Construct - Constructing `OPRETURN` transaction from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc. TX Construct - Transaction constructed. Send (Enhanced) XCP from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc to mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns (b00bdf03402d81a2cbdbeac4b0df90cff5ab6bf9688f653383d49fe42b8422a5) [valid] -TX Construct - Constructing `OPRETURN` transaction from mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns. TX Construct - Transaction constructed. Send (Enhanced) XCP from mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns to mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc (c8716524f33646b9af94d6f5e52494ff3b34466497094b1db2ab920e4f79bc34) [valid] -TX Construct - Constructing `MULTISIG` transaction from myAtcJEHAsDLbTkai6ipWDZeeL7VkxXsiM. TX Construct - Transaction constructed. Broadcast from myAtcJEHAsDLbTkai6ipWDZeeL7VkxXsiM (3b95e07a2194174ac020de27e8b2b6ee24d5fc120f118df516ba28495657cf14) [valid] -TX Construct - Constructing `MULTISIG` transaction from myAtcJEHAsDLbTkai6ipWDZeeL7VkxXsiM. TX Construct - Transaction constructed. Open Bet (41e821ae1c6b553d0fa5d5a807b2e7e9ffaec5d62706d9d2a59c6e65a3ed9cef) [open] -TX Construct - Constructing `MULTISIG` transaction from myAtcJEHAsDLbTkai6ipWDZeeL7VkxXsiM. TX Construct - Transaction constructed. Broadcast from myAtcJEHAsDLbTkai6ipWDZeeL7VkxXsiM (870fb08b373705423f31ccd91fdbcabe135ad92d74e709a959dfa2e12f9a6638) [valid] -TX Construct - Constructing `MULTISIG` transaction from myAtcJEHAsDLbTkai6ipWDZeeL7VkxXsiM. TX Construct - Transaction constructed. Broadcast from myAtcJEHAsDLbTkai6ipWDZeeL7VkxXsiM (685d7f99fa76a05201c3239a4e0d9060ea53307b171f6ad7d482a26c73e9c0d1) [valid] -TX Construct - Constructing `MULTISIG` transaction from mwtPsLQxW9xpm7gdLmwWvJK5ABdPUVJm42. TX Construct - Transaction constructed. Broadcast from mwtPsLQxW9xpm7gdLmwWvJK5ABdPUVJm42 (7c437705c315212315c85c0b8ba09d358679c91be20b54f30929c5a6052426af) [valid] -TX Construct - Constructing `MULTISIG` transaction from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc. TX Construct - Transaction constructed. Order opened for 100000000 XCP at mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc (74db175c4669a3d3a59e3fcddce9e97fcd7d12c35b58ef31845a1b20a1739498) [open] -TX Construct - Constructing `MULTISIG` transaction from mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns. TX Construct - Transaction constructed. Order opened for 800000 BTC at mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns (1b294dd8592e76899b1c106782e4c96e63114abd8e3fa09ab6d2d52496b5bf81) [open] Order match for 100000000 XCP against 800000 BTC (74db175c4669a3d3a59e3fcddce9e97fcd7d12c35b58ef31845a1b20a1739498_1b294dd8592e76899b1c106782e4c96e63114abd8e3fa09ab6d2d52496b5bf81) [pending] -TX Construct - Constructing transaction from mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH. TX Construct - Transaction constructed. mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH burned 62000000 BTC for 92995878046 XCP (c0733e1287afb1bb3d2fdacd1db7c74ea84f14362f3a8d1c038e662e1d0b1b1a) [valid] -TX Construct - Constructing `MULTISIG` transaction from mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH. TX Construct - Transaction constructed. Issuance of 100 DIVIDEND by mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH [321bed395482e034f2ce0a4dbf28d1f800592a658e26ea91ae9c5b0928204503] (valid) -TX Construct - Constructing `MULTISIG` transaction from mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH. TX Construct - Transaction constructed. Send DIVIDEND from mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH to mqPCfvqTfYctXMUfmniXeG2nyaN8w6tPmj (02156b9a1f643fb48330396274a37620c8abbbe5eddb2f8b53dadd135f5d2e2e) [valid] -TX Construct - Constructing `MULTISIG` transaction from mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH. TX Construct - Transaction constructed. Send XCP from mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH to mqPCfvqTfYctXMUfmniXeG2nyaN8w6tPmj (a35ab1736565aceddbd1d71f92fc7f39d1361006aa9099f731e54e762964d5ba) [valid] -TX Construct - Constructing `OPRETURN` transaction from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc. TX Construct - Transaction constructed. Issuance of 100000000 PARENT by mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc [076ae3d8eeb7fb40d2ae27692340157c746d9832806766b0dac5adb1526dc78f] (valid) -TX Construct - Constructing `OPRETURN` transaction from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc. TX Construct - Transaction constructed. Issuance of 100000000 A95428956661682277 by mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc [0abfce2662c05852fd8b181a60900678643cedad47b23a853b8c4eda82cb2cbf] (valid) -TX Construct - Constructing `OPRETURN` transaction from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc. TX Construct - Transaction constructed. Fair minter opened for FREEFAIRMIN by mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc. -TX Construct - Constructing `OPRETURN` transaction from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc. TX Construct - Transaction constructed. Fair minter opened for PAIDFAIRMIN by mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc. -TX Construct - Constructing `OPRETURN` transaction from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc. TX Construct - Transaction constructed. 10 FREEFAIRMIN minted for 0 XCP by mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc -TX Construct - Constructing `OPRETURN` transaction from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc. TX Construct - Transaction constructed. Fair minter opened for RAIDFAIRMIN by mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc. -TX Construct - Constructing `OPRETURN` transaction from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc. TX Construct - Transaction constructed. Fair minter opened for QAIDFAIRMIN by mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc. -TX Construct - Constructing `MULTISIG` transaction from mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns. TX Construct - Transaction constructed. Fair minter opened for A160361285792733729 by mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns. -TX Construct - Constructing `OPRETURN` transaction from mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns. TX Construct - Transaction constructed. 10 A160361285792733729 minted for 100 XCP by mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns -TX Construct - Constructing `OPRETURN` transaction from mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns. TX Construct - Transaction constructed. 20 A160361285792733729 minted for 200 XCP by mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns -TX Construct - Constructing `MULTISIG` transaction from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc. TX Construct - Transaction constructed. Attach XCP from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc to utxo: 4f0433ba841038e2e16328445930dd7bca35309b14b0da4451c8f94c631368b8:1 (9d2243c84df0132061884dfce73f3b7c5262a1cde0d029de472a079f3a1c4883) [valid] -TX Construct - Constructing `MULTISIG` transaction from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc. TX Construct - Transaction constructed. Attach DIVISIBLE from mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc to utxo: 4f0433ba841038e2e16328445930dd7bca35309b14b0da4451c8f94c631368b8:1 (ff23dc6911d401e9868b8ac747d31febc2078f004eff7b56a8895c107ed8a73e) [valid] -TX Construct - Constructing `MULTISIG` transaction from munimLLHjPhGeSU5rYB2HN79LJa8bRZr5b. TX Construct - Transaction constructed. Issuance of 1000 TESTDISP by munimLLHjPhGeSU5rYB2HN79LJa8bRZr5b [01e52e3770a932827a4b4e5db193eef916fcf69bda1a7944298210a74f1633a1] (valid) -TX Construct - Constructing `OPRETURN` transaction from munimLLHjPhGeSU5rYB2HN79LJa8bRZr5b. TX Construct - Transaction constructed. Dispenser opened for TESTDISP at munimLLHjPhGeSU5rYB2HN79LJa8bRZr5b (af67f6762d4b00b4bf5fb93a9d556e007a147aa80fbf6a84410df05a0182da9e) [valid] Order match cancelled XCP / BTC (74db175c4669a3d3a59e3fcddce9e97fcd7d12c35b58ef31845a1b20a1739498_1b294dd8592e76899b1c106782e4c96e63114abd8e3fa09ab6d2d52496b5bf81) [expired] diff --git a/counterparty-core/counterpartycore/test/fixtures/vectors.py b/counterparty-core/counterpartycore/test/fixtures/vectors.py index 850b19a705..87bc73d499 100644 --- a/counterparty-core/counterpartycore/test/fixtures/vectors.py +++ b/counterparty-core/counterpartycore/test/fixtures/vectors.py @@ -23,6 +23,7 @@ from .contract_vectors.gas import GAS_VECTOR from .contract_vectors.ledger import LEDGER_VECTOR from .contract_vectors.send import SEND_VECTOR +from .contract_vectors.transaction import TRANSACTION_VECTOR from .contract_vectors.utxo import UTXO_VECTOR from .params import ( ADDR, @@ -35,7 +36,7 @@ DEFAULT_PARAMS as DP, ) -UNITTEST_VECTOR_ = UTXO_VECTOR | GAS_VECTOR +UNITTEST_VECTOR_ = TRANSACTION_VECTOR UNITTEST_VECTOR = ( FAIRMINTER_VECTOR @@ -45,6 +46,7 @@ | SEND_VECTOR | DISPENSER_VECTOR | GAS_VECTOR + | TRANSACTION_VECTOR | { "bet": { "validate": [ @@ -6214,7 +6216,7 @@ }, ], }, - "transaction_helper.serializer": { + "transaction_helper.common_serializer": { "var_int": [ {"in": (252,), "out": b"\xfc"}, {"in": (65535,), "out": b"\xfd\xff\xff"}, @@ -6347,579 +6349,6 @@ }, ], }, - "transaction": { - "get_dust_return_pubkey": [ - {"in": (ADDR[1], None, "multisig"), "out": None}, - { - "in": (ADDR[1], [], "multisig"), - "out": b"\x03\x19\xf6\xe0{\x0b\x8duaV9K\x9d\xcf;\x01\x1f\xe9\xac\x19\xf2p\x0b\xd6\xb6\x9aj\x17\x83\xdb\xb8\xb9w", - }, - ], - "construct": [ - { - "in": ( - ( - "mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns", - [("mvCounterpartyXXXXXXXXXXXXXXW24Hef", 62000000)], - None, - ), - {"encoding": "multisig", "exact_fee": 1.0}, - ), - "error": (exceptions.TransactionError, "Exact fees must be in satoshis."), - }, - { - "in": ( - ( - "mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns", - [("mvCounterpartyXXXXXXXXXXXXXXW24Hef", 62000000)], - None, - ), - {"encoding": "multisig", "fee_provided": 1.0}, - ), - "error": (exceptions.TransactionError, "Fee provided must be in satoshis."), - }, - { - "in": ( - ( - "mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns", - [ - ( - "mvCounterpartyXXXXXXXXXXXXXXW24Hef", - config.DEFAULT_REGULAR_DUST_SIZE - 1, - ) - ], - None, - ), - {"encoding": "singlesig", "regular_dust_size": DP["regular_dust_size"]}, - ), - "error": (exceptions.TransactionError, "Destination output is dust."), - }, - { - "in": ( - ( - "mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns", - [ - ( - "1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2", - config.DEFAULT_MULTISIG_DUST_SIZE - 1, - ) - ], - None, - ), - {"encoding": "multisig"}, - ), - "error": (exceptions.TransactionError, "Destination output is dust."), - }, - { - "in": ( - ( - "mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns", - [("mvCounterpartyXXXXXXXXXXXXXXW24Hef", 62000000)], - b"\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x02\xfa\xf0\x80", - ), - {"encoding": "foobar"}, - ), - "error": (exceptions.TransactionError, "Unknown encoding‐scheme."), - }, - { - "comment": "opreturn encoding with more data that fits in 80 bytes opreturn (73 bytes of data + 8 bytes for PREFIX)", - "in": ( - ( - "mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns", - [("mvCounterpartyXXXXXXXXXXXXXXW24Hef", 62000000)], - b"\x00" * 73, - ), - {"encoding": "opreturn"}, - ), - "error": ( - exceptions.TransactionError, - "One `OP_RETURN` output per transaction.", - ), - }, - { - "in": ( - ( - "mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns", - [("mvCounterpartyXXXXXXXXXXXXXXW24Hef", 2**30)], - b"\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x02\xfa\xf0\x80", - ), - {"encoding": "multisig"}, - ), - "error": ( - exceptions.BalanceError, - "Insufficient BTC at address mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns. Need: 10.73754999 BTC (Including fee: 0.00012175 BTC), available: 1.11121663 BTC. These fees are estimated for a confirmation target of 3 blocks, you can reduce them by using the `confirmation_target` parameter with a higher value or by manually setting the fees with the `fee` parameter. To spend unconfirmed coins, use the flag `--unconfirmed`. (Unconfirmed coins cannot be spent from multi‐sig addresses.)", - ), - }, - { - "comment": "opreturn encoding with maximum possible data that fits in 80 bytes opreturn (72 bytes of data + 8 bytes for PREFIX)", - "in": ( - ( - "mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns", - [("mvCounterpartyXXXXXXXXXXXXXXW24Hef", 62000000)], - b"\x00" * 72, - ), - {"encoding": "opreturn"}, - ), - "out": "0100000001ebe3111881a8733ace02271dcf606b7450c41a48c1cb21fd73f4ba787b353ce4000000001976a9148d6ae8a3b381663118b4e1eff4cfc7d0954dd6ec88acffffffff03800bb203000000001976a914a11b66a67b3ff69671c8f82254099faf374b800e88ac0000000000000000536a4c503ab408a679f108a19e35886815c4c468ca75a06799f864a1fad6bc0813f5fe3260e421a30202f2e76f46acdb292c652371ca48b97460f7928ade8ecb02ea9fadc20c0b453de6676872c9e41fad801e8bbdb64302000000001976a9148d6ae8a3b381663118b4e1eff4cfc7d0954dd6ec88ac00000000", - }, - { - "comment": "burn", - "in": ( - ( - "mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns", - [("mvCounterpartyXXXXXXXXXXXXXXW24Hef", 62000000)], - None, - ), - {"encoding": "multisig"}, - ), - "out": "0100000001ebe3111881a8733ace02271dcf606b7450c41a48c1cb21fd73f4ba787b353ce4000000001976a9148d6ae8a3b381663118b4e1eff4cfc7d0954dd6ec88acffffffff02800bb203000000001976a914a11b66a67b3ff69671c8f82254099faf374b800e88ac87bf4302000000001976a9148d6ae8a3b381663118b4e1eff4cfc7d0954dd6ec88ac00000000", - }, - { - "comment": "burn P2SH", - "in": ( - (P2SH_ADDR[0], [("mvCounterpartyXXXXXXXXXXXXXXW24Hef", 62000000)], None), - {"encoding": "multisig", "regular_dust_size": DP["regular_dust_size"]}, - ), - "out": "01000000015001af2c4c3bc2c43b6233261394910d10fb157a082d9b3038c65f2d01e4ff200000000017a9144264cfd7eb65f8cbbdba98bd9815d5461fad8d7e87ffffffff02800bb203000000001976a914a11b66a67b3ff69671c8f82254099faf374b800e88ac87bf43020000000017a9144264cfd7eb65f8cbbdba98bd9815d5461fad8d7e8700000000", - }, - { - "comment": "multisig burn", - "in": ( - ( - "1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2", - [("mvCounterpartyXXXXXXXXXXXXXXW24Hef", 50000000)], - None, - ), - {"encoding": "multisig"}, - ), - "out": "0100000001051511b66ba309e3dbff1fde22aefaff4190675235a010a5c6acb1e43da8005f000000004751210282b886c087eb37dc8182f14ba6cc3e9485ed618b95804d44aecc17c300b585b0210319f6e07b0b8d756156394b9dcf3b011fe9ac19f2700bd6b69a6a1783dbb8b97752aeffffffff0280f0fa02000000001976a914a11b66a67b3ff69671c8f82254099faf374b800e88ac87dafa02000000004751210282b886c087eb37dc8182f14ba6cc3e9485ed618b95804d44aecc17c300b585b0210319f6e07b0b8d756156394b9dcf3b011fe9ac19f2700bd6b69a6a1783dbb8b97752ae00000000", - }, - { - "comment": "send", - "in": ( - ( - "mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc", - [("mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns", None)], - b"\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x02\xfa\xf0\x80", - ), - {"encoding": "multisig", "regular_dust_size": DP["regular_dust_size"]}, - ), - "out": "0100000001c1d8c075936c3495f6d653c50f73d987f75448d97a750249b1eb83bee71b24ae000000001976a9144838d8b3588c4c7ba7c1d06f866e9b3739c6303788acffffffff0336150000000000001976a9148d6ae8a3b381663118b4e1eff4cfc7d0954dd6ec88ace8030000000000006951210262415bf04af834423d3dd7ada4dc727a030865759f9fba5aee78c9ea71e58798210254da540fb2663b75e6c3cc61190ad0c2431643bab28ced783cd94079bbe72447210282b886c087eb37dc8182f14ba6cc3e9485ed618b95804d44aecc17c300b585b053ae1428ea0b000000001976a9144838d8b3588c4c7ba7c1d06f866e9b3739c6303788ac00000000", - }, - { - "comment": "send with custom input which is too low", - "in": ( - ( - "mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc", - [("mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns", None)], - b"\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x02\xfa\xf0\x80", - ), - { - "encoding": "multisig", - "regular_dust_size": DP["regular_dust_size"], - "custom_inputs": [ - { - "address": "mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc", - "txhex": "0100000002eff195acdf2bbd215daa8aca24eb667b563a731d34a9ab75c8d8df5df08be29b000000006c493046022100ec6fa8316a4f5cfd69816e31011022acce0933bd3b01248caa8b49e60de1b98a022100987ba974b2a4f9976a8d61d94009cb7f7986a827dc5730e999de1fb748d2046c01210282b886c087eb37dc8182f14ba6cc3e9485ed618b95804d44aecc17c300b585b0ffffffffeff195acdf2bbd215daa8aca24eb667b563a731d34a9ab75c8d8df5df08be29b010000006a47304402201f8fb2d62df22592cb8d37c68ab26563dbb8e270f7f8409ac0f6d7b24ddb5c940220314e5c767fd12b20116528c028eab2bfbad30eb963bd849993410049cf14a83d01210282b886c087eb37dc8182f14ba6cc3e9485ed618b95804d44aecc17c300b585b0ffffffff02145fea0b000000001976a9144838d8b3588c4c7ba7c1d06f866e9b3739c6303788ac0000000000000000346a32544553540000000a00000000000000010000000005f5e1000000000000000000000000000bebc2000032000000000000271000000000", - "confirmations": 74, - "vout": 0, - "script_pub_key": "76a9144838d8b3588c4c7ba7c1d06f866e9b3739c6303788ac", - "txid": "ae241be7be83ebb14902757ad94854f787d9730fc553d6f695346c9375c0d8c1", - "amount": 0.00001, - "account": "", - } - ], - }, - ), - "error": ( - exceptions.BalanceError, - "Insufficient BTC at address mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc. Need: 0.0001408 BTC (Including fee: 0.0000765 BTC), available: 0.00001 BTC. These fees are estimated for a confirmation target of 3 blocks, you can reduce them by using the `confirmation_target` parameter with a higher value or by manually setting the fees with the `fee` parameter. To spend unconfirmed coins, use the flag `--unconfirmed`. (Unconfirmed coins cannot be spent from multi‐sig addresses.)", - ), - }, - { - "comment": "send with custom input", - "in": ( - ( - "mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc", - [("mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns", None)], - b"\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x02\xfa\xf0\x80", - ), - { - "encoding": "multisig", - "regular_dust_size": DP["regular_dust_size"], - "custom_inputs": [ - { - "address": "mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc", - "txhex": "0100000002eff195acdf2bbd215daa8aca24eb667b563a731d34a9ab75c8d8df5df08be29b000000006c493046022100ec6fa8316a4f5cfd69816e31011022acce0933bd3b01248caa8b49e60de1b98a022100987ba974b2a4f9976a8d61d94009cb7f7986a827dc5730e999de1fb748d2046c01210282b886c087eb37dc8182f14ba6cc3e9485ed618b95804d44aecc17c300b585b0ffffffffeff195acdf2bbd215daa8aca24eb667b563a731d34a9ab75c8d8df5df08be29b010000006a47304402201f8fb2d62df22592cb8d37c68ab26563dbb8e270f7f8409ac0f6d7b24ddb5c940220314e5c767fd12b20116528c028eab2bfbad30eb963bd849993410049cf14a83d01210282b886c087eb37dc8182f14ba6cc3e9485ed618b95804d44aecc17c300b585b0ffffffff02145fea0b000000001976a9144838d8b3588c4c7ba7c1d06f866e9b3739c6303788ac0000000000000000346a32544553540000000a00000000000000010000000005f5e1000000000000000000000000000bebc2000032000000000000271000000000", - "confirmations": 74, - "vout": 0, - "script_pub_key": "76a9144838d8b3588c4c7ba7c1d06f866e9b3739c6303788ac", - "txid": "ae241be7be83ebb14902757ad94854f787d9730fc553d6f695346c9375c0d8c1", - "amount": 1.9990914, - "account": "", - } - ], - }, - ), - "out": "0100000001c1d8c075936c3495f6d653c50f73d987f75448d97a750249b1eb83bee71b24ae000000001976a9144838d8b3588c4c7ba7c1d06f866e9b3739c6303788acffffffff0336150000000000001976a9148d6ae8a3b381663118b4e1eff4cfc7d0954dd6ec88ace8030000000000006951210262415bf04af834423d3dd7ada4dc727a030865759f9fba5aee78c9ea71e58798210254da540fb2663b75e6c3cc61190ad0c2431643bab28ced783cd94079bbe72447210282b886c087eb37dc8182f14ba6cc3e9485ed618b95804d44aecc17c300b585b053ae1428ea0b000000001976a9144838d8b3588c4c7ba7c1d06f866e9b3739c6303788ac00000000", - }, - { - "comment": "send with multisig encoding and bytespersigop enabled for address with multiple UTXOs", - "mock_protocol_changes": {"bytespersigop": True}, - "in": ( - ( - "mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns", - [("mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc", None)], - b"\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x02\xfa\xf0\x80", - ), - {"encoding": "multisig", "regular_dust_size": DP["regular_dust_size"]}, - ), - "out": "0100000002ebe3111881a8733ace02271dcf606b7450c41a48c1cb21fd73f4ba787b353ce4000000001976a9148d6ae8a3b381663118b4e1eff4cfc7d0954dd6ec88acffffffff85497c27fbc3ecfbfb41f49cbf983e252a91636ec92f2863cb7eb755a33afcb9000000001976a9148d6ae8a3b381663118b4e1eff4cfc7d0954dd6ec88acffffffff0336150000000000001976a9144838d8b3588c4c7ba7c1d06f866e9b3739c6303788ace8030000000000006951210372a51ea175f108a1c635886815c4c468ca75a06798f864a1fad446f893f5fef121023260e421a30202f2e76f46acdb292c652371ca48b97460f7928ade8ecb02ea66210319f6e07b0b8d756156394b9dcf3b011fe9ac19f2700bd6b69a6a1783dbb8b97753ae524c9f06000000001976a9148d6ae8a3b381663118b4e1eff4cfc7d0954dd6ec88ac00000000", - }, - { - "comment": "send, different dust pubkey", - "in": ( - ( - "mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc", - [("mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns", None)], - b"\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x02\xfa\xf0\x80", - ), - { - "encoding": "multisig", - "regular_dust_size": DP["regular_dust_size"], - "dust_return_pubkey": "0319f6e07b0b8d756156394b9dcf3b011fe9ac19f2700bd6b69a6a1783dbb8b977", - }, - ), - "out": "0100000001c1d8c075936c3495f6d653c50f73d987f75448d97a750249b1eb83bee71b24ae000000001976a9144838d8b3588c4c7ba7c1d06f866e9b3739c6303788acffffffff0336150000000000001976a9148d6ae8a3b381663118b4e1eff4cfc7d0954dd6ec88ace8030000000000006951210262415bf04af834423d3dd7ada4dc727a030865759f9fba5aee78c9ea71e58798210254da540fb2663b75e6c3cc61190ad0c2431643bab28ced783cd94079bbe72447210319f6e07b0b8d756156394b9dcf3b011fe9ac19f2700bd6b69a6a1783dbb8b97753ae1428ea0b000000001976a9144838d8b3588c4c7ba7c1d06f866e9b3739c6303788ac00000000", - }, - { - "comment": "send, burn dust pubkey", - "in": ( - ( - "mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc", - [("mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns", None)], - b"\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x02\xfa\xf0\x80", - ), - { - "encoding": "multisig", - "regular_dust_size": DP["regular_dust_size"], - "dust_return_pubkey": False, - }, - ), - "out": "0100000001c1d8c075936c3495f6d653c50f73d987f75448d97a750249b1eb83bee71b24ae000000001976a9144838d8b3588c4c7ba7c1d06f866e9b3739c6303788acffffffff0336150000000000001976a9148d6ae8a3b381663118b4e1eff4cfc7d0954dd6ec88ace8030000000000006951210262415bf04af834423d3dd7ada4dc727a030865759f9fba5aee78c9ea71e58798210254da540fb2663b75e6c3cc61190ad0c2431643bab28ced783cd94079bbe724472111111111111111111111111111111111111111111111111111111111111111111153ae1428ea0b000000001976a9144838d8b3588c4c7ba7c1d06f866e9b3739c6303788ac00000000", - }, - { - "comment": "send from P2SH address, multsig encoding, no dust pubkey", - "in": ( - ( - P2SH_ADDR[0], - [("mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns", None)], - b"\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x02\xfa\xf0\x80", - ), - { - "encoding": "multisig", - "dust_return_pubkey": False, - "regular_dust_size": DP["regular_dust_size"], - }, - ), - "out": "01000000015001af2c4c3bc2c43b6233261394910d10fb157a082d9b3038c65f2d01e4ff200000000017a9144264cfd7eb65f8cbbdba98bd9815d5461fad8d7e87ffffffff0336150000000000001976a9148d6ae8a3b381663118b4e1eff4cfc7d0954dd6ec88ace8030000000000006951210397b51de78b0f3a171f5ed27fff56d17dcba739c8b00035c8bbb9c380fdc4ed1321036932bcbeac2a4d8846b7feb4bf93b2b88efd02f2d8dc1fc0067bcc972257e3912111111111111111111111111111111111111111111111111111111111111111111153ae00aaf5050000000017a9144264cfd7eb65f8cbbdba98bd9815d5461fad8d7e8700000000", - }, - { - "comment": "send to P2SH address", - "in": ( - ( - "mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc", - [(P2SH_ADDR[0], None)], - b"\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x02\xfa\xf0\x80", - ), - {"encoding": "multisig", "regular_dust_size": DP["regular_dust_size"]}, - ), - "out": "0100000001c1d8c075936c3495f6d653c50f73d987f75448d97a750249b1eb83bee71b24ae000000001976a9144838d8b3588c4c7ba7c1d06f866e9b3739c6303788acffffffff03361500000000000017a9144264cfd7eb65f8cbbdba98bd9815d5461fad8d7e87e8030000000000006951210262415bf04af834423d3dd7ada4dc727a030865759f9fba5aee78c9ea71e58798210254da540fb2663b75e6c3cc61190ad0c2431643bab28ced783cd94079bbe72447210282b886c087eb37dc8182f14ba6cc3e9485ed618b95804d44aecc17c300b585b053ae1428ea0b000000001976a9144838d8b3588c4c7ba7c1d06f866e9b3739c6303788ac00000000", - }, - { - "comment": "send dest multisig", - "in": ( - ( - "mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc", - [ - ( - "1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2", - None, - ) - ], - b"\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x05\xf5\xe1\x00", - ), - {"encoding": "multisig"}, - ), - "out": "0100000001c1d8c075936c3495f6d653c50f73d987f75448d97a750249b1eb83bee71b24ae000000001976a9144838d8b3588c4c7ba7c1d06f866e9b3739c6303788acffffffff03e8030000000000004751210282b886c087eb37dc8182f14ba6cc3e9485ed618b95804d44aecc17c300b585b0210319f6e07b0b8d756156394b9dcf3b011fe9ac19f2700bd6b69a6a1783dbb8b97752aee8030000000000006951210362415bf04af834423d3dd7ada4dc727a030865759f9fba5aee7fc6fbf1e5875a210254da540fb2663b75e6c3cc61190ad0c2431643bab28ced783cd94079bbe72447210282b886c087eb37dc8182f14ba6cc3e9485ed618b95804d44aecc17c300b585b053ae6239ea0b000000001976a9144838d8b3588c4c7ba7c1d06f866e9b3739c6303788ac00000000", - }, - { - "comment": "send dest multisig exact_fee", - "in": ( - ( - "mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc", - [ - ( - "1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2", - None, - ) - ], - b"\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x05\xf5\xe1\x00", - ), - {"encoding": "multisig", "exact_fee": 1}, - ), - "out": "0100000001c1d8c075936c3495f6d653c50f73d987f75448d97a750249b1eb83bee71b24ae000000001976a9144838d8b3588c4c7ba7c1d06f866e9b3739c6303788acffffffff03e8030000000000004751210282b886c087eb37dc8182f14ba6cc3e9485ed618b95804d44aecc17c300b585b0210319f6e07b0b8d756156394b9dcf3b011fe9ac19f2700bd6b69a6a1783dbb8b97752aee8030000000000006951210362415bf04af834423d3dd7ada4dc727a030865759f9fba5aee7fc6fbf1e5875a210254da540fb2663b75e6c3cc61190ad0c2431643bab28ced783cd94079bbe72447210282b886c087eb37dc8182f14ba6cc3e9485ed618b95804d44aecc17c300b585b053ae4357ea0b000000001976a9144838d8b3588c4c7ba7c1d06f866e9b3739c6303788ac00000000", - }, - { - "comment": "send dest opreturn", - "in": ( - ( - "mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc", - [ - ( - "1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2", - None, - ) - ], - b"\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x05\xf5\xe1\x00", - ), - {"encoding": "opreturn"}, - ), - "out": "0100000001c1d8c075936c3495f6d653c50f73d987f75448d97a750249b1eb83bee71b24ae000000001976a9144838d8b3588c4c7ba7c1d06f866e9b3739c6303788acffffffff03e8030000000000004751210282b886c087eb37dc8182f14ba6cc3e9485ed618b95804d44aecc17c300b585b0210319f6e07b0b8d756156394b9dcf3b011fe9ac19f2700bd6b69a6a1783dbb8b97752ae00000000000000001e6a1c2a504df746f83442653dd7ada4dc727a030865749e9fba5aeb8fd21a7d41ea0b000000001976a9144838d8b3588c4c7ba7c1d06f866e9b3739c6303788ac00000000", - }, - { - "comment": "send dest pubkeyhash", - "in": ( - ( - "mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc", - [ - ( - "1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2", - None, - ) - ], - b"\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x05\xf5\xe1\x00", - ), - {"encoding": "pubkeyhash", "regular_dust_size": DP["regular_dust_size"]}, - ), - "out": "0100000001c1d8c075936c3495f6d653c50f73d987f75448d97a750249b1eb83bee71b24ae000000001976a9144838d8b3588c4c7ba7c1d06f866e9b3739c6303788acffffffff04e8030000000000004751210282b886c087eb37dc8182f14ba6cc3e9485ed618b95804d44aecc17c300b585b0210319f6e07b0b8d756156394b9dcf3b011fe9ac19f2700bd6b69a6a1783dbb8b97752ae36150000000000001976a9146d415bf04af834423d3dd7ada4dc727a0308657588ac36150000000000001976a9146f415bf04af834423d3cd7ada4dc778fe208657588ac2314ea0b000000001976a9144838d8b3588c4c7ba7c1d06f866e9b3739c6303788ac00000000", - }, - { - "comment": "send dest 1-of-1", - "in": ( - ( - "mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc", - [("1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_1", None)], - b"\x00\x00\x00\x00\x00\x00\x00\xa2[\xe3Kf\x00\x00\x00\x00\x00\x00\x00\x00", - ), - {"encoding": "multisig"}, - ), - "error": (script.MultiSigAddressError, "Invalid signatures_possible."), - }, - { - "comment": "send source multisig", - "in": ( - ( - "1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2", - [("mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc", None)], - b"\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x05\xf5\xe1\x00", - ), - {"encoding": "multisig", "regular_dust_size": DP["regular_dust_size"]}, - ), - "out": "0100000001051511b66ba309e3dbff1fde22aefaff4190675235a010a5c6acb1e43da8005f000000004751210282b886c087eb37dc8182f14ba6cc3e9485ed618b95804d44aecc17c300b585b0210319f6e07b0b8d756156394b9dcf3b011fe9ac19f2700bd6b69a6a1783dbb8b97752aeffffffff0336150000000000001976a9144838d8b3588c4c7ba7c1d06f866e9b3739c6303788ace8030000000000006951210334caf7ca87f0fd78a01d9a0d68221e55beef3722da8be72d254dd351c26108892102bc14528340c27d005aa9e2913fd8c032ffa94625307a450077125d580099b57d210282b886c087eb37dc8182f14ba6cc3e9485ed618b95804d44aecc17c300b585b053ae00aaf505000000004751210282b886c087eb37dc8182f14ba6cc3e9485ed618b95804d44aecc17c300b585b0210319f6e07b0b8d756156394b9dcf3b011fe9ac19f2700bd6b69a6a1783dbb8b97752ae00000000", - }, - { - "comment": "send source and dest multisig", - "in": ( - ( - "1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2", - [ - ( - "1_mnfAHmddVibnZNSkh8DvKaQoiEfNsxjXzH_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2", - None, - ) - ], - b"\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x05\xf5\xe1\x00", - ), - {"encoding": "multisig"}, - ), - "out": "0100000001051511b66ba309e3dbff1fde22aefaff4190675235a010a5c6acb1e43da8005f000000004751210282b886c087eb37dc8182f14ba6cc3e9485ed618b95804d44aecc17c300b585b0210319f6e07b0b8d756156394b9dcf3b011fe9ac19f2700bd6b69a6a1783dbb8b97752aeffffffff03e8030000000000004751210319f6e07b0b8d756156394b9dcf3b011fe9ac19f2700bd6b69a6a1783dbb8b977210378ee11c3fb97054877a809ce083db292b16d971bcdc6aa4c8f92087133729d8b52aee8030000000000006951210334caf7ca87f0fd78a01d9a0d68221e55beef3722da8be72d254dd351c26108892102bc14528340c27d005aa9e2913fd8c032ffa94625307a450077125d580099b57d210282b886c087eb37dc8182f14ba6cc3e9485ed618b95804d44aecc17c300b585b053ae4ebbf505000000004751210282b886c087eb37dc8182f14ba6cc3e9485ed618b95804d44aecc17c300b585b0210319f6e07b0b8d756156394b9dcf3b011fe9ac19f2700bd6b69a6a1783dbb8b97752ae00000000", - }, - { - "comment": "maximum quantity send", - "in": ( - ( - "mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc", - [("mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns", None)], - b"\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03:>\x7f\xff\xff\xff\xff\xff\xff\xff", - ), - {"encoding": "multisig", "regular_dust_size": DP["regular_dust_size"]}, - ), - "out": "0100000001c1d8c075936c3495f6d653c50f73d987f75448d97a750249b1eb83bee71b24ae000000001976a9144838d8b3588c4c7ba7c1d06f866e9b3739c6303788acffffffff0336150000000000001976a9148d6ae8a3b381663118b4e1eff4cfc7d0954dd6ec88ace8030000000000006951210362415bf04af834423d3dd7ada4dc727a0308664fa0e045a51185cce50ee58717210254da540fb2663b75e6c3cc61190ad0c2431643bab28ced783cd94079bbe72447210282b886c087eb37dc8182f14ba6cc3e9485ed618b95804d44aecc17c300b585b053ae1428ea0b000000001976a9144838d8b3588c4c7ba7c1d06f866e9b3739c6303788ac00000000", - }, - { - "comment": "issuance", - "in": ( - ( - "mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc", - [], - b"\x00\x00\x00\x16\x00\x00\x00\x00\x00\x0b\xfc\xe3\x00\x00\x00\x00\x00\x00\x03\xe8\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc0NULL", - ), - {"encoding": "multisig"}, - ), - "out": "0100000001c1d8c075936c3495f6d653c50f73d987f75448d97a750249b1eb83bee71b24ae000000001976a9144838d8b3588c4c7ba7c1d06f866e9b3739c6303788acffffffff02e8030000000000006951210355415bf04af834423d3dd7adb2dc727a03086e897d9fba5aee7a331919e48780210254da540fb2663b75268d992d550ad0c2431643bab28ced783cd94079bbe7244d210282b886c087eb37dc8182f14ba6cc3e9485ed618b95804d44aecc17c300b585b053ae9c40ea0b000000001976a9144838d8b3588c4c7ba7c1d06f866e9b3739c6303788ac00000000", - }, - { - "comment": "issuance", - "in": ( - ( - "mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc", - [("mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns", None)], - b"\x00\x00\x00\x16\x00\x00\x00\xa2[\xe3Kf\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc0NULL", - ), - {"encoding": "multisig", "regular_dust_size": DP["regular_dust_size"]}, - ), - "out": "0100000001c1d8c075936c3495f6d653c50f73d987f75448d97a750249b1eb83bee71b24ae000000001976a9144838d8b3588c4c7ba7c1d06f866e9b3739c6303788acffffffff0336150000000000001976a9148d6ae8a3b381663118b4e1eff4cfc7d0954dd6ec88ace8030000000000006951210355415bf04af834423d3dd7adb2dc727aa153863ef89fba5aee7a331af1e48750210254da540fb2663b75268d992d550ad0c2431643bab28ced783cd94079bbe7244d210282b886c087eb37dc8182f14ba6cc3e9485ed618b95804d44aecc17c300b585b053ae1428ea0b000000001976a9144838d8b3588c4c7ba7c1d06f866e9b3739c6303788ac00000000", - }, - { - "comment": "multisig issuance", - "in": ( - ( - "1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2", - [], - b"\x00\x00\x00\x16\x00\x00\x00\x00\x00\x0b\xfc\xe3\x00\x00\x00\x00\x00\x00\x03\xe8\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc0NULL", - ), - {"encoding": "multisig"}, - ), - "out": "0100000001051511b66ba309e3dbff1fde22aefaff4190675235a010a5c6acb1e43da8005f000000004751210282b886c087eb37dc8182f14ba6cc3e9485ed618b95804d44aecc17c300b585b0210319f6e07b0b8d756156394b9dcf3b011fe9ac19f2700bd6b69a6a1783dbb8b97752aeffffffff02e8030000000000006951210203caf7ca87f0fd78a01d9a0d7e221e55beef3cde388be72d254826b32a6008b62103bc14528340c27d009ae7b7dd73d8c032ffa94625307a450077125d580099b55a210282b886c087eb37dc8182f14ba6cc3e9485ed618b95804d44aecc17c300b585b053ae88c2f505000000004751210282b886c087eb37dc8182f14ba6cc3e9485ed618b95804d44aecc17c300b585b0210319f6e07b0b8d756156394b9dcf3b011fe9ac19f2700bd6b69a6a1783dbb8b97752ae00000000", - }, - { - "comment": "maximum quantity issuance", - "in": ( - ( - "mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc", - [], - b"\x00\x00\x00\x16\x00\x00\x00\x00\xdd\x96\xd2t\x7f\xff\xff\xff\xff\xff\xff\xff\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc0NULL", - ), - {"encoding": "multisig"}, - ), - "out": "0100000001c1d8c075936c3495f6d653c50f73d987f75448d97a750249b1eb83bee71b24ae000000001976a9144838d8b3588c4c7ba7c1d06f866e9b3739c6303788acffffffff02e8030000000000006951210355415bf04af834423d3dd7adb2dc727a03d5f3a7eae045a51185cce50ee487c2210254da540fb2663b75268d992d550ad0c2431643bab28ced783cd94079bbe7244d210282b886c087eb37dc8182f14ba6cc3e9485ed618b95804d44aecc17c300b585b053ae9c40ea0b000000001976a9144838d8b3588c4c7ba7c1d06f866e9b3739c6303788ac00000000", - }, - { - "comment": "transfer asset to multisig", - "in": ( - ( - "mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc", - [ - ( - "1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2", - None, - ) - ], - b"\x00\x00\x00\x16\x00\x00\x00\xa2[\xe3Kf\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc0NULL", - ), - {"encoding": "multisig"}, - ), - "out": "0100000001c1d8c075936c3495f6d653c50f73d987f75448d97a750249b1eb83bee71b24ae000000001976a9144838d8b3588c4c7ba7c1d06f866e9b3739c6303788acffffffff03e8030000000000004751210282b886c087eb37dc8182f14ba6cc3e9485ed618b95804d44aecc17c300b585b0210319f6e07b0b8d756156394b9dcf3b011fe9ac19f2700bd6b69a6a1783dbb8b97752aee8030000000000006951210355415bf04af834423d3dd7adb2dc727aa153863ef89fba5aee7a331af1e48750210254da540fb2663b75268d992d550ad0c2431643bab28ced783cd94079bbe7244d210282b886c087eb37dc8182f14ba6cc3e9485ed618b95804d44aecc17c300b585b053ae6239ea0b000000001976a9144838d8b3588c4c7ba7c1d06f866e9b3739c6303788ac00000000", - }, - { - "comment": "order", - "in": ( - ( - "mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc", - [], - b"\x00\x00\x00\n\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\xfa\xf0\x80\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x05\xf5\xe1\x00\x00\n\x00\x00\x00\x00\x00\x00\x00\x00", - ), - {"encoding": "multisig", "fee_provided": DP["fee_provided"]}, - ), - "out": "0100000001c1d8c075936c3495f6d653c50f73d987f75448d97a750249b1eb83bee71b24ae000000001976a9144838d8b3588c4c7ba7c1d06f866e9b3739c6303788acffffffff02e8030000000000006951210348415bf04af834423d3dd7adaedc727a030865759e9fba5aee78c9ea71e5870f210354da540fb2673b75e6c3c994f80ad0c8431643bab28ced783cd94079bbe72445210282b886c087eb37dc8182f14ba6cc3e9485ed618b95804d44aecc17c300b585b053aeec18db0b000000001976a9144838d8b3588c4c7ba7c1d06f866e9b3739c6303788ac00000000", - }, - { - "comment": "multisig order", - "in": ( - ( - "1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2", - [], - b"\x00\x00\x00\n\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\xfa\xf0\x80\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x05\xf5\xe1\x00\x00\n\x00\x00\x00\x00\x00\x00\x00\x00", - ), - {"encoding": "multisig", "fee_provided": DP["fee_provided"]}, - ), - "out": "0100000001051511b66ba309e3dbff1fde22aefaff4190675235a010a5c6acb1e43da8005f000000004751210282b886c087eb37dc8182f14ba6cc3e9485ed618b95804d44aecc17c300b585b0210319f6e07b0b8d756156394b9dcf3b011fe9ac19f2700bd6b69a6a1783dbb8b97752aeffffffff02e803000000000000695121021ecaf7ca87f0fd78a01d9a0d62221e55beef3722db8be72d254adc40426108d02103bc14528340c37d005aa9e764ded8c038ffa94625307a450077125d580099b53b210282b886c087eb37dc8182f14ba6cc3e9485ed618b95804d44aecc17c300b585b053aed89ae605000000004751210282b886c087eb37dc8182f14ba6cc3e9485ed618b95804d44aecc17c300b585b0210319f6e07b0b8d756156394b9dcf3b011fe9ac19f2700bd6b69a6a1783dbb8b97752ae00000000", - }, - { - "comment": "multisig order", - "in": ( - ( - "1_mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc_mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns_2", - [], - b"\x00\x00\x00\n\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x06B,@\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\xfa\xf0\x80\x00\n\x00\x00\x00\x00\x00\r\xbb\xa0", - ), - {"encoding": "multisig"}, - ), - "out": "0100000001051511b66ba309e3dbff1fde22aefaff4190675235a010a5c6acb1e43da8005f000000004751210282b886c087eb37dc8182f14ba6cc3e9485ed618b95804d44aecc17c300b585b0210319f6e07b0b8d756156394b9dcf3b011fe9ac19f2700bd6b69a6a1783dbb8b97752aeffffffff02e803000000000000695121031ecaf7ca87f0fd78a01d9a0d62221e55beef3722da8be72d254e649c8261083d2102bc14528340c27d005aa9e06bcf58c038ffa946253077fea077125d580099b5bb210282b886c087eb37dc8182f14ba6cc3e9485ed618b95804d44aecc17c300b585b053ae88c2f505000000004751210282b886c087eb37dc8182f14ba6cc3e9485ed618b95804d44aecc17c300b585b0210319f6e07b0b8d756156394b9dcf3b011fe9ac19f2700bd6b69a6a1783dbb8b97752ae00000000", - }, - { - "comment": "maximum quantity order", - "in": ( - ( - "mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc", - [], - b"\x00\x00\x00\n\x00\x00\x00\x00\x00\x03:>\x7f\xff\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x05\xf5\xe1\x00\x00\n\x00\x00\x00\x00\x00\r\xbb\xa0", - ), - {"encoding": "multisig"}, - ), - "out": "0100000001c1d8c075936c3495f6d653c50f73d987f75448d97a750249b1eb83bee71b24ae000000001976a9144838d8b3588c4c7ba7c1d06f866e9b3739c6303788acffffffff02e8030000000000006951210248415bf04af834423d3dd7adaedc727a0308664fa0e045a51185cce50ee58759210354da540fb2673b75e6c3c994f80ad0c8431643bab28156d83cd94079bbe72452210282b886c087eb37dc8182f14ba6cc3e9485ed618b95804d44aecc17c300b585b053ae9c40ea0b000000001976a9144838d8b3588c4c7ba7c1d06f866e9b3739c6303788ac00000000", - }, - { - "comment": "dividend", - "in": ( - ( - "mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc", - [], - b"\x00\x00\x002\x00\x00\x00\x00\x05\xf5\xe1\x00\x00\x00\x00\xa2[\xe3Kf\x00\x00\x00\x00\x00\x00\x00\x01", - ), - {"encoding": "multisig"}, - ), - "out": "0100000001c1d8c075936c3495f6d653c50f73d987f75448d97a750249b1eb83bee71b24ae000000001976a9144838d8b3588c4c7ba7c1d06f866e9b3739c6303788acffffffff02e803000000000000695121035a415bf04af834423d3dd7ad96dc727a030d90949e9fba5a4c21d05197e58735210254da540fb2673b75e6c3cc61190ad0c2431643bab28ced783cd94079bbe7246f210282b886c087eb37dc8182f14ba6cc3e9485ed618b95804d44aecc17c300b585b053ae9c40ea0b000000001976a9144838d8b3588c4c7ba7c1d06f866e9b3739c6303788ac00000000", - }, - { - "comment": "dividend", - "in": ( - ( - "mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc", - [], - b"\x00\x00\x002\x00\x00\x00\x00\x00\x00\x00\x01\x00\x06\xca\xd8\xdc\x7f\x0bf\x00\x00\x00\x00\x00\x00\x00\x01", - ), - {"encoding": "multisig"}, - ), - "out": "0100000001c1d8c075936c3495f6d653c50f73d987f75448d97a750249b1eb83bee71b24ae000000001976a9144838d8b3588c4c7ba7c1d06f866e9b3739c6303788acffffffff02e803000000000000695121025a415bf04af834423d3dd7ad96dc727a030865759f9fbc9036a64c1197e587c8210254da540fb2673b75e6c3cc61190ad0c2431643bab28ced783cd94079bbe7246f210282b886c087eb37dc8182f14ba6cc3e9485ed618b95804d44aecc17c300b585b053ae9c40ea0b000000001976a9144838d8b3588c4c7ba7c1d06f866e9b3739c6303788ac00000000", - }, - { - "comment": "free issuance", - "in": ( - ( - "mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc", - [], - b"\x00\x00\x00\x16\xff\xff\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\x00\x00\x03\xe8\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc0NULL", - ), - {"encoding": "multisig"}, - ), - "out": "0100000001c1d8c075936c3495f6d653c50f73d987f75448d97a750249b1eb83bee71b24ae000000001976a9144838d8b3588c4c7ba7c1d06f866e9b3739c6303788acffffffff02e8030000000000006951210255415bf04af834423d3dd7adb2238d85fcf79a8a619fba5aee7a331919e4870d210254da540fb2663b75268d992d550ad0c2431643bab28ced783cd94079bbe7244d210282b886c087eb37dc8182f14ba6cc3e9485ed618b95804d44aecc17c300b585b053ae9c40ea0b000000001976a9144838d8b3588c4c7ba7c1d06f866e9b3739c6303788ac00000000", - }, - { - "comment": "large broadcast", - "in": ( - ( - "mn6q3dS2EnDUx3bmyWc6D4szJNVGtaR7zc", - [], - b"\x00\x00\x00\x1e^\xa6\xf5\x00?\xf0\x00\x00\x00\x00\x00\x00\x00LK@lOver 80 characters test test test test test test test test test test test test test test test test test test", - ), - {}, - ), - "out": "0100000001c1d8c075936c3495f6d653c50f73d987f75448d97a750249b1eb83bee71b24ae000000001976a9144838d8b3588c4c7ba7c1d06f866e9b3739c6303788acffffffff04e8030000000000006951210343415bf04af834423d3dd7adba82d48f033795759e9fba5aee7a7f51b189c8c0210322bf262f8a561b168ea2be007a7eb5b0303637dfc1f8cd0c59aa3459cf825784210282b886c087eb37dc8182f14ba6cc3e9485ed618b95804d44aecc17c300b585b053aee8030000000000006951210343415bf04af834423d49f7d9c1af065a776d1601beebdf299a5a477f8291a7c4210220bf277b92125e0692e3b8046a7ef0b62665379ac6e99e0c1cad250acfc750c9210282b886c087eb37dc8182f14ba6cc3e9485ed618b95804d44aecc17c300b585b053aee8030000000000006951210361415bf04af834423d58a4d984a8170977281110edeb9a2e8b09473a8580f45d210220da540fb2663b75e6c3cc61190ad0c2431643bab28ced783cd94079bbe724dc210282b886c087eb37dc8182f14ba6cc3e9485ed618b95804d44aecc17c300b585b053aefa28ea0b000000001976a9144838d8b3588c4c7ba7c1d06f866e9b3739c6303788ac00000000", - }, - ], - }, "api_v1": { "get_rows": [ { diff --git a/counterparty-core/counterpartycore/test/p2sh_encoding_test.py b/counterparty-core/counterpartycore/test/p2sh_encoding_test.py index 00fc599b11..b427f05250 100644 --- a/counterparty-core/counterpartycore/test/p2sh_encoding_test.py +++ b/counterparty-core/counterpartycore/test/p2sh_encoding_test.py @@ -27,7 +27,7 @@ transaction, util, ) -from counterpartycore.lib.transaction_helper import p2sh_encoding # noqa: E402 +from counterpartycore.lib.transaction_helper import p2sh_serializer # noqa: E402 FIXTURE_SQL_FILE = CURR_DIR + "/fixtures/scenarios/unittest_fixture.sql" FIXTURE_DB = tempfile.gettempdir() + "/fixtures.unittest_fixture.db" @@ -76,7 +76,6 @@ def test_p2sh_encoding(server_db): for utxo in backend.addrindexrs.get_unspent_txouts(source) ) - transaction.initialise() fee = 20000 fee_per_kb = 50000 result = transaction.compose_transaction( @@ -85,10 +84,10 @@ def test_p2sh_encoding(server_db): {"source": source, "destination": destination, "asset": "XCP", "quantity": 100}, encoding="p2sh", fee_per_kb=fee_per_kb, - fee=fee, + exact_fee=fee, ) assert not isinstance(result, list) - pretxhex = result + pretxhex = result["unsigned_pretx_hex"] pretx = bitcoinlib.core.CTransaction.deserialize(binascii.unhexlify(pretxhex)) @@ -156,7 +155,9 @@ def test_p2sh_encoding(server_db): "send", {"source": source, "destination": destination, "asset": "XCP", "quantity": 100}, ) - othertx = bitcoinlib.core.CTransaction.deserialize(binascii.unhexlify(result)) + othertx = bitcoinlib.core.CTransaction.deserialize( + binascii.unhexlify(result["unsigned_tx_hex"]) + ) othertxid = bitcoinlib.core.lx( bitcoinlib.core.b2x(othertx.vin[0].prevout.hash) ) # reverse hash @@ -174,7 +175,7 @@ def test_p2sh_encoding(server_db): fee_per_kb=fee_per_kb, ) assert not isinstance(result, list) - datatxhex = result + datatxhex = result["unsigned_tx_hex"] datatx = bitcoinlib.core.CTransaction.deserialize(binascii.unhexlify(datatxhex)) sumvin = sum([pretx.vout[n].nValue for n, vin in enumerate(datatx.vin)]) @@ -272,7 +273,7 @@ def test_p2sh_encoding_long_data(server_db): fee_per_kb=fee_per_kb, ) assert not isinstance(result, list) - pretxhex = result + pretxhex = result["unsigned_pretx_hex"] pretx = bitcoinlib.core.CTransaction.deserialize(binascii.unhexlify(pretxhex)) actual_fee = int(len(pretxhex) / 2 * fee_per_kb / 1000) # noqa: F841 @@ -350,7 +351,7 @@ def test_p2sh_encoding_long_data(server_db): fee_per_kb=fee_per_kb, ) assert not isinstance(result, list) - datatxhex = result + datatxhex = result["unsigned_tx_hex"] datatx = bitcoinlib.core.CTransaction.deserialize(binascii.unhexlify(datatxhex)) sumvin = sum([pretx.vout[n].nValue for n, vin in enumerate(datatx.vin)]) @@ -446,7 +447,7 @@ def test_p2sh_encoding_p2sh_source_not_supported(server_db): {"source": source, "destination": destination, "asset": "XCP", "quantity": 100}, encoding="p2sh", fee_per_kb=fee_per_kb, - fee=fee, + exact_fee=fee, ) @@ -466,7 +467,7 @@ def test_p2sh_encoding_manual_multisig_transaction(server_db): for p in [DP["pubkey"][ADDR[0]], DP["pubkey"][ADDR[1]], DP["pubkey"][ADDR[2]]] ] data_drop = b"deadbeef01" - script_sig, redeem_script, output_script = p2sh_encoding.make_p2sh_encoding_redeemscript( + script_sig, redeem_script, output_script = p2sh_serializer.make_p2sh_encoding_redeemscript( data_drop, n=0, pub_key=None, @@ -499,8 +500,9 @@ def test_p2sh_encoding_manual_multisig_transaction(server_db): p2sh_source_multisig_pubkeys_required=2, encoding="p2sh", fee_per_kb=fee_per_kb, - fee=fee, + exact_fee=fee, ) + pretxhex = pretxhex["unsigned_pretx_hex"] # debugTransaction = bitcoinlib.core.CTransaction.deserialize(binascii.unhexlify(pretxhex)) # store transaction @@ -523,7 +525,7 @@ def test_p2sh_encoding_manual_multisig_transaction(server_db): fee_per_kb=fee_per_kb, ) assert not isinstance(result, list) - datatxhex = result + datatxhex = result["unsigned_tx_hex"] datatx = bitcoinlib.core.CTransaction.deserialize(binascii.unhexlify(datatxhex)) # noqa: F841 @@ -593,7 +595,7 @@ def test_p2sh_signed_multisig_script_decoding(): ctx = deserialize.deserialize_tx(txHex, True) vin = ctx["vin"][0] asm = script.script_to_asm(vin["script_sig"]) - new_source, new_destination, new_data = p2sh_encoding.decode_p2sh_input(asm) + new_source, new_destination, new_data = p2sh_serializer.decode_p2sh_input(asm) assert new_data == binascii.unhexlify( "1e5a3ae08000000000000000000000000073434950203620737570706f727473207573696e672070327368206164647265737365732061732074686520736f7572636520616464726573732062757420726571756972657320616e206164646974696f6e616c20696e70757420696e207468652064617461207472616e73616374696f6e2e" diff --git a/counterparty-core/counterpartycore/test/regtest/apidoc/apicache.json b/counterparty-core/counterpartycore/test/regtest/apidoc/apicache.json index 6e744f2a6d..6efe310f47 100644 --- a/counterparty-core/counterpartycore/test/regtest/apidoc/apicache.json +++ b/counterparty-core/counterpartycore/test/regtest/apidoc/apicache.json @@ -2,93 +2,93 @@ "/v2/blocks": { "result": [ { - "block_index": 193, - "block_hash": "0c078dccb9971fd739e4646df2613ddf86bea7f006a0ec0aabf2253f9f835f58", - "block_time": 1726509912, - "previous_block_hash": "356d63b3ac8ed95b008257f61aee3850ec360d8ac8d808d0b0e0ceab8de6ee1e", + "block_index": 194, + "block_hash": "52ace614bdf700970fae116cbd930af95fe09c4faee117d3d3c0c24860eedf93", + "block_time": 1727201016, + "previous_block_hash": "72aff9bcfbc6a9f61cd1c192dc2322be91c061a847e81cc3b45854c9af31a6d5", "difficulty": 545259519, - "ledger_hash": "260bca5241d162936ae20e643b78cd69f7c3d74370745be7447cbaae1dde9a9c", - "txlist_hash": "1ecd81dbebae4723fab572ad7f59f8712a540b524662de521ea50631e83b7e7b", - "messages_hash": "a5b39b3745218a45506fcbd2397ab67628c6263f2173159bdf4b259978114bde", + "ledger_hash": "d16329e826a589a6af06767a820f5914ee69e22398c8612ed0c73909a1ab9b1f", + "txlist_hash": "555a7b8103a776f23b649ec297d2177fe885443dc976750a259547be47cd26e7", + "messages_hash": "1bc8906db34e5bf45f47eca127e2b4cc60e46bbc8cf4301617e02c6f29b32301", "transaction_count": 1, "confirmed": true }, { - "block_index": 192, - "block_hash": "356d63b3ac8ed95b008257f61aee3850ec360d8ac8d808d0b0e0ceab8de6ee1e", - "block_time": 1726509908, - "previous_block_hash": "44555f5ae4cd1f61f3df9e675ad106b01fca685a76eff37b685758a1f234afb2", + "block_index": 193, + "block_hash": "72aff9bcfbc6a9f61cd1c192dc2322be91c061a847e81cc3b45854c9af31a6d5", + "block_time": 1727201012, + "previous_block_hash": "7aa8cd7d46e84e234d53f8c14736afd98d1d5b8441f4f425fe8c6a52c3f33c87", "difficulty": 545259519, - "ledger_hash": "a352fa09b0c8621cb30776de9b016c7b433da3453f51a01610e0d8a706b94c7e", - "txlist_hash": "83367c52c5808cc55d9902d446542239ae36c22d7b7d92678f128ad83f58aaea", - "messages_hash": "3172cc5949c44703a36181b1b938faf388d0cf72e686932ee5ee218ee893e4a6", + "ledger_hash": "fe72f9a183bbe8818f70ff6fff77b10468c2dc87a83499c4efa91349405a7d67", + "txlist_hash": "aba2669687ed43d3c307f90145085717cceb79038c715445f52cb587817ca510", + "messages_hash": "2d72a21fa2540f29a91bb2530c0078d445e984faccd9deb0b88d92a542a6c1bb", "transaction_count": 1, "confirmed": true }, { - "block_index": 191, - "block_hash": "44555f5ae4cd1f61f3df9e675ad106b01fca685a76eff37b685758a1f234afb2", - "block_time": 1726509903, - "previous_block_hash": "214a1e1ed38b3e555167f5f21d78c8c3e487ea62d748cd8200a3b3e18f2b6017", + "block_index": 192, + "block_hash": "7aa8cd7d46e84e234d53f8c14736afd98d1d5b8441f4f425fe8c6a52c3f33c87", + "block_time": 1727201008, + "previous_block_hash": "6df0e71250aea0de3e29c053f2ca49cc02c029f911a25356f455303c447d0a63", "difficulty": 545259519, - "ledger_hash": "20f305d9381284d270d7c1d22ba897f66d072d2f1df42dfeeffdf903e9627921", - "txlist_hash": "57455bb363a21c6f49fa641f5bedf87e9eedc785270ddc90711b98f54eb0f113", - "messages_hash": "2f8a089ba7d158feab1cd9daea1fc5a85d43e2de099feb80f384f9fafe9efbb5", + "ledger_hash": "b628adecb3a2aaf9e34fdd69db9d8deca8cd034cc5003533e94931ea8e2b3eb9", + "txlist_hash": "7907f570d25dd6ee1b06021b8124df870185e5dff3ed08257498d094cd0986b2", + "messages_hash": "fbc2a23c6dbea37463fe9e7b83b6f116bcdc875ab356c17de0eed630e0ca9998", "transaction_count": 1, "confirmed": true }, { - "block_index": 190, - "block_hash": "214a1e1ed38b3e555167f5f21d78c8c3e487ea62d748cd8200a3b3e18f2b6017", - "block_time": 1726509899, - "previous_block_hash": "4147554b4c1d081b097b1c6278509e7da43fbec27bdb1ad6cb8414e44ba4445b", + "block_index": 191, + "block_hash": "6df0e71250aea0de3e29c053f2ca49cc02c029f911a25356f455303c447d0a63", + "block_time": 1727201003, + "previous_block_hash": "0878eceac6ded73fd8e873772ed9f93c488a46bdde659e59451e65eb9a3ee390", "difficulty": 545259519, - "ledger_hash": "5dac3b61245453c5448b8e8ef6eaf53e9ca0a371d3b6524ca97ef99e40551036", - "txlist_hash": "5caba1ce46d6c7e9d5a7cb1c794b331dd473323683be48d62b3e03fef3a9cb75", - "messages_hash": "a3d30ea5b4343aac41752e3cbe083b2f9a5070adb3e28d3cf3b586d60b13f937", + "ledger_hash": "ca55ff06d6da636d78ab4e2f239b3e1f55fba257aad9da3ba207987ddef60d4f", + "txlist_hash": "15073748e67fe9f89a59617d6f98dd6825510a84aa9a81c8a71ab8e0d78371cb", + "messages_hash": "794947a3274da460c59e4e508e48909c67ed76799d6d25c045d0f2ae92fd60e9", "transaction_count": 1, "confirmed": true }, { - "block_index": 189, - "block_hash": "4147554b4c1d081b097b1c6278509e7da43fbec27bdb1ad6cb8414e44ba4445b", - "block_time": 1726509894, - "previous_block_hash": "6af6f23af835e0b3e7515a3d98e43a2ff75b7baf8d552fe27cbaf82dc8974780", + "block_index": 190, + "block_hash": "0878eceac6ded73fd8e873772ed9f93c488a46bdde659e59451e65eb9a3ee390", + "block_time": 1727200999, + "previous_block_hash": "73be93be2c91012204c8a1e8321475345c6c634627235302e1e7abe56fcb5755", "difficulty": 545259519, - "ledger_hash": "3f97c50ca5edc66440c05c58badb6d8f26237669ef20c001a05e476404900c94", - "txlist_hash": "ed6472060345e91ae8e05a0f6d7a9a0e657098f47eae73e2e644fc7e455e67d3", - "messages_hash": "9f629d60ea05b595361922207a4b99e144e342dcc0cef5755d71e920ec551ba7", + "ledger_hash": "c242b73b2ee5c7a4cb1a18658d3d1c025310777e321d11722eff7c218b55df48", + "txlist_hash": "d647e554d1cfd1e9685fb03b192d224c788e4e30b2e0aad469691108c00abd60", + "messages_hash": "ed415b2226b65db4bdc25bfb21ecca24635074bfa76649c0f9e9458187b5da57", "transaction_count": 1, "confirmed": true } ], - "next_cursor": 188, - "result_count": 93 + "next_cursor": 189, + "result_count": 94 }, "/v2/blocks/": { "result": { - "block_index": 193, - "block_hash": "0c078dccb9971fd739e4646df2613ddf86bea7f006a0ec0aabf2253f9f835f58", - "block_time": 1726509912, - "previous_block_hash": "356d63b3ac8ed95b008257f61aee3850ec360d8ac8d808d0b0e0ceab8de6ee1e", + "block_index": 194, + "block_hash": "52ace614bdf700970fae116cbd930af95fe09c4faee117d3d3c0c24860eedf93", + "block_time": 1727201016, + "previous_block_hash": "72aff9bcfbc6a9f61cd1c192dc2322be91c061a847e81cc3b45854c9af31a6d5", "difficulty": 545259519, - "ledger_hash": "260bca5241d162936ae20e643b78cd69f7c3d74370745be7447cbaae1dde9a9c", - "txlist_hash": "1ecd81dbebae4723fab572ad7f59f8712a540b524662de521ea50631e83b7e7b", - "messages_hash": "a5b39b3745218a45506fcbd2397ab67628c6263f2173159bdf4b259978114bde", + "ledger_hash": "d16329e826a589a6af06767a820f5914ee69e22398c8612ed0c73909a1ab9b1f", + "txlist_hash": "555a7b8103a776f23b649ec297d2177fe885443dc976750a259547be47cd26e7", + "messages_hash": "1bc8906db34e5bf45f47eca127e2b4cc60e46bbc8cf4301617e02c6f29b32301", "transaction_count": 1, "confirmed": true } }, "/v2/blocks/": { "result": { - "block_index": 193, - "block_hash": "0c078dccb9971fd739e4646df2613ddf86bea7f006a0ec0aabf2253f9f835f58", - "block_time": 1726509912, - "previous_block_hash": "356d63b3ac8ed95b008257f61aee3850ec360d8ac8d808d0b0e0ceab8de6ee1e", + "block_index": 194, + "block_hash": "52ace614bdf700970fae116cbd930af95fe09c4faee117d3d3c0c24860eedf93", + "block_time": 1727201016, + "previous_block_hash": "72aff9bcfbc6a9f61cd1c192dc2322be91c061a847e81cc3b45854c9af31a6d5", "difficulty": 545259519, - "ledger_hash": "260bca5241d162936ae20e643b78cd69f7c3d74370745be7447cbaae1dde9a9c", - "txlist_hash": "1ecd81dbebae4723fab572ad7f59f8712a540b524662de521ea50631e83b7e7b", - "messages_hash": "a5b39b3745218a45506fcbd2397ab67628c6263f2173159bdf4b259978114bde", + "ledger_hash": "d16329e826a589a6af06767a820f5914ee69e22398c8612ed0c73909a1ab9b1f", + "txlist_hash": "555a7b8103a776f23b649ec297d2177fe885443dc976750a259547be47cd26e7", + "messages_hash": "1bc8906db34e5bf45f47eca127e2b4cc60e46bbc8cf4301617e02c6f29b32301", "transaction_count": 1, "confirmed": true } @@ -96,18 +96,18 @@ "/v2/blocks//transactions": { "result": [ { - "tx_index": 59, - "tx_hash": "f79c39d2a2896a86ef0bb2370101c664b69f2b9387afcd377d8226b839d419ce", - "block_index": 193, - "block_hash": "0c078dccb9971fd739e4646df2613ddf86bea7f006a0ec0aabf2253f9f835f58", - "block_time": 1726509912, - "source": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "tx_index": 60, + "tx_hash": "da0a0e76bfc982e2bbed2679a71f4e2d3ebc01140b448f430bb01b50f7ceaabb", + "block_index": 194, + "block_hash": "52ace614bdf700970fae116cbd930af95fe09c4faee117d3d3c0c24860eedf93", + "block_time": 1727201016, + "source": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "destination": null, "btc_amount": 0, "fee": 10000, "data": "6e0000000000000001000000000000000164657374726f79", "supported": true, - "utxos_info": "f79c39d2a2896a86ef0bb2370101c664b69f2b9387afcd377d8226b839d419ce:1", + "utxos_info": "da0a0e76bfc982e2bbed2679a71f4e2d3ebc01140b448f430bb01b50f7ceaabb:1", "confirmed": true, "unpacked_data": { "message_type": "destroy", @@ -135,60 +135,60 @@ "/v2/blocks//events": { "result": [ { - "event_index": 529, + "event_index": 536, "event": "BLOCK_PARSED", "params": { - "block_index": 192, - "ledger_hash": "a352fa09b0c8621cb30776de9b016c7b433da3453f51a01610e0d8a706b94c7e", - "messages_hash": "3172cc5949c44703a36181b1b938faf388d0cf72e686932ee5ee218ee893e4a6", + "block_index": 193, + "ledger_hash": "fe72f9a183bbe8818f70ff6fff77b10468c2dc87a83499c4efa91349405a7d67", + "messages_hash": "2d72a21fa2540f29a91bb2530c0078d445e984faccd9deb0b88d92a542a6c1bb", "transaction_count": 1, - "txlist_hash": "83367c52c5808cc55d9902d446542239ae36c22d7b7d92678f128ad83f58aaea", - "block_time": 1726509908 + "txlist_hash": "aba2669687ed43d3c307f90145085717cceb79038c715445f52cb587817ca510", + "block_time": 1727201012 }, "tx_hash": null }, { - "event_index": 528, + "event_index": 535, "event": "TRANSACTION_PARSED", "params": { "supported": true, - "tx_hash": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", - "tx_index": 58 + "tx_hash": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", + "tx_index": 59 }, - "tx_hash": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b" + "tx_hash": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774" }, { - "event_index": 527, + "event_index": 534, "event": "SWEEP", "params": { - "block_index": 192, - "destination": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "block_index": 193, + "destination": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "fee_paid": 600000, "flags": 1, "memo": "sweep my assets", - "source": "bcrt1q3ds7n4l97tumdkgcr3vyhe04zaxce8ujr8fmr2", + "source": "bcrt1q9cf2ed4wk37qye08wlppw39l7prxws7afa3krk", "status": "valid", - "tx_hash": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", - "tx_index": 58, - "block_time": 1726509908, + "tx_hash": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", + "tx_index": 59, + "block_time": 1727201012, "fee_paid_normalized": "0.00600000" }, - "tx_hash": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b" + "tx_hash": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774" }, { - "event_index": 526, + "event_index": 533, "event": "CREDIT", "params": { - "address": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "address": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "asset": "XCP", - "block_index": 192, + "block_index": 193, "calling_function": "sweep", - "event": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", + "event": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", "quantity": 74499387833, - "tx_index": 58, + "tx_index": 59, "utxo": null, "utxo_address": null, - "block_time": 1726509908, + "block_time": 1727201012, "asset_info": { "divisible": true, "asset_longname": null, @@ -198,22 +198,22 @@ }, "quantity_normalized": "744.99388000" }, - "tx_hash": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b" + "tx_hash": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774" }, { - "event_index": 525, + "event_index": 532, "event": "DEBIT", "params": { "action": "sweep", - "address": "bcrt1q3ds7n4l97tumdkgcr3vyhe04zaxce8ujr8fmr2", + "address": "bcrt1q9cf2ed4wk37qye08wlppw39l7prxws7afa3krk", "asset": "XCP", - "block_index": 192, - "event": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", + "block_index": 193, + "event": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", "quantity": 74499387833, - "tx_index": 58, + "tx_index": 59, "utxo": null, "utxo_address": null, - "block_time": 1726509908, + "block_time": 1727201012, "asset_info": { "divisible": true, "asset_longname": null, @@ -223,10 +223,10 @@ }, "quantity_normalized": "744.99388000" }, - "tx_hash": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b" + "tx_hash": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774" } ], - "next_cursor": 524, + "next_cursor": 531, "result_count": 12 }, "/v2/blocks//events/counts": { @@ -258,19 +258,19 @@ "/v2/blocks//events/": { "result": [ { - "event_index": 526, + "event_index": 533, "event": "CREDIT", "params": { - "address": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "address": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "asset": "XCP", - "block_index": 192, + "block_index": 193, "calling_function": "sweep", - "event": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", + "event": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", "quantity": 74499387833, - "tx_index": 58, + "tx_index": 59, "utxo": null, "utxo_address": null, - "block_time": 1726509908, + "block_time": 1727201012, "asset_info": { "divisible": true, "asset_longname": null, @@ -280,57 +280,57 @@ }, "quantity_normalized": "744.99388000" }, - "tx_hash": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b" + "tx_hash": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774" }, { - "event_index": 524, + "event_index": 531, "event": "CREDIT", "params": { - "address": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "address": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "asset": "MYASSETA", - "block_index": 192, + "block_index": 193, "calling_function": "sweep", - "event": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", + "event": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", "quantity": 10, - "tx_index": 58, + "tx_index": 59, "utxo": null, "utxo_address": null, - "block_time": 1726509908, + "block_time": 1727201012, "asset_info": { "asset_longname": null, "description": "My super asset A", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, "quantity_normalized": "0.00000010" }, - "tx_hash": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b" + "tx_hash": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774" }, { - "event_index": 522, + "event_index": 529, "event": "CREDIT", "params": { - "address": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "address": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "asset": "FAIRMINTA", - "block_index": 192, + "block_index": 193, "calling_function": "sweep", - "event": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", + "event": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", "quantity": 500000000, - "tx_index": 58, + "tx_index": 59, "utxo": null, "utxo_address": null, - "block_time": 1726509908, + "block_time": 1727201012, "asset_info": { "asset_longname": "", "description": "", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, "quantity_normalized": "5.00000000" }, - "tx_hash": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b" + "tx_hash": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774" } ], "next_cursor": null, @@ -339,17 +339,17 @@ "/v2/blocks//credits": { "result": [ { - "block_index": 192, - "address": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "block_index": 193, + "address": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "asset": "XCP", "quantity": 74499387833, "calling_function": "sweep", - "event": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", - "tx_index": 58, + "event": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", + "tx_index": 59, "utxo": null, "utxo_address": null, "confirmed": true, - "block_time": 1726509908, + "block_time": 1727201012, "asset_info": { "divisible": true, "asset_longname": null, @@ -360,42 +360,42 @@ "quantity_normalized": "744.99388000" }, { - "block_index": 192, - "address": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "block_index": 193, + "address": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "asset": "MYASSETA", "quantity": 10, "calling_function": "sweep", - "event": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", - "tx_index": 58, + "event": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", + "tx_index": 59, "utxo": null, "utxo_address": null, "confirmed": true, - "block_time": 1726509908, + "block_time": 1727201012, "asset_info": { "asset_longname": null, "description": "My super asset A", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, "quantity_normalized": "0.00000010" }, { - "block_index": 192, - "address": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "block_index": 193, + "address": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "asset": "FAIRMINTA", "quantity": 500000000, "calling_function": "sweep", - "event": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", - "tx_index": 58, + "event": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", + "tx_index": 59, "utxo": null, "utxo_address": null, "confirmed": true, - "block_time": 1726509908, + "block_time": 1727201012, "asset_info": { "asset_longname": "", "description": "", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, @@ -408,17 +408,17 @@ "/v2/blocks//debits": { "result": [ { - "block_index": 193, - "address": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "block_index": 194, + "address": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "asset": "XCP", "quantity": 1, "action": "destroy", - "event": "f79c39d2a2896a86ef0bb2370101c664b69f2b9387afcd377d8226b839d419ce", - "tx_index": 59, + "event": "da0a0e76bfc982e2bbed2679a71f4e2d3ebc01140b448f430bb01b50f7ceaabb", + "tx_index": 60, "utxo": null, "utxo_address": null, "confirmed": true, - "block_time": 1726509912, + "block_time": 1727201016, "asset_info": { "divisible": true, "asset_longname": null, @@ -436,24 +436,24 @@ "result": [ { "type": "order", - "object_id": "afd6eab5bb50283dc170ad276157e78db2dc90cb330d559320b9adc3721a1fbc", - "block_index": 182, + "object_id": "3a7ea4dc466a608d47050ca02aa94f8d84ae9ea60b94dcf727b3e6eb8728e8d8", + "block_index": 183, "confirmed": true, - "block_time": 1726509796 + "block_time": 1727200899 }, { "type": "order", - "object_id": "e2263719273ed7cbb5496ae9daff21e24a2899e76feea1abbd4e91fa72766b5d", - "block_index": 182, + "object_id": "f90bb3520b4cd8e8f43ae4a416ea102f6a45a4cfd10b4620066271057abde926", + "block_index": 183, "confirmed": true, - "block_time": 1726509796 + "block_time": 1727200899 }, { "type": "order_match", - "object_id": "e2263719273ed7cbb5496ae9daff21e24a2899e76feea1abbd4e91fa72766b5d_afd6eab5bb50283dc170ad276157e78db2dc90cb330d559320b9adc3721a1fbc", - "block_index": 182, + "object_id": "f90bb3520b4cd8e8f43ae4a416ea102f6a45a4cfd10b4620066271057abde926_3a7ea4dc466a608d47050ca02aa94f8d84ae9ea60b94dcf727b3e6eb8728e8d8", + "block_index": 183, "confirmed": true, - "block_time": 1726509796 + "block_time": 1727200899 } ], "next_cursor": null, @@ -462,14 +462,14 @@ "/v2/blocks//cancels": { "result": [ { - "tx_index": 56, - "tx_hash": "18a9b72fc9e67470cff556297fa5f3dd95ea7d472693f42d597db7ad598c05ec", - "block_index": 190, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "offer_hash": "5e324d551a694d3f6ffc9c67b3db8817d470ba32257047ddee237d3d07c1a1e2", + "tx_index": 57, + "tx_hash": "1d314894d90254c43598647c4ebca9b8f3f0d20a522eb8130d9955e95ea1c197", + "block_index": 191, + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "offer_hash": "83919cf82dd5eb1e2e1f6d3f3f752d34d41636ed00ab8ff78369eb81475b8e57", "status": "valid", "confirmed": true, - "block_time": 1726509899 + "block_time": 1727201003 } ], "next_cursor": null, @@ -478,16 +478,16 @@ "/v2/blocks//destructions": { "result": [ { - "tx_index": 59, - "tx_hash": "f79c39d2a2896a86ef0bb2370101c664b69f2b9387afcd377d8226b839d419ce", - "block_index": 193, - "source": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "tx_index": 60, + "tx_hash": "da0a0e76bfc982e2bbed2679a71f4e2d3ebc01140b448f430bb01b50f7ceaabb", + "block_index": 194, + "source": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "asset": "XCP", "quantity": 1, "tag": "64657374726f79", "status": "valid", "confirmed": true, - "block_time": 1726509912, + "block_time": 1727201016, "asset_info": { "divisible": true, "asset_longname": null, @@ -504,15 +504,15 @@ "/v2/blocks//issuances": { "result": [ { - "tx_index": 46, - "tx_hash": "3f80ba6dc66be4e5b604bbf8e1e2007161960069d871f7cb00b1d24f9f090491", + "tx_index": 47, + "tx_hash": "efd20bb15eb6a7ce22645a0fb33b1873d00dc0cdeb9533d37037e0fd6a63f512", "msg_index": 0, - "block_index": 159, + "block_index": 160, "asset": "A95428956980101314", "quantity": 100000000000, "divisible": true, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "transfer": false, "callable": false, "call_date": 0, @@ -527,7 +527,7 @@ "fair_minting": false, "asset_events": "creation", "confirmed": true, - "block_time": 1726509780, + "block_time": 1727200884, "quantity_normalized": "1000.00000000", "fee_paid_normalized": "0.00000000" } @@ -538,11 +538,11 @@ "/v2/blocks//sends": { "result": [ { - "tx_index": 54, - "tx_hash": "e8fda956958ed7de0a98e42d8d28349b9c7b5e20da375c185c5830526df6594f", - "block_index": 188, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "destination": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", + "tx_index": 55, + "tx_hash": "4cd813fae2558e89f2f9411f38daa7d4c10c94a267daa38155cf18fb4d9fd055", + "block_index": 189, + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "destination": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", "asset": "XCP", "quantity": 10, "status": "valid", @@ -550,7 +550,7 @@ "memo": null, "fee_paid": 0, "confirmed": true, - "block_time": 1726509890, + "block_time": 1727200995, "asset_info": { "divisible": true, "asset_longname": null, @@ -562,11 +562,11 @@ "fee_paid_normalized": "0.00000000" }, { - "tx_index": 54, - "tx_hash": "e8fda956958ed7de0a98e42d8d28349b9c7b5e20da375c185c5830526df6594f", - "block_index": 188, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "destination": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "tx_index": 55, + "tx_hash": "4cd813fae2558e89f2f9411f38daa7d4c10c94a267daa38155cf18fb4d9fd055", + "block_index": 189, + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "destination": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "asset": "MYASSETA", "quantity": 10, "status": "valid", @@ -574,11 +574,11 @@ "memo": null, "fee_paid": 0, "confirmed": true, - "block_time": 1726509890, + "block_time": 1727200995, "asset_info": { "asset_longname": null, "description": "My super asset A", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, @@ -586,11 +586,11 @@ "fee_paid_normalized": "0.00000000" }, { - "tx_index": 54, - "tx_hash": "e8fda956958ed7de0a98e42d8d28349b9c7b5e20da375c185c5830526df6594f", - "block_index": 188, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "destination": "bcrt1q3ds7n4l97tumdkgcr3vyhe04zaxce8ujr8fmr2", + "tx_index": 55, + "tx_hash": "4cd813fae2558e89f2f9411f38daa7d4c10c94a267daa38155cf18fb4d9fd055", + "block_index": 189, + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "destination": "bcrt1q9cf2ed4wk37qye08wlppw39l7prxws7afa3krk", "asset": "MYASSETA", "quantity": 10, "status": "valid", @@ -598,11 +598,11 @@ "memo": null, "fee_paid": 0, "confirmed": true, - "block_time": 1726509890, + "block_time": 1727200995, "asset_info": { "asset_longname": null, "description": "My super asset A", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, @@ -616,29 +616,29 @@ "/v2/blocks//dispenses": { "result": [ { - "tx_index": 33, + "tx_index": 34, "dispense_index": 0, - "tx_hash": "516159be9547a87a0ab0ce652ce9daebb10796eb67509fa50780dca28d813535", - "block_index": 146, - "source": "bcrt1qlm44vh2ynrtqwh8j2mptwrzzfd04czsya4wxcd", - "destination": "bcrt1qlqcrlvw5t7cnj8r9hjl0qq67c2fyk5kvfra90p", + "tx_hash": "6b21482e6e461d42ded8e74826ff88a8b23621baaa45e714c7c2a20457bd6c12", + "block_index": 147, + "source": "bcrt1qeshrsce6vyx833j2p85aesnx0aj9sxjtt79jak", + "destination": "bcrt1qfvucymcd7u04hpd7eafsmxwnashcmaqs54q79p", "asset": "XCP", "dispense_quantity": 666, - "dispenser_tx_hash": "5c8374a3882f222038bbf9a0cce7589e84b790915b9228d66af1a5b0eb61ea2d", + "dispenser_tx_hash": "1e7bea513de78cabf444b974fdb0efb4304b18bd990a889d7a0f8b0e3d21b6ea", "btc_amount": 10000, "confirmed": true, "dispenser": { - "tx_index": 32, - "block_index": 146, - "source": "bcrt1qlm44vh2ynrtqwh8j2mptwrzzfd04czsya4wxcd", + "tx_index": 33, + "block_index": 147, + "source": "bcrt1qeshrsce6vyx833j2p85aesnx0aj9sxjtt79jak", "give_quantity": 1, "escrow_quantity": 10000, "satoshirate": 1, "status": 0, "give_remaining": 9334, - "oracle_address": "bcrt1qlm44vh2ynrtqwh8j2mptwrzzfd04czsya4wxcd", + "oracle_address": "bcrt1qeshrsce6vyx833j2p85aesnx0aj9sxjtt79jak", "last_status_tx_hash": null, - "origin": "bcrt1qlm44vh2ynrtqwh8j2mptwrzzfd04czsya4wxcd", + "origin": "bcrt1qeshrsce6vyx833j2p85aesnx0aj9sxjtt79jak", "dispense_count": 1, "last_status_tx_source": null, "close_block_index": null, @@ -653,7 +653,7 @@ "satoshirate_normalized": "0.00000001", "satoshi_price_normalized": "0.00000016" }, - "block_time": 1726509701, + "block_time": 1727200827, "asset_info": { "divisible": true, "asset_longname": null, @@ -671,17 +671,17 @@ "/v2/blocks//sweeps": { "result": [ { - "tx_index": 58, - "tx_hash": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", - "block_index": 192, - "source": "bcrt1q3ds7n4l97tumdkgcr3vyhe04zaxce8ujr8fmr2", - "destination": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "tx_index": 59, + "tx_hash": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", + "block_index": 193, + "source": "bcrt1q9cf2ed4wk37qye08wlppw39l7prxws7afa3krk", + "destination": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "flags": 1, "status": "valid", "memo": "sweep my assets", "fee_paid": 600000, "confirmed": true, - "block_time": 1726509908, + "block_time": 1727201012, "fee_paid_normalized": "0.00600000" } ], @@ -691,18 +691,18 @@ "/v2/transactions": { "result": [ { - "tx_index": 59, - "tx_hash": "f79c39d2a2896a86ef0bb2370101c664b69f2b9387afcd377d8226b839d419ce", - "block_index": 193, - "block_hash": "0c078dccb9971fd739e4646df2613ddf86bea7f006a0ec0aabf2253f9f835f58", - "block_time": 1726509912, - "source": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "tx_index": 60, + "tx_hash": "da0a0e76bfc982e2bbed2679a71f4e2d3ebc01140b448f430bb01b50f7ceaabb", + "block_index": 194, + "block_hash": "52ace614bdf700970fae116cbd930af95fe09c4faee117d3d3c0c24860eedf93", + "block_time": 1727201016, + "source": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "destination": null, "btc_amount": 0, "fee": 10000, "data": "6e0000000000000001000000000000000164657374726f79", "supported": true, - "utxos_info": "f79c39d2a2896a86ef0bb2370101c664b69f2b9387afcd377d8226b839d419ce:1", + "utxos_info": "da0a0e76bfc982e2bbed2679a71f4e2d3ebc01140b448f430bb01b50f7ceaabb:1", "confirmed": true, "unpacked_data": { "message_type": "destroy", @@ -724,24 +724,24 @@ "btc_amount_normalized": "0.00000000" }, { - "tx_index": 58, - "tx_hash": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", - "block_index": 192, - "block_hash": "356d63b3ac8ed95b008257f61aee3850ec360d8ac8d808d0b0e0ceab8de6ee1e", - "block_time": 1726509908, - "source": "bcrt1q3ds7n4l97tumdkgcr3vyhe04zaxce8ujr8fmr2", + "tx_index": 59, + "tx_hash": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", + "block_index": 193, + "block_hash": "72aff9bcfbc6a9f61cd1c192dc2322be91c061a847e81cc3b45854c9af31a6d5", + "block_time": 1727201012, + "source": "bcrt1q9cf2ed4wk37qye08wlppw39l7prxws7afa3krk", "destination": null, "btc_amount": 0, "fee": 10000, - "data": "0480ae2b0c1095bbdf23747f76b242be716817701b78017377656570206d7920617373657473", + "data": "04806c45b04730370dc7e778ed200c19f22a08c064a9017377656570206d7920617373657473", "supported": true, - "utxos_info": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b:1", + "utxos_info": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774:1", "confirmed": true, "unpacked_data": { "message_type": "sweep", "message_type_id": 4, "message_data": { - "destination": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "destination": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "flags": 1, "memo": "sweep my assets" } @@ -749,75 +749,193 @@ "btc_amount_normalized": "0.00000000" } ], - "next_cursor": 57, - "result_count": 60 + "next_cursor": 58, + "result_count": 61 }, "/v2/transactions/info": { "result": { - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "destination": null, "btc_amount": 0, "fee": 10000, - "data": "0a000000000000000100000000000003e8000000000000000000000000000003e800150000000000000000", + "data": "0300038054c1ba334a1912f96353f110938927c645ff9064802e12acb6aeb47c0265e777c21744bff0466743dd806c45b04730370dc7e778ed200c19f22a08c064a9400000060acdc5db9400000000000000290000000000000005200000000000000020000000000000001400", "decoded_tx": { "version": 2, "segwit": true, "coinbase": false, "vin": [ { - "hash": "13f4625e1516c944a8463d27d826a53f0fcbba50aced60bf5eb00888663ce56e", + "hash": "14f083b09bb6febdb3c81016ad99dad6ce853dfb3c91f251c0c0c4672d63ad62", + "n": 0, + "script_sig": "", + "sequence": 4294967295, + "coinbase": false + }, + { + "hash": "0df09d9a242b435b364ab264836c57de89b876833215f596a8f6f8de93f68390", + "n": 0, + "script_sig": "", + "sequence": 4294967295, + "coinbase": false + }, + { + "hash": "3154fc48442d953119650689580360b7bf92316dd8931e26a4316e941c995ffe", + "n": 0, + "script_sig": "", + "sequence": 4294967295, + "coinbase": false + }, + { + "hash": "809160fa9715547fcfe74787eec783669aff6a57da49f262a225ebed0f08f56d", + "n": 0, + "script_sig": "", + "sequence": 4294967295, + "coinbase": false + }, + { + "hash": "e20fa5033fab96ae3b54e859d7d9ecd42ee0bdd68542b55422b4ec5ff97aca9d", + "n": 0, + "script_sig": "", + "sequence": 4294967295, + "coinbase": false + }, + { + "hash": "29b30fbffa10b0a8c0e33030fb2dab887284d64b90a496fd205e5fbfe3217d00", "n": 0, "script_sig": "", "sequence": 4294967295, "coinbase": false } ], + "vout": [ + { + "value": 1000, + "script_pub_key": "512103891f35fe17a00335c7118e56ee2b6368073ae54657b2361249e48365594522552102e6bfdd833bb23fcdda57f332d9c3ce8b9a7f148904fee72524f4ac7bca49824b2103e9ae92eabb90ca74fe993bac25a34afb53dbfd9ee15d1434f46704cbef38ec9753ae" + }, + { + "value": 1000, + "script_pub_key": "512103891f35fe17a00335c7d5692d835faecbc65af494ca7825e35971008f5adb4930210276db5dad291e894a6e2bf1573eb40c99fec0e4cf63bd3aa568b11c3cfa7e8fb32103e9ae92eabb90ca74fe993bac25a34afb53dbfd9ee15d1434f46704cbef38ec9753ae" + }, + { + "value": 1000, + "script_pub_key": "512103bf1f35fe17a00335c7129a556e7fa2d23470fc54aed165e359770a429f00dd25210376db5dad291e89636e2bf1573eb40c9cdec0e4cf63bd3aa548b11c3cfa7e8fdd2103e9ae92eabb90ca74fe993bac25a34afb53dbfd9ee15d1434f46704cbef38ec9753ae" + }, + { + "value": 29999987000, + "script_pub_key": "00147d93ff5e96d2aa8302b09d3661285dec7e9d27ab" + } + ], + "vtxinwit": [ + "3044022063be76625e8f989777e509375b68761cde61e90c730377f4ae9a963fbbd1ea810220099087fd49f101fb577597503304cff40c3ed518d732cb114e31625dbd8411c801", + "03e9ae92eabb90ca74fe993bac25a34afb53dbfd9ee15d1434f46704cbef38ec97", + "3044022047195342c7f93646a9f52027eebee760e7a587b73aa1af4cf3409fa12ada28f302206904bd6c03783bba0c3c5db79a936015192d8d2ec9a75e268b855cd63c8e741201", + "03e9ae92eabb90ca74fe993bac25a34afb53dbfd9ee15d1434f46704cbef38ec97", + "304402204d0d8f141eeabaf284be3385c9a884e125d944f9349e796fc37afd8cbf97917102202b6fb1b039705f72ee8c5e885fc7054c0ae49bd645fa08f801cbbf307bdca2f601", + "03e9ae92eabb90ca74fe993bac25a34afb53dbfd9ee15d1434f46704cbef38ec97", + "304402200730ee1653a76aa7b97a3ae5b0de69f3a4c2cb3b7b60cdc7e98008d81f38714602203fb41b3edefbf12d90b73656572e6bf7acdcab6456cc63196ccf3d03d41d04ab01", + "03e9ae92eabb90ca74fe993bac25a34afb53dbfd9ee15d1434f46704cbef38ec97", + "3044022051d0d555b9a1b3e39c44095140403e81ad6fe13c5bca36d75c0794c5e3f6786102202434ff051d31cd22b6b854930f66f52b28a3db6cffe017ff68798aa1cd84369401", + "03e9ae92eabb90ca74fe993bac25a34afb53dbfd9ee15d1434f46704cbef38ec97", + "304402203122b69adf43edab2670f1a5c95004d71c4d1a6c970b854ba4d0a186245686d902207d1bc7dd75c3c081ed74b7164c0f3d858b518542ad3f2637c5296961e8e35a3301", + "03e9ae92eabb90ca74fe993bac25a34afb53dbfd9ee15d1434f46704cbef38ec97" + ], + "lock_time": 0, + "tx_hash": "4cd813fae2558e89f2f9411f38daa7d4c10c94a267daa38155cf18fb4d9fd055", + "tx_id": "4cd813fae2558e89f2f9411f38daa7d4c10c94a267daa38155cf18fb4d9fd055" + }, + "unpacked_data": { + "message_type": "mpma_send", + "message_type_id": 3, + "message_data": [ + { + "asset": "MYASSETA", + "destination": "bcrt1q9cf2ed4wk37qye08wlppw39l7prxws7afa3krk", + "quantity": 10, + "memo": null, + "memo_is_hex": null, + "asset_info": { + "asset_longname": null, + "description": "My super asset A", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "divisible": true, + "locked": false + }, + "quantity_normalized": "0.00000010" + }, + { + "asset": "XCP", + "destination": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", + "quantity": 10, + "memo": null, + "memo_is_hex": null, + "asset_info": { + "divisible": true, + "asset_longname": null, + "description": "The Counterparty protocol native currency", + "locked": true, + "issuer": null + }, + "quantity_normalized": "0.00000010" + } + ] + }, + "btc_amount_normalized": "0.00000000" + } + }, + "/v2/transactions//info": { + "result": { + "source": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", + "destination": null, + "btc_amount": 0, + "fee": 10000, + "data": "0200000000000000010000000000002710802e12acb6aeb47c0265e777c21744bff0466743dd", + "decoded_tx": { + "version": 2, + "segwit": true, + "coinbase": false, + "vin": [ + { + "hash": "d8bd35840ef462d4d8ffb6ffcc1987a2d498d242b5e85de32a26d502b84dac99", + "n": 1, + "script_sig": "", + "sequence": 4294967295, + "coinbase": false + } + ], "vout": [ { "value": 0, - "script_pub_key": "6a332354da0a2986e439d6bf246d84f86ee1f3d79bd9604d9ff8543c944eead26bc52dcc129be40851375a2c04808350b9e7608862" + "script_pub_key": "6a2eac5cd552e0d9ff14fb9826f766e91d711f9aa0abece8791ca82905ca10e0a891f3e35ab723de58639c1b773ad606" }, { - "value": 4999990000, - "script_pub_key": "00147ed28f21558ee8ecd78a339105e7756213901b6e" + "value": 4999955000, + "script_pub_key": "00146c45b04730370dc7e778ed200c19f22a08c064a9" } ], "vtxinwit": [ - "30440220192675f05c9144776192e2c92db009e8ed5fcedd0c45fbcda89a84a2320f2af30220196bac09bfaedbea9e4458ec76ad50697d0cb659327702787f2ceb8f11832daf01", - "038cf659b1eef29fa8241c63dfa9eab3e1ef4f14fd7d99ee18746a9a9387076169" + "304402206dfd3dfa3a68eec239ebd85d1f37fb2b2f0d5d5f2d430a4fc1ed186aded3a46602203b2e4f6abe92d26849955a89d6f2c180cdb55802755da5f8447f0c03f578347501", + "03b5e165703c3ef7b3eb8feb32c82da0679166b81eae0830c1d0d0803fe78048b0" ], "lock_time": 0, - "tx_hash": "7b7048040c893c69892bd088ce48db79b96b9c1d7221b50d903064ff5a1ed232", - "tx_id": "7b7048040c893c69892bd088ce48db79b96b9c1d7221b50d903064ff5a1ed232" + "tx_hash": "044206e67491ff5d4c325bca6bbf5704dfbc3794e8948a39aae3ab0e11b23e2a", + "tx_id": "044206e67491ff5d4c325bca6bbf5704dfbc3794e8948a39aae3ab0e11b23e2a" }, "unpacked_data": { - "message_type": "order", - "message_type_id": 10, + "message_type": "enhanced_send", + "message_type_id": 2, "message_data": { - "give_asset": "XCP", - "give_quantity": 1000, - "get_asset": "BTC", - "get_quantity": 1000, - "expiration": 21, - "fee_required": 0, - "status": "open", - "give_asset_info": { + "asset": "XCP", + "quantity": 10000, + "address": "bcrt1q9cf2ed4wk37qye08wlppw39l7prxws7afa3krk", + "memo": null, + "asset_info": { "divisible": true, "asset_longname": null, "description": "The Counterparty protocol native currency", "locked": true, "issuer": null }, - "get_asset_info": { - "divisible": true, - "asset_longname": null, - "description": "The Bitcoin cryptocurrency", - "locked": false, - "issuer": null - }, - "give_quantity_normalized": "0.00001000", - "get_quantity_normalized": "0.00001000", - "fee_required_normalized": "0.00000000" + "quantity_normalized": "0.00010000" } }, "btc_amount_normalized": "0.00000000" @@ -834,18 +952,18 @@ }, "/v2/transactions/": { "result": { - "tx_index": 59, - "tx_hash": "f79c39d2a2896a86ef0bb2370101c664b69f2b9387afcd377d8226b839d419ce", - "block_index": 193, - "block_hash": "0c078dccb9971fd739e4646df2613ddf86bea7f006a0ec0aabf2253f9f835f58", - "block_time": 1726509912, - "source": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "tx_index": 60, + "tx_hash": "da0a0e76bfc982e2bbed2679a71f4e2d3ebc01140b448f430bb01b50f7ceaabb", + "block_index": 194, + "block_hash": "52ace614bdf700970fae116cbd930af95fe09c4faee117d3d3c0c24860eedf93", + "block_time": 1727201016, + "source": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "destination": null, "btc_amount": 0, "fee": 10000, "data": "6e0000000000000001000000000000000164657374726f79", "supported": true, - "utxos_info": "f79c39d2a2896a86ef0bb2370101c664b69f2b9387afcd377d8226b839d419ce:1", + "utxos_info": "da0a0e76bfc982e2bbed2679a71f4e2d3ebc01140b448f430bb01b50f7ceaabb:1", "confirmed": true, "unpacked_data": { "message_type": "destroy", @@ -869,18 +987,18 @@ }, "/v2/transactions/": { "result": { - "tx_index": 59, - "tx_hash": "f79c39d2a2896a86ef0bb2370101c664b69f2b9387afcd377d8226b839d419ce", - "block_index": 193, - "block_hash": "0c078dccb9971fd739e4646df2613ddf86bea7f006a0ec0aabf2253f9f835f58", - "block_time": 1726509912, - "source": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "tx_index": 60, + "tx_hash": "da0a0e76bfc982e2bbed2679a71f4e2d3ebc01140b448f430bb01b50f7ceaabb", + "block_index": 194, + "block_hash": "52ace614bdf700970fae116cbd930af95fe09c4faee117d3d3c0c24860eedf93", + "block_time": 1727201016, + "source": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "destination": null, "btc_amount": 0, "fee": 10000, "data": "6e0000000000000001000000000000000164657374726f79", "supported": true, - "utxos_info": "f79c39d2a2896a86ef0bb2370101c664b69f2b9387afcd377d8226b839d419ce:1", + "utxos_info": "da0a0e76bfc982e2bbed2679a71f4e2d3ebc01140b448f430bb01b50f7ceaabb:1", "confirmed": true, "unpacked_data": { "message_type": "destroy", @@ -905,51 +1023,51 @@ "/v2/transactions//events": { "result": [ { - "event_index": 528, + "event_index": 535, "event": "TRANSACTION_PARSED", "params": { "supported": true, - "tx_hash": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", - "tx_index": 58 + "tx_hash": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", + "tx_index": 59 }, - "tx_hash": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", - "block_index": 192, - "block_time": 1726509908 + "tx_hash": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", + "block_index": 193, + "block_time": 1727201012 }, { - "event_index": 527, + "event_index": 534, "event": "SWEEP", "params": { - "block_index": 192, - "destination": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "block_index": 193, + "destination": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "fee_paid": 600000, "flags": 1, "memo": "sweep my assets", - "source": "bcrt1q3ds7n4l97tumdkgcr3vyhe04zaxce8ujr8fmr2", + "source": "bcrt1q9cf2ed4wk37qye08wlppw39l7prxws7afa3krk", "status": "valid", - "tx_hash": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", - "tx_index": 58, - "block_time": 1726509908, + "tx_hash": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", + "tx_index": 59, + "block_time": 1727201012, "fee_paid_normalized": "0.00600000" }, - "tx_hash": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", - "block_index": 192, - "block_time": 1726509908 + "tx_hash": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", + "block_index": 193, + "block_time": 1727201012 }, { - "event_index": 526, + "event_index": 533, "event": "CREDIT", "params": { - "address": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "address": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "asset": "XCP", - "block_index": 192, + "block_index": 193, "calling_function": "sweep", - "event": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", + "event": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", "quantity": 74499387833, - "tx_index": 58, + "tx_index": 59, "utxo": null, "utxo_address": null, - "block_time": 1726509908, + "block_time": 1727201012, "asset_info": { "divisible": true, "asset_longname": null, @@ -959,24 +1077,24 @@ }, "quantity_normalized": "744.99388000" }, - "tx_hash": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", - "block_index": 192, - "block_time": 1726509908 + "tx_hash": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", + "block_index": 193, + "block_time": 1727201012 }, { - "event_index": 525, + "event_index": 532, "event": "DEBIT", "params": { "action": "sweep", - "address": "bcrt1q3ds7n4l97tumdkgcr3vyhe04zaxce8ujr8fmr2", + "address": "bcrt1q9cf2ed4wk37qye08wlppw39l7prxws7afa3krk", "asset": "XCP", - "block_index": 192, - "event": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", + "block_index": 193, + "event": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", "quantity": 74499387833, - "tx_index": 58, + "tx_index": 59, "utxo": null, "utxo_address": null, - "block_time": 1726509908, + "block_time": 1727201012, "asset_info": { "divisible": true, "asset_longname": null, @@ -986,89 +1104,89 @@ }, "quantity_normalized": "744.99388000" }, - "tx_hash": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", - "block_index": 192, - "block_time": 1726509908 + "tx_hash": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", + "block_index": 193, + "block_time": 1727201012 }, { - "event_index": 524, + "event_index": 531, "event": "CREDIT", "params": { - "address": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "address": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "asset": "MYASSETA", - "block_index": 192, + "block_index": 193, "calling_function": "sweep", - "event": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", + "event": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", "quantity": 10, - "tx_index": 58, + "tx_index": 59, "utxo": null, "utxo_address": null, - "block_time": 1726509908, + "block_time": 1727201012, "asset_info": { "asset_longname": null, "description": "My super asset A", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, "quantity_normalized": "0.00000010" }, - "tx_hash": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", - "block_index": 192, - "block_time": 1726509908 + "tx_hash": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", + "block_index": 193, + "block_time": 1727201012 } ], - "next_cursor": 523, + "next_cursor": 530, "result_count": 10 }, "/v2/transactions//events": { "result": [ { - "event_index": 528, + "event_index": 535, "event": "TRANSACTION_PARSED", "params": { "supported": true, - "tx_hash": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", - "tx_index": 58 + "tx_hash": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", + "tx_index": 59 }, - "tx_hash": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", - "block_index": 192, - "block_time": 1726509908 + "tx_hash": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", + "block_index": 193, + "block_time": 1727201012 }, { - "event_index": 527, + "event_index": 534, "event": "SWEEP", "params": { - "block_index": 192, - "destination": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "block_index": 193, + "destination": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "fee_paid": 600000, "flags": 1, "memo": "sweep my assets", - "source": "bcrt1q3ds7n4l97tumdkgcr3vyhe04zaxce8ujr8fmr2", + "source": "bcrt1q9cf2ed4wk37qye08wlppw39l7prxws7afa3krk", "status": "valid", - "tx_hash": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", - "tx_index": 58, - "block_time": 1726509908, + "tx_hash": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", + "tx_index": 59, + "block_time": 1727201012, "fee_paid_normalized": "0.00600000" }, - "tx_hash": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", - "block_index": 192, - "block_time": 1726509908 + "tx_hash": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", + "block_index": 193, + "block_time": 1727201012 }, { - "event_index": 526, + "event_index": 533, "event": "CREDIT", "params": { - "address": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "address": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "asset": "XCP", - "block_index": 192, + "block_index": 193, "calling_function": "sweep", - "event": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", + "event": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", "quantity": 74499387833, - "tx_index": 58, + "tx_index": 59, "utxo": null, "utxo_address": null, - "block_time": 1726509908, + "block_time": 1727201012, "asset_info": { "divisible": true, "asset_longname": null, @@ -1078,24 +1196,24 @@ }, "quantity_normalized": "744.99388000" }, - "tx_hash": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", - "block_index": 192, - "block_time": 1726509908 + "tx_hash": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", + "block_index": 193, + "block_time": 1727201012 }, { - "event_index": 525, + "event_index": 532, "event": "DEBIT", "params": { "action": "sweep", - "address": "bcrt1q3ds7n4l97tumdkgcr3vyhe04zaxce8ujr8fmr2", + "address": "bcrt1q9cf2ed4wk37qye08wlppw39l7prxws7afa3krk", "asset": "XCP", - "block_index": 192, - "event": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", + "block_index": 193, + "event": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", "quantity": 74499387833, - "tx_index": 58, + "tx_index": 59, "utxo": null, "utxo_address": null, - "block_time": 1726509908, + "block_time": 1727201012, "asset_info": { "divisible": true, "asset_longname": null, @@ -1105,49 +1223,49 @@ }, "quantity_normalized": "744.99388000" }, - "tx_hash": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", - "block_index": 192, - "block_time": 1726509908 + "tx_hash": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", + "block_index": 193, + "block_time": 1727201012 }, { - "event_index": 524, + "event_index": 531, "event": "CREDIT", "params": { - "address": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "address": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "asset": "MYASSETA", - "block_index": 192, + "block_index": 193, "calling_function": "sweep", - "event": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", + "event": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", "quantity": 10, - "tx_index": 58, + "tx_index": 59, "utxo": null, "utxo_address": null, - "block_time": 1726509908, + "block_time": 1727201012, "asset_info": { "asset_longname": null, "description": "My super asset A", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, "quantity_normalized": "0.00000010" }, - "tx_hash": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", - "block_index": 192, - "block_time": 1726509908 + "tx_hash": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", + "block_index": 193, + "block_time": 1727201012 } ], - "next_cursor": 523, + "next_cursor": 530, "result_count": 10 }, "/v2/transactions//sends": { "result": [ { - "tx_index": 54, - "tx_hash": "e8fda956958ed7de0a98e42d8d28349b9c7b5e20da375c185c5830526df6594f", - "block_index": 188, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "destination": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", + "tx_index": 55, + "tx_hash": "4cd813fae2558e89f2f9411f38daa7d4c10c94a267daa38155cf18fb4d9fd055", + "block_index": 189, + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "destination": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", "asset": "XCP", "quantity": 10, "status": "valid", @@ -1155,7 +1273,7 @@ "memo": null, "fee_paid": 0, "confirmed": true, - "block_time": 1726509890, + "block_time": 1727200995, "asset_info": { "divisible": true, "asset_longname": null, @@ -1167,11 +1285,11 @@ "fee_paid_normalized": "0.00000000" }, { - "tx_index": 54, - "tx_hash": "e8fda956958ed7de0a98e42d8d28349b9c7b5e20da375c185c5830526df6594f", - "block_index": 188, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "destination": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "tx_index": 55, + "tx_hash": "4cd813fae2558e89f2f9411f38daa7d4c10c94a267daa38155cf18fb4d9fd055", + "block_index": 189, + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "destination": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "asset": "MYASSETA", "quantity": 10, "status": "valid", @@ -1179,11 +1297,11 @@ "memo": null, "fee_paid": 0, "confirmed": true, - "block_time": 1726509890, + "block_time": 1727200995, "asset_info": { "asset_longname": null, "description": "My super asset A", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, @@ -1191,11 +1309,11 @@ "fee_paid_normalized": "0.00000000" }, { - "tx_index": 54, - "tx_hash": "e8fda956958ed7de0a98e42d8d28349b9c7b5e20da375c185c5830526df6594f", - "block_index": 188, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "destination": "bcrt1q3ds7n4l97tumdkgcr3vyhe04zaxce8ujr8fmr2", + "tx_index": 55, + "tx_hash": "4cd813fae2558e89f2f9411f38daa7d4c10c94a267daa38155cf18fb4d9fd055", + "block_index": 189, + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "destination": "bcrt1q9cf2ed4wk37qye08wlppw39l7prxws7afa3krk", "asset": "MYASSETA", "quantity": 10, "status": "valid", @@ -1203,11 +1321,11 @@ "memo": null, "fee_paid": 0, "confirmed": true, - "block_time": 1726509890, + "block_time": 1727200995, "asset_info": { "asset_longname": null, "description": "My super asset A", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, @@ -1221,29 +1339,29 @@ "/v2/transactions//dispenses": { "result": [ { - "tx_index": 33, + "tx_index": 34, "dispense_index": 0, - "tx_hash": "516159be9547a87a0ab0ce652ce9daebb10796eb67509fa50780dca28d813535", - "block_index": 146, - "source": "bcrt1qlm44vh2ynrtqwh8j2mptwrzzfd04czsya4wxcd", - "destination": "bcrt1qlqcrlvw5t7cnj8r9hjl0qq67c2fyk5kvfra90p", + "tx_hash": "6b21482e6e461d42ded8e74826ff88a8b23621baaa45e714c7c2a20457bd6c12", + "block_index": 147, + "source": "bcrt1qeshrsce6vyx833j2p85aesnx0aj9sxjtt79jak", + "destination": "bcrt1qfvucymcd7u04hpd7eafsmxwnashcmaqs54q79p", "asset": "XCP", "dispense_quantity": 666, - "dispenser_tx_hash": "5c8374a3882f222038bbf9a0cce7589e84b790915b9228d66af1a5b0eb61ea2d", + "dispenser_tx_hash": "1e7bea513de78cabf444b974fdb0efb4304b18bd990a889d7a0f8b0e3d21b6ea", "btc_amount": 10000, "confirmed": true, "dispenser": { - "tx_index": 32, - "block_index": 146, - "source": "bcrt1qlm44vh2ynrtqwh8j2mptwrzzfd04czsya4wxcd", + "tx_index": 33, + "block_index": 147, + "source": "bcrt1qeshrsce6vyx833j2p85aesnx0aj9sxjtt79jak", "give_quantity": 1, "escrow_quantity": 10000, "satoshirate": 1, "status": 0, "give_remaining": 9334, - "oracle_address": "bcrt1qlm44vh2ynrtqwh8j2mptwrzzfd04czsya4wxcd", + "oracle_address": "bcrt1qeshrsce6vyx833j2p85aesnx0aj9sxjtt79jak", "last_status_tx_hash": null, - "origin": "bcrt1qlm44vh2ynrtqwh8j2mptwrzzfd04czsya4wxcd", + "origin": "bcrt1qeshrsce6vyx833j2p85aesnx0aj9sxjtt79jak", "dispense_count": 1, "last_status_tx_source": null, "close_block_index": null, @@ -1258,7 +1376,7 @@ "satoshirate_normalized": "0.00000001", "satoshi_price_normalized": "0.00000016" }, - "block_time": 1726509701, + "block_time": 1727200827, "asset_info": { "divisible": true, "asset_longname": null, @@ -1276,19 +1394,19 @@ "/v2/transactions//events/": { "result": [ { - "event_index": 526, + "event_index": 533, "event": "CREDIT", "params": { - "address": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "address": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "asset": "XCP", - "block_index": 192, + "block_index": 193, "calling_function": "sweep", - "event": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", + "event": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", "quantity": 74499387833, - "tx_index": 58, + "tx_index": 59, "utxo": null, "utxo_address": null, - "block_time": 1726509908, + "block_time": 1727201012, "asset_info": { "divisible": true, "asset_longname": null, @@ -1298,63 +1416,63 @@ }, "quantity_normalized": "744.99388000" }, - "tx_hash": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", - "block_index": 192, - "block_time": 1726509908 + "tx_hash": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", + "block_index": 193, + "block_time": 1727201012 }, { - "event_index": 524, + "event_index": 531, "event": "CREDIT", "params": { - "address": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "address": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "asset": "MYASSETA", - "block_index": 192, + "block_index": 193, "calling_function": "sweep", - "event": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", + "event": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", "quantity": 10, - "tx_index": 58, + "tx_index": 59, "utxo": null, "utxo_address": null, - "block_time": 1726509908, + "block_time": 1727201012, "asset_info": { "asset_longname": null, "description": "My super asset A", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, "quantity_normalized": "0.00000010" }, - "tx_hash": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", - "block_index": 192, - "block_time": 1726509908 + "tx_hash": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", + "block_index": 193, + "block_time": 1727201012 }, { - "event_index": 522, + "event_index": 529, "event": "CREDIT", "params": { - "address": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "address": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "asset": "FAIRMINTA", - "block_index": 192, + "block_index": 193, "calling_function": "sweep", - "event": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", + "event": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", "quantity": 500000000, - "tx_index": 58, + "tx_index": 59, "utxo": null, "utxo_address": null, - "block_time": 1726509908, + "block_time": 1727201012, "asset_info": { "asset_longname": "", "description": "", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, "quantity_normalized": "5.00000000" }, - "tx_hash": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", - "block_index": 192, - "block_time": 1726509908 + "tx_hash": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", + "block_index": 193, + "block_time": 1727201012 } ], "next_cursor": null, @@ -1363,19 +1481,19 @@ "/v2/transactions//events/": { "result": [ { - "event_index": 526, + "event_index": 533, "event": "CREDIT", "params": { - "address": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "address": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "asset": "XCP", - "block_index": 192, + "block_index": 193, "calling_function": "sweep", - "event": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", + "event": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", "quantity": 74499387833, - "tx_index": 58, + "tx_index": 59, "utxo": null, "utxo_address": null, - "block_time": 1726509908, + "block_time": 1727201012, "asset_info": { "divisible": true, "asset_longname": null, @@ -1385,63 +1503,63 @@ }, "quantity_normalized": "744.99388000" }, - "tx_hash": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", - "block_index": 192, - "block_time": 1726509908 + "tx_hash": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", + "block_index": 193, + "block_time": 1727201012 }, { - "event_index": 524, + "event_index": 531, "event": "CREDIT", "params": { - "address": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "address": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "asset": "MYASSETA", - "block_index": 192, + "block_index": 193, "calling_function": "sweep", - "event": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", + "event": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", "quantity": 10, - "tx_index": 58, + "tx_index": 59, "utxo": null, "utxo_address": null, - "block_time": 1726509908, + "block_time": 1727201012, "asset_info": { "asset_longname": null, "description": "My super asset A", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, "quantity_normalized": "0.00000010" }, - "tx_hash": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", - "block_index": 192, - "block_time": 1726509908 + "tx_hash": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", + "block_index": 193, + "block_time": 1727201012 }, { - "event_index": 522, + "event_index": 529, "event": "CREDIT", "params": { - "address": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "address": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "asset": "FAIRMINTA", - "block_index": 192, + "block_index": 193, "calling_function": "sweep", - "event": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", + "event": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", "quantity": 500000000, - "tx_index": 58, + "tx_index": 59, "utxo": null, "utxo_address": null, - "block_time": 1726509908, + "block_time": 1727201012, "asset_info": { "asset_longname": "", "description": "", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, "quantity_normalized": "5.00000000" }, - "tx_hash": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", - "block_index": 192, - "block_time": 1726509908 + "tx_hash": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", + "block_index": 193, + "block_time": 1727201012 } ], "next_cursor": null, @@ -1454,7 +1572,7 @@ "total": 100000000000, "addresses": [ { - "address": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "address": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "utxo": null, "utxo_address": null, "quantity": 100000000000, @@ -1464,7 +1582,7 @@ "asset_info": { "asset_longname": "A95428959745315388.SUBNUMERIC", "description": "A subnumeric asset", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, @@ -1475,7 +1593,7 @@ "total": 97999999980, "addresses": [ { - "address": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "address": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "utxo": null, "utxo_address": null, "quantity": 97999999980, @@ -1485,7 +1603,7 @@ "asset_info": { "asset_longname": null, "description": "My super asset A", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, @@ -1496,7 +1614,7 @@ "total": 500000000, "addresses": [ { - "address": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", + "address": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", "utxo": null, "utxo_address": null, "quantity": 500000000, @@ -1506,7 +1624,7 @@ "asset_info": { "asset_longname": "", "description": "", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, @@ -1517,7 +1635,7 @@ "total": 40, "addresses": [ { - "address": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", + "address": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", "utxo": null, "utxo_address": null, "quantity": 40, @@ -1527,7 +1645,7 @@ "asset_info": { "asset_longname": "", "description": "", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, @@ -1538,7 +1656,7 @@ "total": 19, "addresses": [ { - "address": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", + "address": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", "utxo": null, "utxo_address": null, "quantity": 19, @@ -1548,7 +1666,7 @@ "asset_info": { "asset_longname": "", "description": "", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, @@ -1561,18 +1679,18 @@ "/v2/addresses/transactions": { "result": [ { - "tx_index": 57, - "tx_hash": "7b7048040c893c69892bd088ce48db79b96b9c1d7221b50d903064ff5a1ed232", - "block_index": 191, - "block_hash": "44555f5ae4cd1f61f3df9e675ad106b01fca685a76eff37b685758a1f234afb2", - "block_time": 1726509903, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "tx_index": 58, + "tx_hash": "132d67269995e3bc9e40d83bc0badefad56d85f0229eedfb0e2ccdf829d03d28", + "block_index": 192, + "block_hash": "7aa8cd7d46e84e234d53f8c14736afd98d1d5b8441f4f425fe8c6a52c3f33c87", + "block_time": 1727201008, + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "destination": null, "btc_amount": 0, "fee": 10000, "data": "0a000000000000000100000000000003e8000000000000000000000000000003e800150000000000000000", "supported": true, - "utxos_info": "7b7048040c893c69892bd088ce48db79b96b9c1d7221b50d903064ff5a1ed232:1", + "utxos_info": "132d67269995e3bc9e40d83bc0badefad56d85f0229eedfb0e2ccdf829d03d28:1", "confirmed": true, "unpacked_data": { "message_type": "order", @@ -1607,42 +1725,42 @@ "btc_amount_normalized": "0.00000000" }, { - "tx_index": 56, - "tx_hash": "18a9b72fc9e67470cff556297fa5f3dd95ea7d472693f42d597db7ad598c05ec", - "block_index": 190, - "block_hash": "214a1e1ed38b3e555167f5f21d78c8c3e487ea62d748cd8200a3b3e18f2b6017", - "block_time": 1726509899, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "tx_index": 57, + "tx_hash": "1d314894d90254c43598647c4ebca9b8f3f0d20a522eb8130d9955e95ea1c197", + "block_index": 191, + "block_hash": "6df0e71250aea0de3e29c053f2ca49cc02c029f911a25356f455303c447d0a63", + "block_time": 1727201003, + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "destination": null, "btc_amount": 0, "fee": 10000, - "data": "465e324d551a694d3f6ffc9c67b3db8817d470ba32257047ddee237d3d07c1a1e2", + "data": "4683919cf82dd5eb1e2e1f6d3f3f752d34d41636ed00ab8ff78369eb81475b8e57", "supported": true, - "utxos_info": "18a9b72fc9e67470cff556297fa5f3dd95ea7d472693f42d597db7ad598c05ec:1", + "utxos_info": "1d314894d90254c43598647c4ebca9b8f3f0d20a522eb8130d9955e95ea1c197:1", "confirmed": true, "unpacked_data": { "message_type": "cancel", "message_type_id": 70, "message_data": { - "offer_hash": "5e324d551a694d3f6ffc9c67b3db8817d470ba32257047ddee237d3d07c1a1e2", + "offer_hash": "83919cf82dd5eb1e2e1f6d3f3f752d34d41636ed00ab8ff78369eb81475b8e57", "status": "valid" } }, "btc_amount_normalized": "0.00000000" }, { - "tx_index": 55, - "tx_hash": "5e324d551a694d3f6ffc9c67b3db8817d470ba32257047ddee237d3d07c1a1e2", - "block_index": 189, - "block_hash": "4147554b4c1d081b097b1c6278509e7da43fbec27bdb1ad6cb8414e44ba4445b", - "block_time": 1726509894, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "tx_index": 56, + "tx_hash": "83919cf82dd5eb1e2e1f6d3f3f752d34d41636ed00ab8ff78369eb81475b8e57", + "block_index": 190, + "block_hash": "0878eceac6ded73fd8e873772ed9f93c488a46bdde659e59451e65eb9a3ee390", + "block_time": 1727200999, + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "destination": null, "btc_amount": 0, "fee": 10000, "data": "0a000000000000000100000000000003e8000000000000000000000000000003e800150000000000000000", "supported": true, - "utxos_info": "5e324d551a694d3f6ffc9c67b3db8817d470ba32257047ddee237d3d07c1a1e2:1", + "utxos_info": "83919cf82dd5eb1e2e1f6d3f3f752d34d41636ed00ab8ff78369eb81475b8e57:1", "confirmed": true, "unpacked_data": { "message_type": "order", @@ -1677,18 +1795,18 @@ "btc_amount_normalized": "0.00000000" }, { - "tx_index": 54, - "tx_hash": "e8fda956958ed7de0a98e42d8d28349b9c7b5e20da375c185c5830526df6594f", - "block_index": 188, - "block_hash": "6af6f23af835e0b3e7515a3d98e43a2ff75b7baf8d552fe27cbaf82dc8974780", - "block_time": 1726509890, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "tx_index": 55, + "tx_hash": "4cd813fae2558e89f2f9411f38daa7d4c10c94a267daa38155cf18fb4d9fd055", + "block_index": 189, + "block_hash": "73be93be2c91012204c8a1e8321475345c6c634627235302e1e7abe56fcb5755", + "block_time": 1727200995, + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "destination": null, "btc_amount": 0, "fee": 10000, - "data": "0300038057841d54055a90ed31a47e9821fd3118e6e78592808b61e9d7e5f2f9b6d9181c584be5f5174d8c9f9280ae2b0c1095bbdf23747f76b242be716817701b78400000060acdc5db9400000000000000290000000000000005200000000000000020000000000000001400", + "data": "0300038054c1ba334a1912f96353f110938927c645ff9064802e12acb6aeb47c0265e777c21744bff0466743dd806c45b04730370dc7e778ed200c19f22a08c064a9400000060acdc5db9400000000000000290000000000000005200000000000000020000000000000001400", "supported": true, - "utxos_info": "e8fda956958ed7de0a98e42d8d28349b9c7b5e20da375c185c5830526df6594f:0", + "utxos_info": "4cd813fae2558e89f2f9411f38daa7d4c10c94a267daa38155cf18fb4d9fd055:0", "confirmed": true, "unpacked_data": { "message_type": "mpma_send", @@ -1696,14 +1814,14 @@ "message_data": [ { "asset": "MYASSETA", - "destination": "bcrt1q3ds7n4l97tumdkgcr3vyhe04zaxce8ujr8fmr2", + "destination": "bcrt1q9cf2ed4wk37qye08wlppw39l7prxws7afa3krk", "quantity": 10, "memo": null, "memo_is_hex": null, "asset_info": { "asset_longname": null, "description": "My super asset A", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, @@ -1711,7 +1829,7 @@ }, { "asset": "XCP", - "destination": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", + "destination": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", "quantity": 10, "memo": null, "memo_is_hex": null, @@ -1729,44 +1847,44 @@ "btc_amount_normalized": "0.00000000" }, { - "tx_index": 51, - "tx_hash": "d749fed653092a4854ac8c9773d9610edfb2b12db4c962aa3795cc653e8a624d", - "block_index": 185, - "block_hash": "7bb18fb36cb1bd5cb99d781fabe17b43d4b67ee7530bd6ab46356fdb3e139fa6", - "block_time": 1726509867, - "source": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", - "destination": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "tx_index": 52, + "tx_hash": "c78a916b13975e32514ea6fac0324481adfcc972f1db2cbabb96677db4d026cb", + "block_index": 186, + "block_hash": "68d8ed672f554db585e5508b660624d769c3a49fe8bfc118cf4109c241833983", + "block_time": 1727200982, + "source": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", + "destination": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "btc_amount": 2000, "fee": 10000, - "data": "0b675f8dccad4bdcf4b54ce5aca7ddc442f642d63e518d64ad6068a264fb9894e1ebe20caac209f665277d0ac456ab451b4934a7d86529e24fd43b97535e62746a", + "data": "0b4844c5f31805a95e25af849d3e888b41d4cba82846300010c82895f4072e57f6e2f9612faf4a7e6249958ba9d24aaf9e3d7a70b0dafaa5fb94dc51a088e6cf63", "supported": true, - "utxos_info": "d749fed653092a4854ac8c9773d9610edfb2b12db4c962aa3795cc653e8a624d:0", + "utxos_info": "c78a916b13975e32514ea6fac0324481adfcc972f1db2cbabb96677db4d026cb:0", "confirmed": true, "unpacked_data": { "message_type": "btcpay", "message_type_id": 11, "message_data": { - "tx0_hash": "675f8dccad4bdcf4b54ce5aca7ddc442f642d63e518d64ad6068a264fb9894e1", - "tx1_hash": "ebe20caac209f665277d0ac456ab451b4934a7d86529e24fd43b97535e62746a", - "order_match_id": "675f8dccad4bdcf4b54ce5aca7ddc442f642d63e518d64ad6068a264fb9894e1_ebe20caac209f665277d0ac456ab451b4934a7d86529e24fd43b97535e62746a", + "tx0_hash": "4844c5f31805a95e25af849d3e888b41d4cba82846300010c82895f4072e57f6", + "tx1_hash": "e2f9612faf4a7e6249958ba9d24aaf9e3d7a70b0dafaa5fb94dc51a088e6cf63", + "order_match_id": "4844c5f31805a95e25af849d3e888b41d4cba82846300010c82895f4072e57f6_e2f9612faf4a7e6249958ba9d24aaf9e3d7a70b0dafaa5fb94dc51a088e6cf63", "status": "valid" } }, "btc_amount_normalized": "0.00002000" } ], - "next_cursor": 50, - "result_count": 35 + "next_cursor": 51, + "result_count": 36 }, "/v2/addresses/events": { "result": [ { - "event_index": 515, + "event_index": 522, "event": "OPEN_ORDER", "params": { - "block_index": 191, + "block_index": 192, "expiration": 21, - "expire_index": 212, + "expire_index": 213, "fee_provided": 10000, "fee_provided_remaining": 10000, "fee_required": 0, @@ -1777,11 +1895,11 @@ "give_asset": "XCP", "give_quantity": 1000, "give_remaining": 1000, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "status": "open", - "tx_hash": "7b7048040c893c69892bd088ce48db79b96b9c1d7221b50d903064ff5a1ed232", - "tx_index": 57, - "block_time": 1726509903, + "tx_hash": "132d67269995e3bc9e40d83bc0badefad56d85f0229eedfb0e2ccdf829d03d28", + "tx_index": 58, + "block_time": 1727201008, "give_asset_info": { "divisible": true, "asset_longname": null, @@ -1805,24 +1923,24 @@ "fee_required_remaining_normalized": "0.00000000", "fee_provided_remaining_normalized": "0.00010000" }, - "tx_hash": "7b7048040c893c69892bd088ce48db79b96b9c1d7221b50d903064ff5a1ed232", - "block_index": 191, - "block_time": 1726509903 + "tx_hash": "132d67269995e3bc9e40d83bc0badefad56d85f0229eedfb0e2ccdf829d03d28", + "block_index": 192, + "block_time": 1727201008 }, { - "event_index": 514, + "event_index": 521, "event": "DEBIT", "params": { "action": "open order", - "address": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "address": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "asset": "XCP", - "block_index": 191, - "event": "7b7048040c893c69892bd088ce48db79b96b9c1d7221b50d903064ff5a1ed232", + "block_index": 192, + "event": "132d67269995e3bc9e40d83bc0badefad56d85f0229eedfb0e2ccdf829d03d28", "quantity": 1000, - "tx_index": 57, + "tx_index": 58, "utxo": null, "utxo_address": null, - "block_time": 1726509903, + "block_time": 1727201008, "asset_info": { "divisible": true, "asset_longname": null, @@ -1832,25 +1950,25 @@ }, "quantity_normalized": "0.00001000" }, - "tx_hash": "7b7048040c893c69892bd088ce48db79b96b9c1d7221b50d903064ff5a1ed232", - "block_index": 191, - "block_time": 1726509903 + "tx_hash": "132d67269995e3bc9e40d83bc0badefad56d85f0229eedfb0e2ccdf829d03d28", + "block_index": 192, + "block_time": 1727201008 }, { - "event_index": 513, + "event_index": 520, "event": "NEW_TRANSACTION", "params": { - "block_hash": "44555f5ae4cd1f61f3df9e675ad106b01fca685a76eff37b685758a1f234afb2", - "block_index": 191, - "block_time": 1726509903, + "block_hash": "7aa8cd7d46e84e234d53f8c14736afd98d1d5b8441f4f425fe8c6a52c3f33c87", + "block_index": 192, + "block_time": 1727201008, "btc_amount": 0, "data": "0a000000000000000100000000000003e8000000000000000000000000000003e800150000000000000000", "destination": "", "fee": 10000, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "tx_hash": "7b7048040c893c69892bd088ce48db79b96b9c1d7221b50d903064ff5a1ed232", - "tx_index": 57, - "utxos_info": "7b7048040c893c69892bd088ce48db79b96b9c1d7221b50d903064ff5a1ed232:1", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "tx_hash": "132d67269995e3bc9e40d83bc0badefad56d85f0229eedfb0e2ccdf829d03d28", + "tx_index": 58, + "utxos_info": "132d67269995e3bc9e40d83bc0badefad56d85f0229eedfb0e2ccdf829d03d28:1", "unpacked_data": { "message_type": "order", "message_type_id": 10, @@ -1882,40 +2000,40 @@ }, "btc_amount_normalized": "0.00000000" }, - "tx_hash": "7b7048040c893c69892bd088ce48db79b96b9c1d7221b50d903064ff5a1ed232", - "block_index": 191, - "block_time": 1726509903 + "tx_hash": "132d67269995e3bc9e40d83bc0badefad56d85f0229eedfb0e2ccdf829d03d28", + "block_index": 192, + "block_time": 1727201008 }, { - "event_index": 509, + "event_index": 516, "event": "CANCEL_ORDER", "params": { - "block_index": 190, - "offer_hash": "5e324d551a694d3f6ffc9c67b3db8817d470ba32257047ddee237d3d07c1a1e2", - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "block_index": 191, + "offer_hash": "83919cf82dd5eb1e2e1f6d3f3f752d34d41636ed00ab8ff78369eb81475b8e57", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "status": "valid", - "tx_hash": "18a9b72fc9e67470cff556297fa5f3dd95ea7d472693f42d597db7ad598c05ec", - "tx_index": 56, - "block_time": 1726509899 + "tx_hash": "1d314894d90254c43598647c4ebca9b8f3f0d20a522eb8130d9955e95ea1c197", + "tx_index": 57, + "block_time": 1727201003 }, - "tx_hash": "18a9b72fc9e67470cff556297fa5f3dd95ea7d472693f42d597db7ad598c05ec", - "block_index": 190, - "block_time": 1726509899 + "tx_hash": "1d314894d90254c43598647c4ebca9b8f3f0d20a522eb8130d9955e95ea1c197", + "block_index": 191, + "block_time": 1727201003 }, { - "event_index": 508, + "event_index": 515, "event": "CREDIT", "params": { - "address": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "address": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "asset": "XCP", - "block_index": 190, + "block_index": 191, "calling_function": "cancel order", - "event": "5e324d551a694d3f6ffc9c67b3db8817d470ba32257047ddee237d3d07c1a1e2", + "event": "83919cf82dd5eb1e2e1f6d3f3f752d34d41636ed00ab8ff78369eb81475b8e57", "quantity": 1000, - "tx_index": 56, + "tx_index": 57, "utxo": null, "utxo_address": null, - "block_time": 1726509899, + "block_time": 1727201003, "asset_info": { "divisible": true, "asset_longname": null, @@ -1925,29 +2043,29 @@ }, "quantity_normalized": "0.00001000" }, - "tx_hash": "18a9b72fc9e67470cff556297fa5f3dd95ea7d472693f42d597db7ad598c05ec", - "block_index": 190, - "block_time": 1726509899 + "tx_hash": "1d314894d90254c43598647c4ebca9b8f3f0d20a522eb8130d9955e95ea1c197", + "block_index": 191, + "block_time": 1727201003 } ], - "next_cursor": 506, - "result_count": 163 + "next_cursor": 513, + "result_count": 165 }, "/v2/addresses/mempool": { "result": [ { - "tx_hash": "adc699f3b9af2a586a913343701a26c494a8fd637e66e50840936b8ef7bf10b6", + "tx_hash": "044206e67491ff5d4c325bca6bbf5704dfbc3794e8948a39aae3ab0e11b23e2a", "event": "ENHANCED_SEND", "params": { "asset": "XCP", "block_index": 9999999, - "destination": "bcrt1q3ds7n4l97tumdkgcr3vyhe04zaxce8ujr8fmr2", + "destination": "bcrt1q9cf2ed4wk37qye08wlppw39l7prxws7afa3krk", "memo": null, "quantity": 10000, - "source": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "source": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "status": "valid", - "tx_hash": "adc699f3b9af2a586a913343701a26c494a8fd637e66e50840936b8ef7bf10b6", - "tx_index": 60, + "tx_hash": "044206e67491ff5d4c325bca6bbf5704dfbc3794e8948a39aae3ab0e11b23e2a", + "tx_index": 61, "asset_info": { "divisible": true, "asset_longname": null, @@ -1959,19 +2077,19 @@ } }, { - "tx_hash": "adc699f3b9af2a586a913343701a26c494a8fd637e66e50840936b8ef7bf10b6", + "tx_hash": "044206e67491ff5d4c325bca6bbf5704dfbc3794e8948a39aae3ab0e11b23e2a", "event": "CREDIT", "params": { - "address": "bcrt1q3ds7n4l97tumdkgcr3vyhe04zaxce8ujr8fmr2", + "address": "bcrt1q9cf2ed4wk37qye08wlppw39l7prxws7afa3krk", "asset": "XCP", - "block_index": 193, + "block_index": 194, "calling_function": "send", - "event": "adc699f3b9af2a586a913343701a26c494a8fd637e66e50840936b8ef7bf10b6", + "event": "044206e67491ff5d4c325bca6bbf5704dfbc3794e8948a39aae3ab0e11b23e2a", "quantity": 10000, - "tx_index": 60, + "tx_index": 61, "utxo": null, "utxo_address": null, - "block_time": 1726509912, + "block_time": 1727201016, "asset_info": { "divisible": true, "asset_longname": null, @@ -1983,19 +2101,19 @@ } }, { - "tx_hash": "adc699f3b9af2a586a913343701a26c494a8fd637e66e50840936b8ef7bf10b6", + "tx_hash": "044206e67491ff5d4c325bca6bbf5704dfbc3794e8948a39aae3ab0e11b23e2a", "event": "DEBIT", "params": { "action": "send", - "address": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "address": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "asset": "XCP", - "block_index": 193, - "event": "adc699f3b9af2a586a913343701a26c494a8fd637e66e50840936b8ef7bf10b6", + "block_index": 194, + "event": "044206e67491ff5d4c325bca6bbf5704dfbc3794e8948a39aae3ab0e11b23e2a", "quantity": 10000, - "tx_index": 60, + "tx_index": 61, "utxo": null, "utxo_address": null, - "block_time": 1726509912, + "block_time": 1727201016, "asset_info": { "divisible": true, "asset_longname": null, @@ -2007,27 +2125,27 @@ } }, { - "tx_hash": "adc699f3b9af2a586a913343701a26c494a8fd637e66e50840936b8ef7bf10b6", + "tx_hash": "044206e67491ff5d4c325bca6bbf5704dfbc3794e8948a39aae3ab0e11b23e2a", "event": "NEW_TRANSACTION", "params": { "block_hash": "mempool", "block_index": 9999999, - "block_time": 1726509917.0831685, + "block_time": 1727201019.8965485, "btc_amount": 0, - "data": "0200000000000000010000000000002710808b61e9d7e5f2f9b6d9181c584be5f5174d8c9f92", + "data": "0200000000000000010000000000002710802e12acb6aeb47c0265e777c21744bff0466743dd", "destination": "", "fee": 10000, - "source": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", - "tx_hash": "adc699f3b9af2a586a913343701a26c494a8fd637e66e50840936b8ef7bf10b6", - "tx_index": 60, - "utxos_info": "adc699f3b9af2a586a913343701a26c494a8fd637e66e50840936b8ef7bf10b6:1", + "source": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", + "tx_hash": "044206e67491ff5d4c325bca6bbf5704dfbc3794e8948a39aae3ab0e11b23e2a", + "tx_index": 61, + "utxos_info": "044206e67491ff5d4c325bca6bbf5704dfbc3794e8948a39aae3ab0e11b23e2a:1", "unpacked_data": { "message_type": "enhanced_send", "message_type_id": 2, "message_data": { "asset": "XCP", "quantity": 10000, - "address": "bcrt1q3ds7n4l97tumdkgcr3vyhe04zaxce8ujr8fmr2", + "address": "bcrt1q9cf2ed4wk37qye08wlppw39l7prxws7afa3krk", "memo": null, "asset_info": { "divisible": true, @@ -2049,7 +2167,7 @@ "/v2/addresses/
/balances": { "result": [ { - "address": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "address": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "asset": "A95428956980101314", "quantity": 100000000000, "utxo": null, @@ -2057,14 +2175,14 @@ "asset_info": { "asset_longname": "A95428959745315388.SUBNUMERIC", "description": "A subnumeric asset", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, "quantity_normalized": "1000.00000000" }, { - "address": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "address": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "asset": "MYASSETA", "quantity": 97999999980, "utxo": null, @@ -2072,16 +2190,16 @@ "asset_info": { "asset_longname": null, "description": "My super asset A", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, "quantity_normalized": "980.00000000" }, { - "address": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "address": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "asset": "XCP", - "quantity": 82699937176, + "quantity": 82699937196, "utxo": null, "utxo_address": null, "asset_info": { @@ -2094,7 +2212,7 @@ "quantity_normalized": "826.99937000" }, { - "address": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "address": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "asset": "TESTLOCKDESC", "quantity": 10000000000, "utxo": null, @@ -2102,7 +2220,7 @@ "asset_info": { "asset_longname": null, "description": "Test Locking Description", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, @@ -2114,9 +2232,9 @@ }, "/v2/addresses/
/balances/": { "result": { - "address": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "address": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "asset": "XCP", - "quantity": 82699937176, + "quantity": 82699937196, "utxo": null, "utxo_address": null, "asset_info": { @@ -2132,17 +2250,17 @@ "/v2/addresses/
/credits": { "result": [ { - "block_index": 190, - "address": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "block_index": 191, + "address": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "asset": "XCP", "quantity": 1000, "calling_function": "cancel order", - "event": "5e324d551a694d3f6ffc9c67b3db8817d470ba32257047ddee237d3d07c1a1e2", - "tx_index": 56, + "event": "83919cf82dd5eb1e2e1f6d3f3f752d34d41636ed00ab8ff78369eb81475b8e57", + "tx_index": 57, "utxo": null, "utxo_address": null, "confirmed": true, - "block_time": 1726509899, + "block_time": 1727201003, "asset_info": { "divisible": true, "asset_longname": null, @@ -2153,17 +2271,17 @@ "quantity_normalized": "0.00001000" }, { - "block_index": 182, - "address": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "block_index": 183, + "address": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "asset": "XCP", "quantity": 1000, "calling_function": "cancel order", - "event": "e2263719273ed7cbb5496ae9daff21e24a2899e76feea1abbd4e91fa72766b5d", + "event": "f90bb3520b4cd8e8f43ae4a416ea102f6a45a4cfd10b4620066271057abde926", "tx_index": 0, "utxo": null, "utxo_address": null, "confirmed": true, - "block_time": 1726509796, + "block_time": 1727200899, "asset_info": { "divisible": true, "asset_longname": null, @@ -2174,86 +2292,86 @@ "quantity_normalized": "0.00001000" }, { - "block_index": 159, - "address": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "block_index": 160, + "address": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "asset": "A95428956980101314", "quantity": 100000000000, "calling_function": "issuance", - "event": "3f80ba6dc66be4e5b604bbf8e1e2007161960069d871f7cb00b1d24f9f090491", - "tx_index": 46, + "event": "efd20bb15eb6a7ce22645a0fb33b1873d00dc0cdeb9533d37037e0fd6a63f512", + "tx_index": 47, "utxo": null, "utxo_address": null, "confirmed": true, - "block_time": 1726509780, + "block_time": 1727200884, "asset_info": { "asset_longname": "A95428959745315388.SUBNUMERIC", "description": "A subnumeric asset", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, "quantity_normalized": "1000.00000000" }, { - "block_index": 156, - "address": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "block_index": 157, + "address": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "asset": "TESTLOCKDESC", "quantity": 10000000000, "calling_function": "issuance", - "event": "23d681cb0c9d9310fd8150fcabf440c84cae363db926d0fcde70cbe12373f96f", - "tx_index": 43, + "event": "e12a079169fa7227aca6b168eafdf85cc67738b746b00fb0efa698d2c977b8f1", + "tx_index": 44, "utxo": null, "utxo_address": null, "confirmed": true, - "block_time": 1726509746, + "block_time": 1727200871, "asset_info": { "asset_longname": null, "description": "Test Locking Description", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, "quantity_normalized": "100.00000000" }, { - "block_index": 151, + "block_index": 152, "address": null, "asset": "MYASSETA", "quantity": 1000000000, "calling_function": "attach to utxo", - "event": "a79ea4de3cb6cae0d2b3bbf427028357f9dca64f8d599c93511be263bfda8c8a", - "tx_index": 38, - "utxo": "a79ea4de3cb6cae0d2b3bbf427028357f9dca64f8d599c93511be263bfda8c8a:1", - "utxo_address": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "event": "10c98431b6929b14e27a040b17f2d22aafc7813478587e2bbaca26c1c6197538", + "tx_index": 39, + "utxo": "10c98431b6929b14e27a040b17f2d22aafc7813478587e2bbaca26c1c6197538:1", + "utxo_address": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "confirmed": true, - "block_time": 1726509724, + "block_time": 1727200849, "asset_info": { "asset_longname": null, "description": "My super asset A", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, "quantity_normalized": "10.00000000" } ], - "next_cursor": 42, - "result_count": 14 + "next_cursor": 44, + "result_count": 15 }, "/v2/addresses/
/debits": { "result": [ { - "block_index": 191, - "address": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "block_index": 192, + "address": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "asset": "XCP", "quantity": 1000, "action": "open order", - "event": "7b7048040c893c69892bd088ce48db79b96b9c1d7221b50d903064ff5a1ed232", - "tx_index": 57, + "event": "132d67269995e3bc9e40d83bc0badefad56d85f0229eedfb0e2ccdf829d03d28", + "tx_index": 58, "utxo": null, "utxo_address": null, "confirmed": true, - "block_time": 1726509903, + "block_time": 1727201008, "asset_info": { "divisible": true, "asset_longname": null, @@ -2264,17 +2382,17 @@ "quantity_normalized": "0.00001000" }, { - "block_index": 189, - "address": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "block_index": 190, + "address": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "asset": "XCP", "quantity": 1000, "action": "open order", - "event": "5e324d551a694d3f6ffc9c67b3db8817d470ba32257047ddee237d3d07c1a1e2", - "tx_index": 55, + "event": "83919cf82dd5eb1e2e1f6d3f3f752d34d41636ed00ab8ff78369eb81475b8e57", + "tx_index": 56, "utxo": null, "utxo_address": null, "confirmed": true, - "block_time": 1726509894, + "block_time": 1727200999, "asset_info": { "divisible": true, "asset_longname": null, @@ -2285,17 +2403,17 @@ "quantity_normalized": "0.00001000" }, { - "block_index": 188, - "address": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "block_index": 189, + "address": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "asset": "XCP", "quantity": 10, "action": "mpma send", - "event": "e8fda956958ed7de0a98e42d8d28349b9c7b5e20da375c185c5830526df6594f", - "tx_index": 54, + "event": "4cd813fae2558e89f2f9411f38daa7d4c10c94a267daa38155cf18fb4d9fd055", + "tx_index": 55, "utxo": null, "utxo_address": null, "confirmed": true, - "block_time": 1726509890, + "block_time": 1727200995, "asset_info": { "divisible": true, "asset_longname": null, @@ -2306,38 +2424,38 @@ "quantity_normalized": "0.00000010" }, { - "block_index": 188, - "address": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "block_index": 189, + "address": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "asset": "MYASSETA", "quantity": 20, "action": "mpma send", - "event": "e8fda956958ed7de0a98e42d8d28349b9c7b5e20da375c185c5830526df6594f", - "tx_index": 54, + "event": "4cd813fae2558e89f2f9411f38daa7d4c10c94a267daa38155cf18fb4d9fd055", + "tx_index": 55, "utxo": null, "utxo_address": null, "confirmed": true, - "block_time": 1726509890, + "block_time": 1727200995, "asset_info": { "asset_longname": null, "description": "My super asset A", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, "quantity_normalized": "0.00000020" }, { - "block_index": 183, - "address": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "block_index": 184, + "address": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "asset": "XCP", "quantity": 10000, "action": "open order", - "event": "675f8dccad4bdcf4b54ce5aca7ddc442f642d63e518d64ad6068a264fb9894e1", - "tx_index": 49, + "event": "4844c5f31805a95e25af849d3e888b41d4cba82846300010c82895f4072e57f6", + "tx_index": 50, "utxo": null, "utxo_address": null, "confirmed": true, - "block_time": 1726509858, + "block_time": 1727200964, "asset_info": { "divisible": true, "asset_longname": null, @@ -2360,9 +2478,9 @@ "result": [ { "tx_index": 24, - "tx_hash": "1629a61f230d38e661231eeaac724d9336e9413ce0a9f145c49d57030ae05b8d", + "tx_hash": "929b85b0f022a54c6904a36e51da0339ca9b0583ac7d003a91cd601964f53da5", "block_index": 137, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "timestamp": 4003903983, "value": 999.0, "fee_fraction_int": 0, @@ -2370,7 +2488,7 @@ "locked": false, "status": "valid", "confirmed": true, - "block_time": 1726509652, + "block_time": 1727200786, "fee_fraction_int_normalized": "0.00000000" } ], @@ -2381,14 +2499,14 @@ "result": [ { "tx_index": 0, - "tx_hash": "84cfd2ae481d0a4171e66009619eda93802914d5ccbb4bc52a5b76fd06d2dd79", + "tx_hash": "2a4c788f6c50b44e553e7df7ca7d8f3a63168c0f829df4ba991c41dcce254947", "block_index": 112, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "burned": 50000000, "earned": 74999998167, "status": "valid", "confirmed": true, - "block_time": 1726509535, + "block_time": 1727200681, "burned_normalized": "0.50000000", "earned_normalized": "749.99998000" } @@ -2399,11 +2517,11 @@ "/v2/addresses/
/sends": { "result": [ { - "tx_index": 54, - "tx_hash": "e8fda956958ed7de0a98e42d8d28349b9c7b5e20da375c185c5830526df6594f", - "block_index": 188, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "destination": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", + "tx_index": 55, + "tx_hash": "4cd813fae2558e89f2f9411f38daa7d4c10c94a267daa38155cf18fb4d9fd055", + "block_index": 189, + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "destination": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", "asset": "XCP", "quantity": 10, "status": "valid", @@ -2411,7 +2529,7 @@ "memo": null, "fee_paid": 0, "confirmed": true, - "block_time": 1726509890, + "block_time": 1727200995, "asset_info": { "divisible": true, "asset_longname": null, @@ -2423,11 +2541,11 @@ "fee_paid_normalized": "0.00000000" }, { - "tx_index": 54, - "tx_hash": "e8fda956958ed7de0a98e42d8d28349b9c7b5e20da375c185c5830526df6594f", - "block_index": 188, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "destination": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "tx_index": 55, + "tx_hash": "4cd813fae2558e89f2f9411f38daa7d4c10c94a267daa38155cf18fb4d9fd055", + "block_index": 189, + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "destination": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "asset": "MYASSETA", "quantity": 10, "status": "valid", @@ -2435,11 +2553,11 @@ "memo": null, "fee_paid": 0, "confirmed": true, - "block_time": 1726509890, + "block_time": 1727200995, "asset_info": { "asset_longname": null, "description": "My super asset A", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, @@ -2447,11 +2565,11 @@ "fee_paid_normalized": "0.00000000" }, { - "tx_index": 54, - "tx_hash": "e8fda956958ed7de0a98e42d8d28349b9c7b5e20da375c185c5830526df6594f", - "block_index": 188, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "destination": "bcrt1q3ds7n4l97tumdkgcr3vyhe04zaxce8ujr8fmr2", + "tx_index": 55, + "tx_hash": "4cd813fae2558e89f2f9411f38daa7d4c10c94a267daa38155cf18fb4d9fd055", + "block_index": 189, + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "destination": "bcrt1q9cf2ed4wk37qye08wlppw39l7prxws7afa3krk", "asset": "MYASSETA", "quantity": 10, "status": "valid", @@ -2459,11 +2577,11 @@ "memo": null, "fee_paid": 0, "confirmed": true, - "block_time": 1726509890, + "block_time": 1727200995, "asset_info": { "asset_longname": null, "description": "My super asset A", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, @@ -2471,11 +2589,11 @@ "fee_paid_normalized": "0.00000000" }, { - "tx_index": 38, - "tx_hash": "a79ea4de3cb6cae0d2b3bbf427028357f9dca64f8d599c93511be263bfda8c8a", - "block_index": 151, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "destination": "a79ea4de3cb6cae0d2b3bbf427028357f9dca64f8d599c93511be263bfda8c8a:1", + "tx_index": 39, + "tx_hash": "10c98431b6929b14e27a040b17f2d22aafc7813478587e2bbaca26c1c6197538", + "block_index": 152, + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "destination": "10c98431b6929b14e27a040b17f2d22aafc7813478587e2bbaca26c1c6197538:1", "asset": "MYASSETA", "quantity": 1000000000, "status": "valid", @@ -2483,11 +2601,11 @@ "memo": null, "fee_paid": 0, "confirmed": true, - "block_time": 1726509724, + "block_time": 1727200849, "asset_info": { "asset_longname": null, "description": "My super asset A", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, @@ -2495,11 +2613,11 @@ "fee_paid_normalized": "0.00000000" }, { - "tx_index": 35, - "tx_hash": "523006a2ff042bd1708eb4642871fe8df38dbb0d40fc0b07f7c4d78ea57fff6d", - "block_index": 148, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "destination": "d2f3afeb63580aa006eee4e055138c2903f7e8172876f688b7241e2ebbe5f172:1", + "tx_index": 36, + "tx_hash": "c4e14890d5864ccbd1cd8f4359a891a6593b9025d1ae267a57c9af00626e321d", + "block_index": 149, + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "destination": "1e3535ba7d55784565a1ebd370a14fdde23ba46de1398689d8e4dd3886a34714:1", "asset": "MYASSETA", "quantity": 1000000000, "status": "valid", @@ -2507,11 +2625,11 @@ "memo": null, "fee_paid": 0, "confirmed": true, - "block_time": 1726509710, + "block_time": 1727200836, "asset_info": { "asset_longname": null, "description": "My super asset A", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, @@ -2525,11 +2643,11 @@ "/v2/addresses/
/receives": { "result": [ { - "tx_index": 37, - "tx_hash": "05a57c8eb387d6f5e5f5a0ae90eb2873a7750c2f87e65b21b176c88da3be21ba", - "block_index": 150, - "source": "9d48ae21a1caed318e44591060a2d5873ed0ef5b403a5447046052a111c7dd88:0", - "destination": "bcrt1qghqkpk28xhsruvxjphq0ecx2ec35v90uksf2j0", + "tx_index": 38, + "tx_hash": "f409e618a14bf7943a7027f7f66f55aaf0604d8c0cafc7c0062f5c6bdf82d7b6", + "block_index": 151, + "source": "664b33a2858e0961f08c6a45f5ec6b98042d62a4f4e98faf6862f374be802724:0", + "destination": "bcrt1qe4v63z8qa2kvy5yzt4ssr8zhwxgqw84j8nmhvg", "asset": "MYASSETA", "quantity": 500000000, "status": "valid", @@ -2537,11 +2655,11 @@ "memo": null, "fee_paid": 0, "confirmed": true, - "block_time": 1726509719, + "block_time": 1727200844, "asset_info": { "asset_longname": null, "description": "My super asset A", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, @@ -2555,11 +2673,11 @@ "/v2/addresses/
/sends/": { "result": [ { - "tx_index": 54, - "tx_hash": "e8fda956958ed7de0a98e42d8d28349b9c7b5e20da375c185c5830526df6594f", - "block_index": 188, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "destination": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "tx_index": 55, + "tx_hash": "4cd813fae2558e89f2f9411f38daa7d4c10c94a267daa38155cf18fb4d9fd055", + "block_index": 189, + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "destination": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "asset": "MYASSETA", "quantity": 10, "status": "valid", @@ -2567,11 +2685,11 @@ "memo": null, "fee_paid": 0, "confirmed": true, - "block_time": 1726509890, + "block_time": 1727200995, "asset_info": { "asset_longname": null, "description": "My super asset A", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, @@ -2579,11 +2697,11 @@ "fee_paid_normalized": "0.00000000" }, { - "tx_index": 54, - "tx_hash": "e8fda956958ed7de0a98e42d8d28349b9c7b5e20da375c185c5830526df6594f", - "block_index": 188, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "destination": "bcrt1q3ds7n4l97tumdkgcr3vyhe04zaxce8ujr8fmr2", + "tx_index": 55, + "tx_hash": "4cd813fae2558e89f2f9411f38daa7d4c10c94a267daa38155cf18fb4d9fd055", + "block_index": 189, + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "destination": "bcrt1q9cf2ed4wk37qye08wlppw39l7prxws7afa3krk", "asset": "MYASSETA", "quantity": 10, "status": "valid", @@ -2591,11 +2709,11 @@ "memo": null, "fee_paid": 0, "confirmed": true, - "block_time": 1726509890, + "block_time": 1727200995, "asset_info": { "asset_longname": null, "description": "My super asset A", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, @@ -2603,11 +2721,11 @@ "fee_paid_normalized": "0.00000000" }, { - "tx_index": 38, - "tx_hash": "a79ea4de3cb6cae0d2b3bbf427028357f9dca64f8d599c93511be263bfda8c8a", - "block_index": 151, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "destination": "a79ea4de3cb6cae0d2b3bbf427028357f9dca64f8d599c93511be263bfda8c8a:1", + "tx_index": 39, + "tx_hash": "10c98431b6929b14e27a040b17f2d22aafc7813478587e2bbaca26c1c6197538", + "block_index": 152, + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "destination": "10c98431b6929b14e27a040b17f2d22aafc7813478587e2bbaca26c1c6197538:1", "asset": "MYASSETA", "quantity": 1000000000, "status": "valid", @@ -2615,11 +2733,11 @@ "memo": null, "fee_paid": 0, "confirmed": true, - "block_time": 1726509724, + "block_time": 1727200849, "asset_info": { "asset_longname": null, "description": "My super asset A", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, @@ -2627,11 +2745,11 @@ "fee_paid_normalized": "0.00000000" }, { - "tx_index": 35, - "tx_hash": "523006a2ff042bd1708eb4642871fe8df38dbb0d40fc0b07f7c4d78ea57fff6d", - "block_index": 148, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "destination": "d2f3afeb63580aa006eee4e055138c2903f7e8172876f688b7241e2ebbe5f172:1", + "tx_index": 36, + "tx_hash": "c4e14890d5864ccbd1cd8f4359a891a6593b9025d1ae267a57c9af00626e321d", + "block_index": 149, + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "destination": "1e3535ba7d55784565a1ebd370a14fdde23ba46de1398689d8e4dd3886a34714:1", "asset": "MYASSETA", "quantity": 1000000000, "status": "valid", @@ -2639,11 +2757,11 @@ "memo": null, "fee_paid": 0, "confirmed": true, - "block_time": 1726509710, + "block_time": 1727200836, "asset_info": { "asset_longname": null, "description": "My super asset A", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, @@ -2657,11 +2775,11 @@ "/v2/addresses/
/receives/": { "result": [ { - "tx_index": 37, - "tx_hash": "05a57c8eb387d6f5e5f5a0ae90eb2873a7750c2f87e65b21b176c88da3be21ba", - "block_index": 150, - "source": "9d48ae21a1caed318e44591060a2d5873ed0ef5b403a5447046052a111c7dd88:0", - "destination": "bcrt1qghqkpk28xhsruvxjphq0ecx2ec35v90uksf2j0", + "tx_index": 38, + "tx_hash": "f409e618a14bf7943a7027f7f66f55aaf0604d8c0cafc7c0062f5c6bdf82d7b6", + "block_index": 151, + "source": "664b33a2858e0961f08c6a45f5ec6b98042d62a4f4e98faf6862f374be802724:0", + "destination": "bcrt1qe4v63z8qa2kvy5yzt4ssr8zhwxgqw84j8nmhvg", "asset": "MYASSETA", "quantity": 500000000, "status": "valid", @@ -2669,11 +2787,11 @@ "memo": null, "fee_paid": 0, "confirmed": true, - "block_time": 1726509719, + "block_time": 1727200844, "asset_info": { "asset_longname": null, "description": "My super asset A", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, @@ -2686,48 +2804,11 @@ }, "/v2/addresses/
/dispensers": { "result": [ - { - "tx_index": 30, - "tx_hash": "d3713f7f4355cf95ddb00030d4c53655897b901d6827b640ee27cc83efaba2e6", - "block_index": 144, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "asset": "XCP", - "give_quantity": 1, - "escrow_quantity": 10, - "satoshirate": 1, - "status": 0, - "give_remaining": 20, - "oracle_address": null, - "last_status_tx_hash": null, - "origin": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "dispense_count": 0, - "last_status_tx_source": null, - "close_block_index": null, - "confirmed": true, - "fiat_price": null, - "oracle_price": null, - "fiat_unit": null, - "oracle_price_last_updated": null, - "satoshi_price": 1, - "block_time": 1726509693, - "asset_info": { - "divisible": true, - "asset_longname": null, - "description": "The Counterparty protocol native currency", - "locked": true, - "issuer": null - }, - "give_quantity_normalized": "0.00000001", - "give_remaining_normalized": "0.00000020", - "escrow_quantity_normalized": "0.00000010", - "satoshirate_normalized": "0.00000001", - "satoshi_price_normalized": "0.00000001" - }, { "tx_index": 26, - "tx_hash": "e4fcdf91df3b0bbacb56d49f65bba5e59c88e92c829d7c8b3f251d5e20457f4e", + "tx_hash": "3df6d90991175a0c2aabbe0dc87cacd5d92c90cb996ce5b1514492f2585c61fc", "block_index": 141, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "asset": "XCP", "give_quantity": 1, "escrow_quantity": 10000, @@ -2736,7 +2817,7 @@ "give_remaining": 0, "oracle_address": null, "last_status_tx_hash": null, - "origin": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "origin": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "dispense_count": 2, "last_status_tx_source": null, "close_block_index": null, @@ -2746,7 +2827,7 @@ "fiat_unit": null, "oracle_price_last_updated": null, "satoshi_price": 1, - "block_time": 1726509680, + "block_time": 1727200803, "asset_info": { "divisible": true, "asset_longname": null, @@ -2762,24 +2843,24 @@ } ], "next_cursor": null, - "result_count": 2 + "result_count": 1 }, "/v2/addresses/
/dispensers/": { "result": { - "tx_index": 30, - "tx_hash": "d3713f7f4355cf95ddb00030d4c53655897b901d6827b640ee27cc83efaba2e6", - "block_index": 144, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "tx_index": 26, + "tx_hash": "3df6d90991175a0c2aabbe0dc87cacd5d92c90cb996ce5b1514492f2585c61fc", + "block_index": 141, + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "asset": "XCP", "give_quantity": 1, - "escrow_quantity": 10, + "escrow_quantity": 10000, "satoshirate": 1, - "status": 0, - "give_remaining": 20, + "status": 10, + "give_remaining": 0, "oracle_address": null, "last_status_tx_hash": null, - "origin": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "dispense_count": 0, + "origin": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "dispense_count": 2, "last_status_tx_source": null, "close_block_index": null, "confirmed": true, @@ -2788,7 +2869,7 @@ "fiat_unit": null, "oracle_price_last_updated": null, "satoshi_price": 1, - "block_time": 1726509693, + "block_time": 1727200803, "asset_info": { "divisible": true, "asset_longname": null, @@ -2797,8 +2878,8 @@ "issuer": null }, "give_quantity_normalized": "0.00000001", - "give_remaining_normalized": "0.00000020", - "escrow_quantity_normalized": "0.00000010", + "give_remaining_normalized": "0.00000000", + "escrow_quantity_normalized": "0.00010000", "satoshirate_normalized": "0.00000001", "satoshi_price_normalized": "0.00000001" } @@ -2808,19 +2889,19 @@ { "tx_index": 28, "dispense_index": 0, - "tx_hash": "ab0fd3f5a4ce7ef637dfa113da8a1d7ca7f9b7b8ef7bea07721c55ef2aee9d2f", + "tx_hash": "6ae257db1a77e44eb808057e9944b6f6e15eebf699db2c77f3009100a550b7fa", "block_index": 141, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "destination": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "destination": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", "asset": "XCP", "dispense_quantity": 4000, - "dispenser_tx_hash": "e4fcdf91df3b0bbacb56d49f65bba5e59c88e92c829d7c8b3f251d5e20457f4e", + "dispenser_tx_hash": "3df6d90991175a0c2aabbe0dc87cacd5d92c90cb996ce5b1514492f2585c61fc", "btc_amount": 4000, "confirmed": true, "dispenser": { "tx_index": 26, "block_index": 141, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "give_quantity": 1, "escrow_quantity": 10000, "satoshirate": 1, @@ -2828,7 +2909,7 @@ "give_remaining": 0, "oracle_address": null, "last_status_tx_hash": null, - "origin": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "origin": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "dispense_count": 2, "last_status_tx_source": null, "close_block_index": null, @@ -2843,7 +2924,7 @@ "satoshirate_normalized": "0.00000001", "satoshi_price_normalized": "0.00000001" }, - "block_time": 1726509680, + "block_time": 1727200803, "asset_info": { "divisible": true, "asset_longname": null, @@ -2857,19 +2938,19 @@ { "tx_index": 27, "dispense_index": 0, - "tx_hash": "54eee03a80a18a6e816f27408ce071f7c7fefac72abc8ade14e835ad5f1563ce", + "tx_hash": "2a07cfa93bced14f59b80e10872f5fe4a406622078c0b85295c5c4149820d102", "block_index": 140, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "destination": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "destination": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", "asset": "XCP", "dispense_quantity": 6000, - "dispenser_tx_hash": "e4fcdf91df3b0bbacb56d49f65bba5e59c88e92c829d7c8b3f251d5e20457f4e", + "dispenser_tx_hash": "3df6d90991175a0c2aabbe0dc87cacd5d92c90cb996ce5b1514492f2585c61fc", "btc_amount": 6000, "confirmed": true, "dispenser": { "tx_index": 26, "block_index": 141, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "give_quantity": 1, "escrow_quantity": 10000, "satoshirate": 1, @@ -2877,7 +2958,7 @@ "give_remaining": 0, "oracle_address": null, "last_status_tx_hash": null, - "origin": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "origin": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "dispense_count": 2, "last_status_tx_source": null, "close_block_index": null, @@ -2892,7 +2973,7 @@ "satoshirate_normalized": "0.00000001", "satoshi_price_normalized": "0.00000001" }, - "block_time": 1726509665, + "block_time": 1727200798, "asset_info": { "divisible": true, "asset_longname": null, @@ -2912,19 +2993,19 @@ { "tx_index": 28, "dispense_index": 0, - "tx_hash": "ab0fd3f5a4ce7ef637dfa113da8a1d7ca7f9b7b8ef7bea07721c55ef2aee9d2f", + "tx_hash": "6ae257db1a77e44eb808057e9944b6f6e15eebf699db2c77f3009100a550b7fa", "block_index": 141, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "destination": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "destination": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", "asset": "XCP", "dispense_quantity": 4000, - "dispenser_tx_hash": "e4fcdf91df3b0bbacb56d49f65bba5e59c88e92c829d7c8b3f251d5e20457f4e", + "dispenser_tx_hash": "3df6d90991175a0c2aabbe0dc87cacd5d92c90cb996ce5b1514492f2585c61fc", "btc_amount": 4000, "confirmed": true, "dispenser": { "tx_index": 26, "block_index": 141, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "give_quantity": 1, "escrow_quantity": 10000, "satoshirate": 1, @@ -2932,7 +3013,7 @@ "give_remaining": 0, "oracle_address": null, "last_status_tx_hash": null, - "origin": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "origin": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "dispense_count": 2, "last_status_tx_source": null, "close_block_index": null, @@ -2947,7 +3028,7 @@ "satoshirate_normalized": "0.00000001", "satoshi_price_normalized": "0.00000001" }, - "block_time": 1726509680, + "block_time": 1727200803, "asset_info": { "divisible": true, "asset_longname": null, @@ -2961,19 +3042,19 @@ { "tx_index": 27, "dispense_index": 0, - "tx_hash": "54eee03a80a18a6e816f27408ce071f7c7fefac72abc8ade14e835ad5f1563ce", + "tx_hash": "2a07cfa93bced14f59b80e10872f5fe4a406622078c0b85295c5c4149820d102", "block_index": 140, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "destination": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "destination": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", "asset": "XCP", "dispense_quantity": 6000, - "dispenser_tx_hash": "e4fcdf91df3b0bbacb56d49f65bba5e59c88e92c829d7c8b3f251d5e20457f4e", + "dispenser_tx_hash": "3df6d90991175a0c2aabbe0dc87cacd5d92c90cb996ce5b1514492f2585c61fc", "btc_amount": 6000, "confirmed": true, "dispenser": { "tx_index": 26, "block_index": 141, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "give_quantity": 1, "escrow_quantity": 10000, "satoshirate": 1, @@ -2981,7 +3062,7 @@ "give_remaining": 0, "oracle_address": null, "last_status_tx_hash": null, - "origin": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "origin": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "dispense_count": 2, "last_status_tx_source": null, "close_block_index": null, @@ -2996,7 +3077,7 @@ "satoshirate_normalized": "0.00000001", "satoshi_price_normalized": "0.00000001" }, - "block_time": 1726509665, + "block_time": 1727200798, "asset_info": { "divisible": true, "asset_longname": null, @@ -3016,19 +3097,19 @@ { "tx_index": 28, "dispense_index": 0, - "tx_hash": "ab0fd3f5a4ce7ef637dfa113da8a1d7ca7f9b7b8ef7bea07721c55ef2aee9d2f", + "tx_hash": "6ae257db1a77e44eb808057e9944b6f6e15eebf699db2c77f3009100a550b7fa", "block_index": 141, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "destination": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "destination": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", "asset": "XCP", "dispense_quantity": 4000, - "dispenser_tx_hash": "e4fcdf91df3b0bbacb56d49f65bba5e59c88e92c829d7c8b3f251d5e20457f4e", + "dispenser_tx_hash": "3df6d90991175a0c2aabbe0dc87cacd5d92c90cb996ce5b1514492f2585c61fc", "btc_amount": 4000, "confirmed": true, "dispenser": { "tx_index": 26, "block_index": 141, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "give_quantity": 1, "escrow_quantity": 10000, "satoshirate": 1, @@ -3036,7 +3117,7 @@ "give_remaining": 0, "oracle_address": null, "last_status_tx_hash": null, - "origin": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "origin": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "dispense_count": 2, "last_status_tx_source": null, "close_block_index": null, @@ -3051,7 +3132,7 @@ "satoshirate_normalized": "0.00000001", "satoshi_price_normalized": "0.00000001" }, - "block_time": 1726509680, + "block_time": 1727200803, "asset_info": { "divisible": true, "asset_longname": null, @@ -3065,19 +3146,19 @@ { "tx_index": 27, "dispense_index": 0, - "tx_hash": "54eee03a80a18a6e816f27408ce071f7c7fefac72abc8ade14e835ad5f1563ce", + "tx_hash": "2a07cfa93bced14f59b80e10872f5fe4a406622078c0b85295c5c4149820d102", "block_index": 140, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "destination": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "destination": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", "asset": "XCP", "dispense_quantity": 6000, - "dispenser_tx_hash": "e4fcdf91df3b0bbacb56d49f65bba5e59c88e92c829d7c8b3f251d5e20457f4e", + "dispenser_tx_hash": "3df6d90991175a0c2aabbe0dc87cacd5d92c90cb996ce5b1514492f2585c61fc", "btc_amount": 6000, "confirmed": true, "dispenser": { "tx_index": 26, "block_index": 141, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "give_quantity": 1, "escrow_quantity": 10000, "satoshirate": 1, @@ -3085,7 +3166,7 @@ "give_remaining": 0, "oracle_address": null, "last_status_tx_hash": null, - "origin": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "origin": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "dispense_count": 2, "last_status_tx_source": null, "close_block_index": null, @@ -3100,7 +3181,7 @@ "satoshirate_normalized": "0.00000001", "satoshi_price_normalized": "0.00000001" }, - "block_time": 1726509665, + "block_time": 1727200798, "asset_info": { "divisible": true, "asset_longname": null, @@ -3120,19 +3201,19 @@ { "tx_index": 28, "dispense_index": 0, - "tx_hash": "ab0fd3f5a4ce7ef637dfa113da8a1d7ca7f9b7b8ef7bea07721c55ef2aee9d2f", + "tx_hash": "6ae257db1a77e44eb808057e9944b6f6e15eebf699db2c77f3009100a550b7fa", "block_index": 141, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "destination": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "destination": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", "asset": "XCP", "dispense_quantity": 4000, - "dispenser_tx_hash": "e4fcdf91df3b0bbacb56d49f65bba5e59c88e92c829d7c8b3f251d5e20457f4e", + "dispenser_tx_hash": "3df6d90991175a0c2aabbe0dc87cacd5d92c90cb996ce5b1514492f2585c61fc", "btc_amount": 4000, "confirmed": true, "dispenser": { "tx_index": 26, "block_index": 141, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "give_quantity": 1, "escrow_quantity": 10000, "satoshirate": 1, @@ -3140,7 +3221,7 @@ "give_remaining": 0, "oracle_address": null, "last_status_tx_hash": null, - "origin": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "origin": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "dispense_count": 2, "last_status_tx_source": null, "close_block_index": null, @@ -3155,7 +3236,7 @@ "satoshirate_normalized": "0.00000001", "satoshi_price_normalized": "0.00000001" }, - "block_time": 1726509680, + "block_time": 1727200803, "asset_info": { "divisible": true, "asset_longname": null, @@ -3169,19 +3250,19 @@ { "tx_index": 27, "dispense_index": 0, - "tx_hash": "54eee03a80a18a6e816f27408ce071f7c7fefac72abc8ade14e835ad5f1563ce", + "tx_hash": "2a07cfa93bced14f59b80e10872f5fe4a406622078c0b85295c5c4149820d102", "block_index": 140, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "destination": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "destination": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", "asset": "XCP", "dispense_quantity": 6000, - "dispenser_tx_hash": "e4fcdf91df3b0bbacb56d49f65bba5e59c88e92c829d7c8b3f251d5e20457f4e", + "dispenser_tx_hash": "3df6d90991175a0c2aabbe0dc87cacd5d92c90cb996ce5b1514492f2585c61fc", "btc_amount": 6000, "confirmed": true, "dispenser": { "tx_index": 26, "block_index": 141, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "give_quantity": 1, "escrow_quantity": 10000, "satoshirate": 1, @@ -3189,7 +3270,7 @@ "give_remaining": 0, "oracle_address": null, "last_status_tx_hash": null, - "origin": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "origin": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "dispense_count": 2, "last_status_tx_source": null, "close_block_index": null, @@ -3204,7 +3285,7 @@ "satoshirate_normalized": "0.00000001", "satoshi_price_normalized": "0.00000001" }, - "block_time": 1726509665, + "block_time": 1727200798, "asset_info": { "divisible": true, "asset_longname": null, @@ -3222,17 +3303,17 @@ "/v2/addresses/
/sweeps": { "result": [ { - "tx_index": 58, - "tx_hash": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", - "block_index": 192, - "source": "bcrt1q3ds7n4l97tumdkgcr3vyhe04zaxce8ujr8fmr2", - "destination": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "tx_index": 59, + "tx_hash": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", + "block_index": 193, + "source": "bcrt1q9cf2ed4wk37qye08wlppw39l7prxws7afa3krk", + "destination": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "flags": 1, "status": "valid", "memo": "sweep my assets", "fee_paid": 600000, "confirmed": true, - "block_time": 1726509908, + "block_time": 1727201012, "fee_paid_normalized": "0.00600000" } ], @@ -3242,15 +3323,15 @@ "/v2/addresses/
/issuances": { "result": [ { - "tx_index": 46, - "tx_hash": "3f80ba6dc66be4e5b604bbf8e1e2007161960069d871f7cb00b1d24f9f090491", + "tx_index": 47, + "tx_hash": "efd20bb15eb6a7ce22645a0fb33b1873d00dc0cdeb9533d37037e0fd6a63f512", "msg_index": 0, - "block_index": 159, + "block_index": 160, "asset": "A95428956980101314", "quantity": 100000000000, "divisible": true, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "transfer": false, "callable": false, "call_date": 0, @@ -3265,20 +3346,20 @@ "fair_minting": false, "asset_events": "creation", "confirmed": true, - "block_time": 1726509780, + "block_time": 1727200884, "quantity_normalized": "1000.00000000", "fee_paid_normalized": "0.00000000" }, { - "tx_index": 45, - "tx_hash": "99d6840da9077ad147d3cb8e3a527ebcb05445b5e72d0fa4f9429f91a2ed5f9f", + "tx_index": 46, + "tx_hash": "af9f8fab45dd2130f26f25edacaa4de3e37feaa202ad6a578e5a60d0aa935b46", "msg_index": 0, - "block_index": 158, + "block_index": 159, "asset": "TESTLOCKDESC", "quantity": 0, "divisible": true, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "transfer": false, "callable": false, "call_date": 0, @@ -3293,20 +3374,20 @@ "fair_minting": false, "asset_events": "lock_description reissuance", "confirmed": true, - "block_time": 1726509775, + "block_time": 1727200880, "quantity_normalized": "0.00000000", "fee_paid_normalized": "0.00000000" }, { - "tx_index": 44, - "tx_hash": "edf7eb0a60e46ad53360d769c00fbd350628dff893bb6f1869570c9fdcfc71af", + "tx_index": 45, + "tx_hash": "54776b690fc35e38368ab8ddb01f39437d6ad2177f025473e278802b9748e23c", "msg_index": 0, - "block_index": 157, + "block_index": 158, "asset": "A95428959745315388", "quantity": 0, "divisible": true, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "transfer": false, "callable": false, "call_date": 0, @@ -3321,20 +3402,20 @@ "fair_minting": false, "asset_events": "creation", "confirmed": true, - "block_time": 1726509760, + "block_time": 1727200875, "quantity_normalized": "0.00000000", "fee_paid_normalized": "0.00000000" }, { - "tx_index": 43, - "tx_hash": "23d681cb0c9d9310fd8150fcabf440c84cae363db926d0fcde70cbe12373f96f", + "tx_index": 44, + "tx_hash": "e12a079169fa7227aca6b168eafdf85cc67738b746b00fb0efa698d2c977b8f1", "msg_index": 0, - "block_index": 156, + "block_index": 157, "asset": "TESTLOCKDESC", "quantity": 10000000000, "divisible": true, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "transfer": false, "callable": false, "call_date": 0, @@ -3349,20 +3430,20 @@ "fair_minting": false, "asset_events": "creation", "confirmed": true, - "block_time": 1726509746, + "block_time": 1727200871, "quantity_normalized": "100.00000000", "fee_paid_normalized": "0.50000000" }, { - "tx_index": 34, - "tx_hash": "73ed3c167032f8d2648710f1bceb54e23fc9faf80658565c8e897ea0fa7bcf35", + "tx_index": 35, + "tx_hash": "ff6dbba06ee6d18f1d758e73eb167c0e1145b485690a071cb72aafa68a978aae", "msg_index": 0, - "block_index": 147, + "block_index": 148, "asset": "MYASSETA", "quantity": 100000000000, "divisible": true, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "transfer": false, "callable": false, "call_date": 0, @@ -3377,7 +3458,7 @@ "fair_minting": false, "asset_events": "creation", "confirmed": true, - "block_time": 1726509706, + "block_time": 1727200832, "quantity_normalized": "1000.00000000", "fee_paid_normalized": "0.50000000" } @@ -3391,42 +3472,42 @@ "asset": "TESTLOCKDESC", "asset_id": "70403005118950974", "asset_longname": null, - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "owner": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "owner": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false, "supply": 10000000000, "description": "Test Locking Description", - "first_issuance_block_index": 156, - "last_issuance_block_index": 158, + "first_issuance_block_index": 157, + "last_issuance_block_index": 159, "confirmed": true, - "first_issuance_block_time": 1726509746, - "last_issuance_block_time": 1726509775, + "first_issuance_block_time": 1727200871, + "last_issuance_block_time": 1727200880, "supply_normalized": "100.00000000" }, { "asset": "MYASSETA", "asset_id": "103804245870", "asset_longname": null, - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "owner": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "owner": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false, "supply": 100000000000, "description": "My super asset A", - "first_issuance_block_index": 147, - "last_issuance_block_index": 147, + "first_issuance_block_index": 148, + "last_issuance_block_index": 148, "confirmed": true, - "first_issuance_block_time": 1726509706, - "last_issuance_block_time": 1726509706, + "first_issuance_block_time": 1727200832, + "last_issuance_block_time": 1727200832, "supply_normalized": "1000.00000000" }, { "asset": "FAIRMINTD", "asset_id": "1046814266085", "asset_longname": "", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "owner": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "owner": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false, "supply": 40, @@ -3434,16 +3515,16 @@ "first_issuance_block_index": 135, "last_issuance_block_index": 136, "confirmed": true, - "first_issuance_block_time": 1726509644, - "last_issuance_block_time": 1726509648, + "first_issuance_block_time": 1727200777, + "last_issuance_block_time": 1727200781, "supply_normalized": "0.00000040" }, { "asset": "FAIRMINTC", "asset_id": "1046814266084", "asset_longname": "", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "owner": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "owner": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false, "supply": 19, @@ -3451,16 +3532,16 @@ "first_issuance_block_index": 131, "last_issuance_block_index": 134, "confirmed": true, - "first_issuance_block_time": 1726509617, - "last_issuance_block_time": 1726509639, + "first_issuance_block_time": 1727200760, + "last_issuance_block_time": 1727200773, "supply_normalized": "0.00000019" }, { "asset": "FAIRMINTB", "asset_id": "1046814266083", "asset_longname": "", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "owner": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "owner": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false, "supply": 0, @@ -3468,8 +3549,8 @@ "first_issuance_block_index": 126, "last_issuance_block_index": 130, "confirmed": true, - "first_issuance_block_time": 1726509596, - "last_issuance_block_time": 1726509613, + "first_issuance_block_time": 1727200740, + "last_issuance_block_time": 1727200756, "supply_normalized": "0.00000000" } ], @@ -3479,18 +3560,18 @@ "/v2/addresses/
/transactions": { "result": [ { - "tx_index": 57, - "tx_hash": "7b7048040c893c69892bd088ce48db79b96b9c1d7221b50d903064ff5a1ed232", - "block_index": 191, - "block_hash": "44555f5ae4cd1f61f3df9e675ad106b01fca685a76eff37b685758a1f234afb2", - "block_time": 1726509903, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "tx_index": 58, + "tx_hash": "132d67269995e3bc9e40d83bc0badefad56d85f0229eedfb0e2ccdf829d03d28", + "block_index": 192, + "block_hash": "7aa8cd7d46e84e234d53f8c14736afd98d1d5b8441f4f425fe8c6a52c3f33c87", + "block_time": 1727201008, + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "destination": null, "btc_amount": 0, "fee": 10000, "data": "0a000000000000000100000000000003e8000000000000000000000000000003e800150000000000000000", "supported": true, - "utxos_info": "7b7048040c893c69892bd088ce48db79b96b9c1d7221b50d903064ff5a1ed232:1", + "utxos_info": "132d67269995e3bc9e40d83bc0badefad56d85f0229eedfb0e2ccdf829d03d28:1", "confirmed": true, "unpacked_data": { "message_type": "order", @@ -3525,42 +3606,42 @@ "btc_amount_normalized": "0.00000000" }, { - "tx_index": 56, - "tx_hash": "18a9b72fc9e67470cff556297fa5f3dd95ea7d472693f42d597db7ad598c05ec", - "block_index": 190, - "block_hash": "214a1e1ed38b3e555167f5f21d78c8c3e487ea62d748cd8200a3b3e18f2b6017", - "block_time": 1726509899, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "tx_index": 57, + "tx_hash": "1d314894d90254c43598647c4ebca9b8f3f0d20a522eb8130d9955e95ea1c197", + "block_index": 191, + "block_hash": "6df0e71250aea0de3e29c053f2ca49cc02c029f911a25356f455303c447d0a63", + "block_time": 1727201003, + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "destination": null, "btc_amount": 0, "fee": 10000, - "data": "465e324d551a694d3f6ffc9c67b3db8817d470ba32257047ddee237d3d07c1a1e2", + "data": "4683919cf82dd5eb1e2e1f6d3f3f752d34d41636ed00ab8ff78369eb81475b8e57", "supported": true, - "utxos_info": "18a9b72fc9e67470cff556297fa5f3dd95ea7d472693f42d597db7ad598c05ec:1", + "utxos_info": "1d314894d90254c43598647c4ebca9b8f3f0d20a522eb8130d9955e95ea1c197:1", "confirmed": true, "unpacked_data": { "message_type": "cancel", "message_type_id": 70, "message_data": { - "offer_hash": "5e324d551a694d3f6ffc9c67b3db8817d470ba32257047ddee237d3d07c1a1e2", + "offer_hash": "83919cf82dd5eb1e2e1f6d3f3f752d34d41636ed00ab8ff78369eb81475b8e57", "status": "valid" } }, "btc_amount_normalized": "0.00000000" }, { - "tx_index": 55, - "tx_hash": "5e324d551a694d3f6ffc9c67b3db8817d470ba32257047ddee237d3d07c1a1e2", - "block_index": 189, - "block_hash": "4147554b4c1d081b097b1c6278509e7da43fbec27bdb1ad6cb8414e44ba4445b", - "block_time": 1726509894, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "tx_index": 56, + "tx_hash": "83919cf82dd5eb1e2e1f6d3f3f752d34d41636ed00ab8ff78369eb81475b8e57", + "block_index": 190, + "block_hash": "0878eceac6ded73fd8e873772ed9f93c488a46bdde659e59451e65eb9a3ee390", + "block_time": 1727200999, + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "destination": null, "btc_amount": 0, "fee": 10000, "data": "0a000000000000000100000000000003e8000000000000000000000000000003e800150000000000000000", "supported": true, - "utxos_info": "5e324d551a694d3f6ffc9c67b3db8817d470ba32257047ddee237d3d07c1a1e2:1", + "utxos_info": "83919cf82dd5eb1e2e1f6d3f3f752d34d41636ed00ab8ff78369eb81475b8e57:1", "confirmed": true, "unpacked_data": { "message_type": "order", @@ -3595,18 +3676,18 @@ "btc_amount_normalized": "0.00000000" }, { - "tx_index": 54, - "tx_hash": "e8fda956958ed7de0a98e42d8d28349b9c7b5e20da375c185c5830526df6594f", - "block_index": 188, - "block_hash": "6af6f23af835e0b3e7515a3d98e43a2ff75b7baf8d552fe27cbaf82dc8974780", - "block_time": 1726509890, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "tx_index": 55, + "tx_hash": "4cd813fae2558e89f2f9411f38daa7d4c10c94a267daa38155cf18fb4d9fd055", + "block_index": 189, + "block_hash": "73be93be2c91012204c8a1e8321475345c6c634627235302e1e7abe56fcb5755", + "block_time": 1727200995, + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "destination": null, "btc_amount": 0, "fee": 10000, - "data": "0300038057841d54055a90ed31a47e9821fd3118e6e78592808b61e9d7e5f2f9b6d9181c584be5f5174d8c9f9280ae2b0c1095bbdf23747f76b242be716817701b78400000060acdc5db9400000000000000290000000000000005200000000000000020000000000000001400", + "data": "0300038054c1ba334a1912f96353f110938927c645ff9064802e12acb6aeb47c0265e777c21744bff0466743dd806c45b04730370dc7e778ed200c19f22a08c064a9400000060acdc5db9400000000000000290000000000000005200000000000000020000000000000001400", "supported": true, - "utxos_info": "e8fda956958ed7de0a98e42d8d28349b9c7b5e20da375c185c5830526df6594f:0", + "utxos_info": "4cd813fae2558e89f2f9411f38daa7d4c10c94a267daa38155cf18fb4d9fd055:0", "confirmed": true, "unpacked_data": { "message_type": "mpma_send", @@ -3614,14 +3695,14 @@ "message_data": [ { "asset": "MYASSETA", - "destination": "bcrt1q3ds7n4l97tumdkgcr3vyhe04zaxce8ujr8fmr2", + "destination": "bcrt1q9cf2ed4wk37qye08wlppw39l7prxws7afa3krk", "quantity": 10, "memo": null, "memo_is_hex": null, "asset_info": { "asset_longname": null, "description": "My super asset A", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, @@ -3629,7 +3710,7 @@ }, { "asset": "XCP", - "destination": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", + "destination": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", "quantity": 10, "memo": null, "memo_is_hex": null, @@ -3647,18 +3728,18 @@ "btc_amount_normalized": "0.00000000" }, { - "tx_index": 49, - "tx_hash": "675f8dccad4bdcf4b54ce5aca7ddc442f642d63e518d64ad6068a264fb9894e1", - "block_index": 183, - "block_hash": "266c58f4906e9a1c4f81f972d7728ac8f370b75de6c542c61c838013ad48749d", - "block_time": 1726509858, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "tx_index": 50, + "tx_hash": "4844c5f31805a95e25af849d3e888b41d4cba82846300010c82895f4072e57f6", + "block_index": 184, + "block_hash": "61efaec54e3d3bbdff76ab9d2b2a4cf1517d3d890c37b20548b93484369b1201", + "block_time": 1727200964, + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "destination": null, "btc_amount": 0, "fee": 10000, "data": "0a000000000000000100000000000027100000000000000000000000000000271000150000000000000000", "supported": true, - "utxos_info": "675f8dccad4bdcf4b54ce5aca7ddc442f642d63e518d64ad6068a264fb9894e1:1", + "utxos_info": "4844c5f31805a95e25af849d3e888b41d4cba82846300010c82895f4072e57f6:1", "confirmed": true, "unpacked_data": { "message_type": "order", @@ -3693,27 +3774,27 @@ "btc_amount_normalized": "0.00000000" } ], - "next_cursor": 47, - "result_count": 23 + "next_cursor": 48, + "result_count": 24 }, "/v2/addresses/
/dividends": { "result": [ { - "tx_index": 40, - "tx_hash": "65e4ec441796883270c7bb0f18ca610e54b1ad0b3ae8a33e572bca985f65ee00", - "block_index": 153, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "tx_index": 41, + "tx_hash": "1b9303b3959067c0857fe1abb4fdd4b3684c7534c12691382004cc31a9afcca4", + "block_index": 154, + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "asset": "MYASSETA", "dividend_asset": "XCP", "quantity_per_unit": 100000000, "fee_paid": 40000, "status": "valid", "confirmed": true, - "block_time": 1726509732, + "block_time": 1727200857, "asset_info": { "asset_longname": null, "description": "My super asset A", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, @@ -3734,10 +3815,10 @@ "/v2/addresses/
/orders": { "result": [ { - "tx_index": 57, - "tx_hash": "7b7048040c893c69892bd088ce48db79b96b9c1d7221b50d903064ff5a1ed232", - "block_index": 191, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "tx_index": 48, + "tx_hash": "f90bb3520b4cd8e8f43ae4a416ea102f6a45a4cfd10b4620066271057abde926", + "block_index": 183, + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "give_asset": "XCP", "give_quantity": 1000, "give_remaining": 1000, @@ -3745,14 +3826,14 @@ "get_quantity": 1000, "get_remaining": 1000, "expiration": 21, - "expire_index": 212, + "expire_index": 182, "fee_required": 0, "fee_required_remaining": 0, "fee_provided": 10000, "fee_provided_remaining": 10000, - "status": "open", + "status": "expired", "confirmed": true, - "block_time": 1726509903, + "block_time": 1727200899, "give_asset_info": { "divisible": true, "asset_longname": null, @@ -3777,25 +3858,25 @@ "fee_provided_remaining_normalized": "0.00010000" }, { - "tx_index": 55, - "tx_hash": "5e324d551a694d3f6ffc9c67b3db8817d470ba32257047ddee237d3d07c1a1e2", - "block_index": 190, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "tx_index": 50, + "tx_hash": "4844c5f31805a95e25af849d3e888b41d4cba82846300010c82895f4072e57f6", + "block_index": 187, + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "give_asset": "XCP", - "give_quantity": 1000, - "give_remaining": 1000, + "give_quantity": 10000, + "give_remaining": 5000, "get_asset": "BTC", - "get_quantity": 1000, - "get_remaining": 1000, + "get_quantity": 10000, + "get_remaining": 5000, "expiration": 21, - "expire_index": 210, + "expire_index": 205, "fee_required": 0, "fee_required_remaining": 0, "fee_provided": 10000, "fee_provided_remaining": 10000, - "status": "cancelled", + "status": "open", "confirmed": true, - "block_time": 1726509899, + "block_time": 1727200986, "give_asset_info": { "divisible": true, "asset_longname": null, @@ -3810,35 +3891,35 @@ "locked": false, "issuer": null }, - "give_quantity_normalized": "0.00001000", - "get_quantity_normalized": "0.00001000", - "get_remaining_normalized": "0.00001000", - "give_remaining_normalized": "0.00001000", + "give_quantity_normalized": "0.00010000", + "get_quantity_normalized": "0.00010000", + "get_remaining_normalized": "0.00005000", + "give_remaining_normalized": "0.00005000", "fee_provided_normalized": "0.00010000", "fee_required_normalized": "0.00000000", "fee_required_remaining_normalized": "0.00000000", "fee_provided_remaining_normalized": "0.00010000" }, { - "tx_index": 49, - "tx_hash": "675f8dccad4bdcf4b54ce5aca7ddc442f642d63e518d64ad6068a264fb9894e1", - "block_index": 186, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "tx_index": 56, + "tx_hash": "83919cf82dd5eb1e2e1f6d3f3f752d34d41636ed00ab8ff78369eb81475b8e57", + "block_index": 191, + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "give_asset": "XCP", - "give_quantity": 10000, - "give_remaining": 5000, + "give_quantity": 1000, + "give_remaining": 1000, "get_asset": "BTC", - "get_quantity": 10000, - "get_remaining": 5000, + "get_quantity": 1000, + "get_remaining": 1000, "expiration": 21, - "expire_index": 204, + "expire_index": 211, "fee_required": 0, "fee_required_remaining": 0, "fee_provided": 10000, "fee_provided_remaining": 10000, - "status": "open", + "status": "cancelled", "confirmed": true, - "block_time": 1726509871, + "block_time": 1727201003, "give_asset_info": { "divisible": true, "asset_longname": null, @@ -3853,20 +3934,20 @@ "locked": false, "issuer": null }, - "give_quantity_normalized": "0.00010000", - "get_quantity_normalized": "0.00010000", - "get_remaining_normalized": "0.00005000", - "give_remaining_normalized": "0.00005000", + "give_quantity_normalized": "0.00001000", + "get_quantity_normalized": "0.00001000", + "get_remaining_normalized": "0.00001000", + "give_remaining_normalized": "0.00001000", "fee_provided_normalized": "0.00010000", "fee_required_normalized": "0.00000000", "fee_required_remaining_normalized": "0.00000000", "fee_provided_remaining_normalized": "0.00010000" }, { - "tx_index": 47, - "tx_hash": "e2263719273ed7cbb5496ae9daff21e24a2899e76feea1abbd4e91fa72766b5d", - "block_index": 182, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "tx_index": 58, + "tx_hash": "132d67269995e3bc9e40d83bc0badefad56d85f0229eedfb0e2ccdf829d03d28", + "block_index": 192, + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "give_asset": "XCP", "give_quantity": 1000, "give_remaining": 1000, @@ -3874,14 +3955,14 @@ "get_quantity": 1000, "get_remaining": 1000, "expiration": 21, - "expire_index": 181, + "expire_index": 213, "fee_required": 0, "fee_required_remaining": 0, "fee_provided": 10000, "fee_provided_remaining": 10000, - "status": "expired", + "status": "open", "confirmed": true, - "block_time": 1726509796, + "block_time": 1727201008, "give_asset_info": { "divisible": true, "asset_longname": null, @@ -3912,10 +3993,10 @@ "/v2/addresses/
/fairminters": { "result": [ { - "tx_hash": "d91c1e127adf6010f11ee5d04a4cd804ece0ff8087b450f307ae85b6f5f83137", + "tx_hash": "5f1bb112a42ace59fa09d6a6fc1916eec2a940d44682b160c97bbae14494b127", "tx_index": 22, "block_index": 135, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "asset": "FAIRMINTD", "asset_parent": "", "asset_longname": "", @@ -3940,13 +4021,13 @@ "commission": null, "paid_quantity": null, "confirmed": true, - "block_time": 1726509644 + "block_time": 1727200777 }, { - "tx_hash": "b8787fa4e26710112ef68030beafe12d09ec601552f130e5f37da63ba73eec12", + "tx_hash": "bf4d673a1117a0391adcac895de8ac4f234e093b9257df4ce473fe1e01bebf8b", "tx_index": 18, "block_index": 131, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "asset": "FAIRMINTC", "asset_parent": "", "asset_longname": "", @@ -3971,13 +4052,13 @@ "commission": null, "paid_quantity": null, "confirmed": true, - "block_time": 1726509617 + "block_time": 1727200760 }, { - "tx_hash": "536537382f35f3fc4bf3bcb4f6957228528eaa802dc49361f6339cd575de0a16", + "tx_hash": "ef8994a7c4750636583ff8d92fe09ac8c38d280813f2e2e923e07c9b9a3d9cda", "tx_index": 14, "block_index": 130, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "asset": "FAIRMINTB", "asset_parent": "", "asset_longname": "", @@ -4002,13 +4083,13 @@ "commission": null, "paid_quantity": null, "confirmed": true, - "block_time": 1726509613 + "block_time": 1727200756 }, { - "tx_hash": "7ae7bb5d540de02fd2b97d7234b6c87c925d0b6b3eac5a55e5ced650ce49eed1", + "tx_hash": "15f8f2368ab00936a53063e0f92508f82a1d6018e7495426e7dc81fc02f6d6f1", "tx_index": 10, "block_index": 125, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "asset": "FAIRMINTA", "asset_parent": "", "asset_longname": "", @@ -4033,7 +4114,7 @@ "commission": null, "paid_quantity": null, "confirmed": true, - "block_time": 1726509592 + "block_time": 1727200736 } ], "next_cursor": null, @@ -4042,127 +4123,127 @@ "/v2/addresses/
/fairmints": { "result": [ { - "tx_hash": "a899b1a361e0514262442a4a300d7571606a3462d50819092e649c490fbcb1e6", + "tx_hash": "bccbb42deef048209e07d9fb0f7340bb2b1e8f10c5e54f1cfa55accb8ac66283", "tx_index": 23, "block_index": 136, - "source": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", - "fairminter_tx_hash": "d91c1e127adf6010f11ee5d04a4cd804ece0ff8087b450f307ae85b6f5f83137", + "source": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", + "fairminter_tx_hash": "5f1bb112a42ace59fa09d6a6fc1916eec2a940d44682b160c97bbae14494b127", "asset": "FAIRMINTD", "earn_quantity": 40, "paid_quantity": 34, "commission": 0, "status": "valid", "confirmed": true, - "block_time": 1726509648, + "block_time": 1727200781, "asset_info": { "asset_longname": "", "description": "", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false } }, { - "tx_hash": "43b87a7de82b3deb9845abcc6d33d3d9b61c21d58377115c5edefeabc763c9ae", + "tx_hash": "49b1e07978faa8eaf8d5ade692f3a64f4e80eb92bf2703f18114959d4f1e8e1c", "tx_index": 21, "block_index": 134, - "source": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", - "fairminter_tx_hash": "b8787fa4e26710112ef68030beafe12d09ec601552f130e5f37da63ba73eec12", + "source": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", + "fairminter_tx_hash": "bf4d673a1117a0391adcac895de8ac4f234e093b9257df4ce473fe1e01bebf8b", "asset": "FAIRMINTC", "earn_quantity": 11, "paid_quantity": 3, "commission": 0, "status": "valid", "confirmed": true, - "block_time": 1726509639, + "block_time": 1727200773, "asset_info": { "asset_longname": "", "description": "", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false } }, { - "tx_hash": "1148cccc0b0535df22ffd1571672abb937ff57bcefafc7af5d797405c8ce0b7f", + "tx_hash": "0111704cc5929b8559a29cf124f00b77724015a4d2c7565f2f4aa8422983be79", "tx_index": 20, "block_index": 133, - "source": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", - "fairminter_tx_hash": "b8787fa4e26710112ef68030beafe12d09ec601552f130e5f37da63ba73eec12", + "source": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", + "fairminter_tx_hash": "bf4d673a1117a0391adcac895de8ac4f234e093b9257df4ce473fe1e01bebf8b", "asset": "FAIRMINTC", "earn_quantity": 3, "paid_quantity": 1, "commission": 0, "status": "valid", "confirmed": true, - "block_time": 1726509625, + "block_time": 1727200769, "asset_info": { "asset_longname": "", "description": "", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false } }, { - "tx_hash": "a82d30ebc85da3571118450b2e29b8230ff34da2ee40ff7df9452727b80de1be", + "tx_hash": "32e316d766bcea23d558846c6d3bbccad179be94d731a8c4097b6f01aba8bacf", "tx_index": 19, "block_index": 132, - "source": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", - "fairminter_tx_hash": "b8787fa4e26710112ef68030beafe12d09ec601552f130e5f37da63ba73eec12", + "source": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", + "fairminter_tx_hash": "bf4d673a1117a0391adcac895de8ac4f234e093b9257df4ce473fe1e01bebf8b", "asset": "FAIRMINTC", "earn_quantity": 5, "paid_quantity": 1, "commission": 0, "status": "valid", "confirmed": true, - "block_time": 1726509620, + "block_time": 1727200764, "asset_info": { "asset_longname": "", "description": "", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false } }, { - "tx_hash": "2fe7ff0c16953b4aff424432759c2e48819f92f9c4440a7047e3c86f9ca21161", + "tx_hash": "19c02328fa03dcccdd42190a3098cb6335c5a3376c729e79054deeb22a5fdec9", "tx_index": 15, "block_index": 127, - "source": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", - "fairminter_tx_hash": "536537382f35f3fc4bf3bcb4f6957228528eaa802dc49361f6339cd575de0a16", + "source": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", + "fairminter_tx_hash": "ef8994a7c4750636583ff8d92fe09ac8c38d280813f2e2e923e07c9b9a3d9cda", "asset": "FAIRMINTB", "earn_quantity": 100000000, "paid_quantity": 100000000, "commission": 0, "status": "valid", "confirmed": true, - "block_time": 1726509599, + "block_time": 1727200744, "asset_info": { "asset_longname": "", "description": "", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false } }, { - "tx_hash": "320ca07cfa5b9233bd809064f5facf416651c9b1f8a8d06a1ebc57a17a01436c", + "tx_hash": "5a391ff7c4ab9f62237b4734451c3765753c6424c9d0cded3325f895e75ff06f", "tx_index": 11, "block_index": 123, - "source": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", - "fairminter_tx_hash": "7ae7bb5d540de02fd2b97d7234b6c87c925d0b6b3eac5a55e5ced650ce49eed1", + "source": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", + "fairminter_tx_hash": "15f8f2368ab00936a53063e0f92508f82a1d6018e7495426e7dc81fc02f6d6f1", "asset": "FAIRMINTA", "earn_quantity": 500000000, "paid_quantity": 500000000, "commission": 0, "status": "valid", "confirmed": true, - "block_time": 1726509583, + "block_time": 1727200727, "asset_info": { "asset_longname": "", "description": "", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false } @@ -4174,22 +4255,22 @@ "/v2/addresses/
/fairmints/": { "result": [ { - "tx_hash": "320ca07cfa5b9233bd809064f5facf416651c9b1f8a8d06a1ebc57a17a01436c", + "tx_hash": "5a391ff7c4ab9f62237b4734451c3765753c6424c9d0cded3325f895e75ff06f", "tx_index": 11, "block_index": 123, - "source": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", - "fairminter_tx_hash": "7ae7bb5d540de02fd2b97d7234b6c87c925d0b6b3eac5a55e5ced650ce49eed1", + "source": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", + "fairminter_tx_hash": "15f8f2368ab00936a53063e0f92508f82a1d6018e7495426e7dc81fc02f6d6f1", "asset": "FAIRMINTA", "earn_quantity": 500000000, "paid_quantity": 500000000, "commission": 0, "status": "valid", "confirmed": true, - "block_time": 1726509583, + "block_time": 1727200727, "asset_info": { "asset_longname": "", "description": "", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false } @@ -4203,53 +4284,93 @@ }, "/v2/addresses/
/compose/broadcast": { "result": { - "rawtransaction": "02000000000101b649c4e7fa40f164c03cd4447f8be4c3bbeb5ab6b102b0040141900933aac6ab000000001600147ed28f21558ee8ecd78a339105e7756213901b6effffffff0200000000000000002b6a298a111578002e35f209d5778a06bfbacec513f992cc18166b895017e5651e3d9a9c8abe27c32de9bd6334b1052a010000001600147ed28f21558ee8ecd78a339105e7756213901b6e02000000000000", "params": { - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "timestamp": 4003903985, "value": 100.0, "fee_fraction": 0.05, "text": "\"Hello, world!\"" }, - "name": "broadcast" + "name": "broadcast", + "data": "434e5452505254591eeea6b9f14059000000000000004c4b400f2248656c6c6f2c20776f726c642122", + "btc_in": 5000000000, + "btc_out": 0, + "btc_change": 4999985819, + "btc_fee": 14181, + "rawtransaction": "02000000000101edd7a766460a4fb4601942d4c23deee15a574b25517f1f78becf8e042686490a000000001600147d93ff5e96d2aa8302b09d3661285dec7e9d27abffffffff0200000000000000002b6a29c2a92573851ed8784849a69650b37d6b7bd7e2630910d62786268c5dd5e1443bf6f7587d8caa10b0319bba052a010000001600147d93ff5e96d2aa8302b09d3661285dec7e9d27ab02000000000000", + "unpacked_data": { + "message_type": "unknown", + "message_type_id": 67, + "message_data": { + "error": "Unknown message type" + } + } } }, "/v2/addresses/
/compose/btcpay": { "result": { - "rawtransaction": "020000000001014fca2cccbcf61bd93889e6594b5f5676eb7ccec2f792a180f5f069af357b7616000000001600147ed28f21558ee8ecd78a339105e7756213901b6effffffff03b80b0000000000001600147ed28f21558ee8ecd78a339105e7756213901b6e00000000000000004b6a491bea0194c274239cce2dec48099450c2d32bb382ddfb3b81015ad5ec232bd55868ef141b018286e0bca6432cf028cefc16bae7d9d0f81d7cc89e7f1247e0f068e2c07fc713509850fad093052a010000001600147ed28f21558ee8ecd78a339105e7756213901b6e02000000000000", "params": { - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "order_match_id": "675f8dccad4bdcf4b54ce5aca7ddc442f642d63e518d64ad6068a264fb9894e1_d87f4afa605375256bce3dab7d014314a751d0d998cdc0842ac2dfc8c2fa2b21" - }, - "name": "btcpay" + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "order_match_id": "4844c5f31805a95e25af849d3e888b41d4cba82846300010c82895f4072e57f6_467f7e82754021f4a8a7e07800c1785d2619004c75fd9200884f7aa4def7caa7" + }, + "name": "btcpay", + "data": "434e5452505254590b4844c5f31805a95e25af849d3e888b41d4cba82846300010c82895f4072e57f6467f7e82754021f4a8a7e07800c1785d2619004c75fd9200884f7aa4def7caa7", + "btc_in": 5000000000, + "btc_out": 3000, + "btc_change": 4999978951, + "btc_fee": 18049, + "rawtransaction": "02000000000101daa1d5148d900a0ac23bfc9c2ad886b063173f479672ac0069f3eb44354e2de0000000001600147d93ff5e96d2aa8302b09d3661285dec7e9d27abffffffff03b80b0000000000001600147d93ff5e96d2aa8302b09d3661285dec7e9d27ab00000000000000004b6a49ca5c0c11f96bac48348bdc5206db0d57d0e076ed9b9bb648308f40d377a6c5702c979e70ce629af2991ed91ecfa81395dff83bc16dcbea8478623fe0b52bb16946f1a53fcb8e83d372c79f052a010000001600147d93ff5e96d2aa8302b09d3661285dec7e9d27ab02000000000000", + "unpacked_data": { + "message_type": "unknown", + "message_type_id": 67, + "message_data": { + "error": "Unknown message type" + } + } } }, "/v2/addresses/
/compose/burn": { "result": { - "rawtransaction": "020000000001016fe1241c086889236a07a814417e56dab847abd58d96050d2ef16d394acb7071000000001600147ed28f21558ee8ecd78a339105e7756213901b6effffffff02e8030000000000001976a914a11b66a67b3ff69671c8f82254099faf374b800e88acdab1052a010000001600147ed28f21558ee8ecd78a339105e7756213901b6e02000000000000", "params": { - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "quantity": 1000, "overburn": false }, - "name": "burn" + "name": "burn", + "data": null, + "btc_in": 5000000000, + "btc_out": 1000, + "btc_change": 4999985815, + "btc_fee": 13185, + "rawtransaction": "02000000000101565291541ec388be91a44832cfbab02ea751d08a08cf97d781936f4bfff0f237000000001600147d93ff5e96d2aa8302b09d3661285dec7e9d27abffffffff02e8030000000000001976a914a11b66a67b3ff69671c8f82254099faf374b800e88ac97ba052a010000001600147d93ff5e96d2aa8302b09d3661285dec7e9d27ab02000000000000" } }, "/v2/addresses/
/compose/cancel": { "result": { - "rawtransaction": "0200000000010175b4c418d03015dec817aad5fcb40a67eb01ab8c7f9b2434e0aeae3f2c7327e5000000001600147ed28f21558ee8ecd78a339105e7756213901b6effffffff0200000000000000002b6a296a415035fc0e352ad913bcc9368104122e748b6b983f39533d639f2642afa98318345f31fc54c82b4434b1052a010000001600147ed28f21558ee8ecd78a339105e7756213901b6e02000000000000", "params": { - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "offer_hash": "7b7048040c893c69892bd088ce48db79b96b9c1d7221b50d903064ff5a1ed232" - }, - "name": "cancel" + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "offer_hash": "132d67269995e3bc9e40d83bc0badefad56d85f0229eedfb0e2ccdf829d03d28" + }, + "name": "cancel", + "data": "434e54525052545946132d67269995e3bc9e40d83bc0badefad56d85f0229eedfb0e2ccdf829d03d28", + "btc_in": 5000000000, + "btc_out": 0, + "btc_change": 4999985819, + "btc_fee": 14181, + "rawtransaction": "020000000001011ed1a9f4a1f0aabef3ed6428baf2baf2eb44a220b9f5af834f289b067297ef47000000001600147d93ff5e96d2aa8302b09d3661285dec7e9d27abffffffff0200000000000000002b6a2911c364192ef0061bf68bc2e75fa7636b1958fab0f1abb83b5780f6e709e708a4bdeb4950c8e4a804c49bba052a010000001600147d93ff5e96d2aa8302b09d3661285dec7e9d27ab02000000000000", + "unpacked_data": { + "message_type": "unknown", + "message_type_id": 67, + "message_data": { + "error": "Unknown message type" + } + } } }, "/v2/addresses/
/compose/destroy": { "result": { - "rawtransaction": "02000000000101b6ee35e1324d5089f8d7d56494bef5bcffa8b7c4a7e486d0af9d225461966691000000001600147ed28f21558ee8ecd78a339105e7756213901b6effffffff020000000000000000226a207b5b354f4bb56aadb60d34352b229414425ea46fd9be1edf6ea98bd29a7472df9db3052a010000001600147ed28f21558ee8ecd78a339105e7756213901b6e02000000000000", "params": { - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "asset": "XCP", "quantity": 1000, "tag": "\"bugs!\"", @@ -4262,14 +4383,26 @@ }, "quantity_normalized": "0.00001000" }, - "name": "destroy" + "name": "destroy", + "data": "434e5452505254596e000000000000000100000000000003e822627567732122", + "btc_in": 5000000000, + "btc_out": 0, + "btc_change": 4999986346, + "btc_fee": 13654, + "rawtransaction": "020000000001013d8440143b369a8149275d291f4e89628e992c8f4141b6ac95d6e3e840a0667c000000001600147d93ff5e96d2aa8302b09d3661285dec7e9d27abffffffff020000000000000000226a20ad995647dc1f5cf1a38de32e7adf5ea0d3a71cf925f3d96ef7b859308eac7bcaaabc052a010000001600147d93ff5e96d2aa8302b09d3661285dec7e9d27ab02000000000000", + "unpacked_data": { + "message_type": "unknown", + "message_type_id": 67, + "message_data": { + "error": "Unknown message type" + } + } } }, "/v2/addresses/
/compose/dispenser": { "result": { - "rawtransaction": "020000000001013535818da2dc8007a59f5067eb9607b1ebdae92c65ceb00a7aa84795be59615102000000160014f8303fb1d45fb1391c65bcbef0035ec2924b52ccffffffff0200000000000000002c6a2abf7584d7e313e8d8dd088940a821ea5a8220cba87c96c52763c53a2847b0809129a37280769f24c74047404b0a2701000000160014f8303fb1d45fb1391c65bcbef0035ec2924b52cc02000000000000", "params": { - "source": "bcrt1qlqcrlvw5t7cnj8r9hjl0qq67c2fyk5kvfra90p", + "source": "bcrt1qfvucymcd7u04hpd7eafsmxwnashcmaqs54q79p", "asset": "XCP", "give_quantity": 1000, "escrow_quantity": 1000, @@ -4287,21 +4420,33 @@ "give_quantity_normalized": "0.00001000", "escrow_quantity_normalized": "0.00001000" }, - "name": "dispenser" + "name": "dispenser", + "data": "434e5452505254590c000000000000000100000000000003e800000000000003e8000000000000006400", + "btc_in": 4949970000, + "btc_out": 0, + "btc_change": 4949955760, + "btc_fee": 14240, + "rawtransaction": "02000000000101126cbd5704a2c2c714e745aaba2136b2a888ff2648e7d8de421d466e2e48216b020000001600144b39826f0df71f5b85becf530d99d3ec2f8df410ffffffff0200000000000000002c6a2a97cd56c5a87c919eb0d9baaa9d5db848d45f3e2013c18981e72cdbd66104494876c4423ce2eb9b853abab0540a27010000001600144b39826f0df71f5b85becf530d99d3ec2f8df41002000000000000", + "unpacked_data": { + "message_type": "unknown", + "message_type_id": 67, + "message_data": { + "error": "Unknown message type" + } + } } }, "/v2/addresses/
/compose/dividend": { "result": { - "rawtransaction": "02000000000101351dc0ca5529e3f5913ab348c8a5b0dab37120eb3a5362bf1edbd938a12afaa9000000001600147ed28f21558ee8ecd78a339105e7756213901b6effffffff020000000000000000236a214c12bd38bfe6d74349de8861a285ce801c0df1aea0c2341213c29c0488e3b51bf459b3052a010000001600147ed28f21558ee8ecd78a339105e7756213901b6e02000000000000", "params": { - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "quantity_per_unit": 1, "asset": "FAIRMINTA", "dividend_asset": "XCP", "asset_info": { "asset_longname": "", "description": "", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, @@ -4314,54 +4459,90 @@ }, "quantity_per_unit_normalized": "0.00000001" }, - "name": "dividend" + "name": "dividend", + "data": "434e545250525459320000000000000001000000f3bafe12e20000000000000001", + "btc_in": 5000000000, + "btc_out": 0, + "btc_change": 4999986287, + "btc_fee": 13713, + "rawtransaction": "020000000001015f834884818898e688e85d8e85fedabc893f47e29d472d532b435f94e2c90e12000000001600147d93ff5e96d2aa8302b09d3661285dec7e9d27abffffffff020000000000000000236a21721612543f59b4cea784e3ee62b4ccb72abb87cbe95875e4c52ebf21a036bb38ea6fbc052a010000001600147d93ff5e96d2aa8302b09d3661285dec7e9d27ab02000000000000", + "unpacked_data": { + "message_type": "unknown", + "message_type_id": 67, + "message_data": { + "error": "Unknown message type" + } + } } }, "/v2/addresses/
/compose/issuance": { "result": { - "rawtransaction": "020000000001018c2c4aec7dc8917d96c67ca0080178a22f670265ea42df5f51b4cf18143f8d33000000001600147ed28f21558ee8ecd78a339105e7756213901b6effffffff0322020000000000001600147ed28f21558ee8ecd78a339105e7756213901b6e0000000000000000236a2161361954172494529a3d38abfce581faf126d5f844d56d0f9ff51438a6ee05c1681ca8052a010000001600147ed28f21558ee8ecd78a339105e7756213901b6e02000000000000", "params": { - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "asset": "XCPTEST", "quantity": 1000, - "transfer_destination": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "transfer_destination": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "lock": false, "reset": false, "description": null, "quantity_normalized": "0.00001000" }, - "name": "issuance" + "name": "issuance", + "data": "434e5452505254591600000001a956fbdf00000000000003e8010000c04e554c4c", + "btc_in": 5000000000, + "btc_out": 546, + "btc_change": 4999983749, + "btc_fee": 15705, + "rawtransaction": "0200000000010132d6ed3c9fbce185a3f9b746123785033e6e2ec91849367a98d03b7888daf186000000001600147d93ff5e96d2aa8302b09d3661285dec7e9d27abffffffff0322020000000000001600147d93ff5e96d2aa8302b09d3661285dec7e9d27ab0000000000000000236a211ec53f8ee749730ee8c3ff433c6a3665ee24516b8e066b0cc22cac68dccc73303185b2052a010000001600147d93ff5e96d2aa8302b09d3661285dec7e9d27ab02000000000000", + "unpacked_data": { + "message_type": "unknown", + "message_type_id": 67, + "message_data": { + "error": "Unknown message type" + } + } } }, "/v2/addresses/
/compose/mpma": { "result": { - "rawtransaction": "02000000000104408d3617b81bce0c32909fc2def0c597a56244508180e231a57cd368ef04aca6000000001600147ed28f21558ee8ecd78a339105e7756213901b6effffffff17bda3cda72e5b5f1532ba6749ecd58427332ebcf282c79cd16c8375a9e4a215000000001600147ed28f21558ee8ecd78a339105e7756213901b6effffffffc51fabedc80ce42d8f455f8cc69c88e82938707ddda14f7a68f33094383c23f4000000001600147ed28f21558ee8ecd78a339105e7756213901b6effffffff6da23b7041e4c4b6b8d7cae88d1b4fbdad16503cf3dcfe3f6c85e0ae150c17a7000000001600147ed28f21558ee8ecd78a339105e7756213901b6effffffff03e80300000000000069512102c9169a3c7845490a815acdd720f2c894bb916b00b6987b846b31895a38e2814d21027759538aaa3307bc8d576cc9ae8b5cfeb4f89eecb554cbecc42baa629bc084ea21038cf659b1eef29fa8241c63dfa9eab3e1ef4f14fd7d99ee18746a9a938707616953aee80300000000000069512102c6169a3c7845490a8179babad2e07e3ab844e5e8565a6a3c4d146e2f5af111ab21036c379bdd2e2e53b9d7c789f80af5c4df49c9840a52d15963e663cf0ef7afa8d521038cf659b1eef29fa8241c63dfa9eab3e1ef4f14fd7d99ee18746a9a938707616953ae47d016a8040000001600147ed28f21558ee8ecd78a339105e7756213901b6e02000002000002000002000000000000", "params": { - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "asset_dest_quant_list": [ [ "XCP", - "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", 1 ], [ "MYASSETA", - "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", + "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", 2 ] ], "memo": "\"Hello, world!\"", "memo_is_hex": false }, - "name": "mpma" + "name": "mpma", + "data": "434e545250525459030002807d93ff5e96d2aa8302b09d3661285dec7e9d27ab8054c1ba334a1912f96353f110938927c645ff90648f2248656c6c6f2c20776f726c6421228000000c159b8bb72000000000000000480000000000000008000000000000000200", + "btc_in": 20000000000, + "btc_out": 2000, + "btc_change": 19999945492, + "btc_fee": 52508, + "rawtransaction": "02000000000104e577e067bb983c8bf37ef7aca10b5ce04fe1cc8e1610106715e9b896aa5fe223000000001600147d93ff5e96d2aa8302b09d3661285dec7e9d27abfffffffff01d1425b1446af40a30cf7f614ef968b0f0e2898bde55b78495a33052cde893000000001600147d93ff5e96d2aa8302b09d3661285dec7e9d27abffffffff2abb23c81d9a008762665571fdf369475915efb7b391c56031b179c53a86251d000000001600147d93ff5e96d2aa8302b09d3661285dec7e9d27abffffffffff380c0c8c7dc0f7039e035159c41148c7f6638ee75536c0630b7204e3fd8958000000001600147d93ff5e96d2aa8302b09d3661285dec7e9d27abffffffff03e803000000000000695121036e548f8fc9c509ea3d29031b77b76fdabb76c88e850afb489293efb339ca2c5c2102f0b12cd792f3cdf41c46e2f41ad7b6edfd56fc16b1963d618469e8d8a78709652103e9ae92eabb90ca74fe993bac25a34afb53dbfd9ee15d1434f46704cbef38ec9753aee8030000000000006951210261548f8fc9c509ea3d0a747685a69804c7601a240a1dd05e13d2c7eed5b4b1192102d71ae4835349febe055413974926a67e747138534e0659eea6218db4cbe825412103e9ae92eabb90ca74fe993bac25a34afb53dbfd9ee15d1434f46704cbef38ec9753ae14f316a8040000001600147d93ff5e96d2aa8302b09d3661285dec7e9d27ab02000002000002000002000000000000", + "unpacked_data": { + "message_type": "unknown", + "message_type_id": 67, + "message_data": { + "error": "Unknown message type" + } + } } }, "/v2/addresses/
/compose/order": { "result": { - "rawtransaction": "02000000000101c07bf8106610b1b623cb978c0aba88af7803750f54a05c0005f982825d88d475000000001600147ed28f21558ee8ecd78a339105e7756213901b6effffffff020000000000000000356a334143661d91daa75e926ff6d79759f0577584c1a37635e27e463babf031a6b24bdcd4d41d8aebadcc6eb12b58fa950c86172ab287ae052a010000001600147ed28f21558ee8ecd78a339105e7756213901b6e02000000000000", "params": { - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "give_asset": "XCP", "give_quantity": 1000, "get_asset": "FAIRMINTA", @@ -4378,7 +4559,7 @@ "get_asset_info": { "asset_longname": "", "description": "", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, @@ -4386,15 +4567,27 @@ "get_quantity_normalized": "0.00001000", "fee_required_normalized": "0.00000100" }, - "name": "order" + "name": "order", + "data": "434e5452505254590a000000000000000100000000000003e8000000f3bafe12e200000000000003e800640000000000000064", + "btc_in": 5000000000, + "btc_out": 0, + "btc_change": 4999985233, + "btc_fee": 14767, + "rawtransaction": "02000000000101d3815d3bc637ba5c3310057f1f73518e1cd052e2575305f5f9961d481af47d0b000000001600147d93ff5e96d2aa8302b09d3661285dec7e9d27abffffffff020000000000000000356a3382bca3ffdc73d3e01f1213c9355aef042d09d5b9355ef2cbcffd1cf799a68dd80bb0d4d32952c4c1754009237ece324f87b11951b8052a010000001600147d93ff5e96d2aa8302b09d3661285dec7e9d27ab02000000000000", + "unpacked_data": { + "message_type": "unknown", + "message_type_id": 67, + "message_data": { + "error": "Unknown message type" + } + } } }, "/v2/addresses/
/compose/send": { "result": { - "rawtransaction": "02000000000101d1ed4e6a2b26727a08b51181f172b8a5c8dd24188e57f543702dac89c942bd12000000001600147ed28f21558ee8ecd78a339105e7756213901b6effffffff020000000000000000306a2eb930bb587d4fd62cbc52cc09eacb8b0dfbb418f08631a6360d98cf5ce3120e46955c4c3d48c01ca4c9bbe19f3103deaf052a010000001600147ed28f21558ee8ecd78a339105e7756213901b6e02000000000000", "params": { - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "destination": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "destination": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", "asset": "XCP", "quantity": 1000, "memo": null, @@ -4409,37 +4602,73 @@ }, "quantity_normalized": "0.00001000" }, - "name": "send" + "name": "send", + "data": "434e54525052545902000000000000000100000000000003e88054c1ba334a1912f96353f110938927c645ff9064", + "btc_in": 5000000000, + "btc_out": 0, + "btc_change": 4999985526, + "btc_fee": 14474, + "rawtransaction": "020000000001010145d93fcbbca925969a36cbf8dc81b3dcce295cb1cc87c24efdb84e991257e9000000001600147d93ff5e96d2aa8302b09d3661285dec7e9d27abffffffff020000000000000000306a2e3180763905ed77bd5549668783c0fde06c8ecc36077686c0e0a3cc114e7afa54cfc134a5bbfe421445475ad3cdb776b9052a010000001600147d93ff5e96d2aa8302b09d3661285dec7e9d27ab02000000000000", + "unpacked_data": { + "message_type": "unknown", + "message_type_id": 67, + "message_data": { + "error": "Unknown message type" + } + } } }, "/v2/addresses/
/compose/sweep": { "result": { - "rawtransaction": "02000000000101b562c0730715780ae991157f93d3a949c1cfaba285b7f621eea8d3dda79da50c000000001600147ed28f21558ee8ecd78a339105e7756213901b6effffffff020000000000000000236a218a5634f40393d59bc3c1a4c12be1661951369bb953fbb8da7bd34ffdc310d0a1fe59b3052a010000001600147ed28f21558ee8ecd78a339105e7756213901b6e02000000000000", "params": { - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "destination": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "destination": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", "flags": 7, "memo": "FFFF" }, - "name": "sweep" + "name": "sweep", + "data": "434e545250525459048054c1ba334a1912f96353f110938927c645ff906407ffff", + "btc_in": 5000000000, + "btc_out": 0, + "btc_change": 4999986287, + "btc_fee": 13713, + "rawtransaction": "020000000001019a797a06c4f5d3094b75b249c4ee63d25c26847734c97b81130d1fed7a4dab60000000001600147d93ff5e96d2aa8302b09d3661285dec7e9d27abffffffff020000000000000000236a212049e1fbe71fc2711c0c75cc689b011397ff1e489e3421417cee9dd941136816686fbc052a010000001600147d93ff5e96d2aa8302b09d3661285dec7e9d27ab02000000000000", + "unpacked_data": { + "message_type": "unknown", + "message_type_id": 67, + "message_data": { + "error": "Unknown message type" + } + } } }, "/v2/addresses/
/compose/dispense": { "result": { - "rawtransaction": "020000000001014d628a3e65cc9537aa62c9b42db1b2df0e61d973978cac54482a0953d6fe49d70200000016001457841d54055a90ed31a47e9821fd3118e6e78592ffffffff03e803000000000000160014ae2b0c1095bbdf23747f76b242be716817701b7800000000000000000c6a0ac17afa5cc1158f0972f85fb808270100000016001457841d54055a90ed31a47e9821fd3118e6e7859202000000000000", "params": { - "source": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", - "destination": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "source": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", + "destination": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "quantity": 1000 }, - "name": "dispense" + "name": "dispense", + "data": "434e5452505254590d00", + "btc_in": 4949868000, + "btc_out": 1000, + "btc_change": 4949852643, + "btc_fee": 14357, + "rawtransaction": "02000000000101cb26d0b47d6796bbba2cdbf172c9fcad814432c0faa64e51325e97136b918ac70200000016001454c1ba334a1912f96353f110938927c645ff9064ffffffff03e8030000000000001600146c45b04730370dc7e778ed200c19f22a08c064a900000000000000000c6a0abd14fceefaf1824e03ade3c108270100000016001454c1ba334a1912f96353f110938927c645ff906402000000000000", + "unpacked_data": { + "message_type": "unknown", + "message_type_id": 67, + "message_data": { + "error": "Unknown message type" + } + } } }, "/v2/addresses/
/compose/fairminter": { "result": { - "rawtransaction": "02000000000101fbdb9417de62f10b9120f7e3e29518b3e1b564d76efe4eeb9f5fb40810cb2695000000001600147ed28f21558ee8ecd78a339105e7756213901b6effffffff020000000000000000316a2f1a876d6cad75159c126a8d28d8dba1389dc8a65bf6ccf9207d08f02f106901dfa932f2675b34d4dd1b20eaa13bd61e99af052a010000001600147ed28f21558ee8ecd78a339105e7756213901b6e02000000000000", "params": { - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "asset": "MYASSET", "asset_parent": "", "price": 10, @@ -4458,34 +4687,58 @@ "divisible": true, "description": "" }, - "name": "fairminter" + "name": "fairminter", + "data": "434e5452505254595a4d5941535345547c7c31307c317c307c307c307c307c307c307c307c307c307c307c307c317c", + "btc_in": 5000000000, + "btc_out": 0, + "btc_change": 4999985467, + "btc_fee": 14533, + "rawtransaction": "02000000000101dff5d6b9963d58ce93eda5b9e0dc3325edb92d172aee9b60ad4009740563e7f6000000001600147d93ff5e96d2aa8302b09d3661285dec7e9d27abffffffff020000000000000000316a2f35fd92ae806a71d5d594a5fa28384c40c437d510b8d21b9ec688462821e8b3f6a2cd07f9420a363cff7b2921eb27e73bb9052a010000001600147d93ff5e96d2aa8302b09d3661285dec7e9d27ab02000000000000", + "unpacked_data": { + "message_type": "unknown", + "message_type_id": 67, + "message_data": { + "error": "Unknown message type" + } + } } }, "/v2/addresses/
/compose/fairmint": { "result": { - "rawtransaction": "02000000000101ebc7922edff8bf7972bfbfc17ef1d69520687cb4a252ed0c25bc335b176b630a000000001600147ed28f21558ee8ecd78a339105e7756213901b6effffffff020000000000000000166a14e8c879a220caa9210c9d86643046c47edc54aa60d4b6052a010000001600147ed28f21558ee8ecd78a339105e7756213901b6e02000000000000", "params": { - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "asset": "FAIRMINTC", "quantity": 1, "asset_info": { "asset_longname": "", "description": "", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, "quantity_normalized": "0.00000001" }, - "name": "fairmint" + "name": "fairmint", + "data": "434e5452505254595b464149524d494e54437c31", + "btc_in": 5000000000, + "btc_out": 0, + "btc_change": 4999987049, + "btc_fee": 12951, + "rawtransaction": "02000000000101a5732f28204721cb6308ac13cab61ceeb71efd46aea6f9b66a9441ed07a1b172000000001600147d93ff5e96d2aa8302b09d3661285dec7e9d27abffffffff020000000000000000166a142190e1f1b6f307755204d25dcf7c1048d1c78cb069bf052a010000001600147d93ff5e96d2aa8302b09d3661285dec7e9d27ab02000000000000", + "unpacked_data": { + "message_type": "unknown", + "message_type_id": 67, + "message_data": { + "error": "Unknown message type" + } + } } }, "/v2/addresses/
/compose/attach": { "result": { - "rawtransaction": "02000000000106fe554038ba01c7f82d1ded9634c1ef501e0c316f39b2f6af7d80141bcaca2bd0000000001600147ed28f21558ee8ecd78a339105e7756213901b6effffffffdc2ead4b27cfb424aa6e8cc185a5e4a96185af16e10e61164e0f07e4c2b5a317000000001600147ed28f21558ee8ecd78a339105e7756213901b6effffffffc0f4470bf4218838b2ade8b3782b44678183b2e5fe80c83c5b14ec65bf014a89000000001600147ed28f21558ee8ecd78a339105e7756213901b6effffffffcdf72a8e033e6ffc183a3728a3842c94648a627ae5438f47b8c8f13022d6d1dd000000001600147ed28f21558ee8ecd78a339105e7756213901b6efffffffffecec22cad05d1f474cdd73f8e9ffa05eb64cf664aebe3b08aaf0bb644770738000000001600147ed28f21558ee8ecd78a339105e7756213901b6effffffffb9441e2420b5197ae1b9eddcc48ff658d0a1da2e5a5cd889e1fb8c60ea4609e3000000001600147ed28f21558ee8ecd78a339105e7756213901b6effffffff04e803000000000000695121029f655253bae89cf966929abd462a943a4654655b5b0150b83790569507fe3ae3210295b3c028a258fedebd0f039dac617ac2b59e7194e21ac9a98db0f47cd8943e1c21038cf659b1eef29fa8241c63dfa9eab3e1ef4f14fd7d99ee18746a9a938707616953aee803000000000000695121029f655253bae89cf966c2c8bd0c67962840003b055e0406bc3cc5008756f22bdc2103c5fc8e2de81af98aea4800ccfb2233cdf7d466d9b64d93e38eb4a5798d9d6bb421038cf659b1eef29fa8241c63dfa9eab3e1ef4f14fd7d99ee18746a9a938707616953aee80300000000000069512102b5655253bae89cf96692caed066494372e7a53405d5652bc04fd63e262ca4fb32103a7cbb74fd12c9bb3897964fbc91002afc2e402e0867ea3d5bad2c34cecac0ec421038cf659b1eef29fa8241c63dfa9eab3e1ef4f14fd7d99ee18746a9a938707616953aec13922fc060000001600147ed28f21558ee8ecd78a339105e7756213901b6e02000002000002000002000002000002000000000000", "params": { - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "destination": "7b7048040c893c69892bd088ce48db79b96b9c1d7221b50d903064ff5a1ed232:1", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "destination": "4cd813fae2558e89f2f9411f38daa7d4c10c94a267daa38155cf18fb4d9fd055:3", "asset": "XCP", "quantity": 1000, "asset_info": { @@ -4497,15 +4750,27 @@ }, "quantity_normalized": "0.00001000" }, - "name": "utxo" + "name": "utxo", + "data": "434e54525052545964626372743171306b666c3768356b36323467787134736e356d787a327a6161336c6636666174666e6b6668737c346364383133666165323535386538396632663934313166333864616137643463313063393461323637646161333831353563663138666234643966643035353a337c5843507c31303030", + "btc_in": 30000000000, + "btc_out": 3000, + "btc_change": 29999918531, + "btc_fee": 78469, + "rawtransaction": "020000000001067d8cb2e922d3c889515df1beafb9deef06736db65888a0178acfa3a8c88239bd000000001600147d93ff5e96d2aa8302b09d3661285dec7e9d27abffffffff002eeb08adc6485da52527394aaea37ad7fa3d10b7f041474c9554c18abb3f74000000001600147d93ff5e96d2aa8302b09d3661285dec7e9d27abffffffff6ff9202edc132df8446768ff0abeb2cc9c540e6d9359512adc49529f443f97b8000000001600147d93ff5e96d2aa8302b09d3661285dec7e9d27abffffffff12cab7d7ed02ff3b76c2d7bf3ee826f2ff89dedabd5880fd324bf09a00f176cb000000001600147d93ff5e96d2aa8302b09d3661285dec7e9d27abffffffff3adcf4e23bc1c205be1c896dec2bbd570b4a1f534b110642a390586df3e73b56000000001600147d93ff5e96d2aa8302b09d3661285dec7e9d27abffffffff84df0624b3eb9db1f4b76d9d8659e08222bd29c4063bd472529a3b20c18f415f000000001600147d93ff5e96d2aa8302b09d3661285dec7e9d27abffffffff04e803000000000000695121033020883d166ee0dc26744f859a957a416709c30b09f1087802d505fe497cf0e22102679d842f89fc3a82a87c17982a72f639385fa2f29a08b6a03bd5fc9c4d08b98e2103e9ae92eabb90ca74fe993bac25a34afb53dbfd9ee15d1434f46704cbef38ec9753aee803000000000000695121033020883d166ee0dc267148d4ddd473556f5bc35558a00922058102a1556ca51a210323978521c0b66bc1fd7c16c27b20f1397f01fdacc903a3ed37d0fa901802b93f2103e9ae92eabb90ca74fe993bac25a34afb53dbfd9ee15d1434f46704cbef38ec9753aee803000000000000695121021a20883d166ee0dc26741dd3dddb784c0f21f51b0fa90d2334e73199310dc446210314f3b142f18608f8c91d24f44c4490584c39cc99fc60c5dc0fb698a47c3bdfaa2103e9ae92eabb90ca74fe993bac25a34afb53dbfd9ee15d1434f46704cbef38ec9753aec36d22fc060000001600147d93ff5e96d2aa8302b09d3661285dec7e9d27ab02000002000002000002000002000002000000000000", + "unpacked_data": { + "message_type": "unknown", + "message_type_id": 67, + "message_data": { + "error": "Unknown message type" + } + } } }, "/v2/utxos//compose/detach": { "result": { - "rawtransaction": "02000000000101a7f3d5ff6cad0216060a55b7ad0a1b032687857cd0e9603223a183e5cd328ff4010000001600141811a7fe8c4732c201737549ba5dabb9e5ba8b76ffffffff04e80300000000000069512102d9e4e3e9266c080644ed9f64fec2af0f526747fd0c4bac4dddd10d11f9417b2f2102eb2503919a6e96ca62d48ebfdc837a09e9ba0e366a64d1c0e6b2e3405da3f1b2210305d4947b8fd51fc782076336b7006bffdd6e0ea462eb4be146901788a6ffdd1153aee80300000000000069512102d9e4e3e9266c080644e89d66a5c2fa59046511a90342fc008d814c57fe002ec22102bf2754919e6497c138d3cfeadbc72a41ffbc1920383cd086e0e4b00013feb4b9210305d4947b8fd51fc782076336b7006bffdd6e0ea462eb4be146901788a6ffdd1153aee80300000000000069512102f3e4e3e9266c080644f38a24a2c0f641694072b40548fd4cefe23e23cf711ea82102d24133a6f956a3f255e6b88fefb2183988db6a545d51e4f08782d5716b93c378210305d4947b8fd51fc782076336b7006bffdd6e0ea462eb4be146901788a6ffdd1153aee8980827010000001600141811a7fe8c4732c201737549ba5dabb9e5ba8b7602000000000000", "params": { - "source": "f48f32cde583a1233260e9d07c858726031b0aadb7550a061602ad6cffd5f3a7:1", - "destination": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "ca11a87b6b09143626cafffbc32be68d26d43df5facbb48aa919ce857c1aa739:1", + "destination": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "asset": "XCP", "quantity": 1000, "asset_info": { @@ -4517,7 +4782,20 @@ }, "quantity_normalized": "0.00001000" }, - "name": "utxo" + "name": "utxo", + "data": "434e54525052545964636131316138376236623039313433363236636166666662633332626536386432366434336466356661636262343861613931396365383537633161613733393a317c626372743171306b666c3768356b36323467787134736e356d787a327a6161336c6636666174666e6b6668737c5843507c31303030", + "btc_in": 4949874900, + "btc_out": 3000, + "btc_change": 4949846467, + "btc_fee": 25433, + "rawtransaction": "0200000000010139a71a7c85ce19a98ab4cbfaf53dd4268de62bc3fbffca263614096b7ba811ca010000001600145b88e6da64ebeaa0be3554ef3959f4a53df33890ffffffff04e8030000000000006951210210d50c8daebda6b010603530418bc9a76f7f1e8360bc4e7c9fc05b65dec99e562103a06e744bbf2979e65a932731a4d6b2d4a2d82026289fe192ae066fadb0051a2a2102fdf9332096c9238549fc008b2487598d632d40766dc05d6b9ae7c8658e75ba9a53aee8030000000000006951210310d50c8daebda6b010673369458dcbae397c1fd269bf4e34ce951b278cd9c83a2103ad6e7a1fe42e70b55e9f247be386f589f3d36d3a7b86e291a95268faef5557552102fdf9332096c9238549fc008b2487598d632d40766dc05d6b9ae7c8658e75ba9a53aee803000000000000695121033ad50c8daebda6b01062383a16d2dbe3005e789d61b54f78acf66953bda8f8072103c60816288c1b1b836cab430392b286e7c6be154049fc83f09a3e0ecc893423e52102fdf9332096c9238549fc008b2487598d632d40766dc05d6b9ae7c8658e75ba9a53aec3a90827010000001600145b88e6da64ebeaa0be3554ef3959f4a53df3389002000000000000", + "unpacked_data": { + "message_type": "unknown", + "message_type_id": 67, + "message_data": { + "error": "Unknown message type" + } + } } }, "/v2/assets": { @@ -4526,59 +4804,59 @@ "asset": "TESTLOCKDESC", "asset_id": "70403005118950974", "asset_longname": null, - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "owner": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "owner": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false, "supply": 10000000000, "description": "Test Locking Description", - "first_issuance_block_index": 156, - "last_issuance_block_index": 158, + "first_issuance_block_index": 157, + "last_issuance_block_index": 159, "confirmed": true, - "first_issuance_block_time": 1726509746, - "last_issuance_block_time": 1726509775, + "first_issuance_block_time": 1727200871, + "last_issuance_block_time": 1727200880, "supply_normalized": "100.00000000" }, { "asset": "MYASSETB", "asset_id": "103804245871", "asset_longname": null, - "issuer": "bcrt1qrqg60l5vguevyqtnw4ym5hdth8jm4zmk0fxn99", - "owner": "bcrt1qrqg60l5vguevyqtnw4ym5hdth8jm4zmk0fxn99", + "issuer": "bcrt1qtwywdknya042p0342nhnjk05557lxwysfw6vuj", + "owner": "bcrt1qtwywdknya042p0342nhnjk05557lxwysfw6vuj", "divisible": true, "locked": false, "supply": 100000000000, "description": "My super asset B", - "first_issuance_block_index": 155, - "last_issuance_block_index": 155, + "first_issuance_block_index": 156, + "last_issuance_block_index": 156, "confirmed": true, - "first_issuance_block_time": 1726509741, - "last_issuance_block_time": 1726509741, + "first_issuance_block_time": 1727200867, + "last_issuance_block_time": 1727200867, "supply_normalized": "1000.00000000" }, { "asset": "MYASSETA", "asset_id": "103804245870", "asset_longname": null, - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "owner": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "owner": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false, "supply": 100000000000, "description": "My super asset A", - "first_issuance_block_index": 147, - "last_issuance_block_index": 147, + "first_issuance_block_index": 148, + "last_issuance_block_index": 148, "confirmed": true, - "first_issuance_block_time": 1726509706, - "last_issuance_block_time": 1726509706, + "first_issuance_block_time": 1727200832, + "last_issuance_block_time": 1727200832, "supply_normalized": "1000.00000000" }, { "asset": "FAIRMINTD", "asset_id": "1046814266085", "asset_longname": "", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "owner": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "owner": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false, "supply": 40, @@ -4586,16 +4864,16 @@ "first_issuance_block_index": 135, "last_issuance_block_index": 136, "confirmed": true, - "first_issuance_block_time": 1726509644, - "last_issuance_block_time": 1726509648, + "first_issuance_block_time": 1727200777, + "last_issuance_block_time": 1727200781, "supply_normalized": "0.00000040" }, { "asset": "FAIRMINTC", "asset_id": "1046814266084", "asset_longname": "", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "owner": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "owner": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false, "supply": 19, @@ -4603,8 +4881,8 @@ "first_issuance_block_index": 131, "last_issuance_block_index": 134, "confirmed": true, - "first_issuance_block_time": 1726509617, - "last_issuance_block_time": 1726509639, + "first_issuance_block_time": 1727200760, + "last_issuance_block_time": 1727200773, "supply_normalized": "0.00000019" } ], @@ -4616,8 +4894,8 @@ "asset": "FAIRMINTA", "asset_id": "1046814266082", "asset_longname": "", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "owner": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "owner": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false, "supply": 10000000000, @@ -4625,15 +4903,15 @@ "first_issuance_block_index": 122, "last_issuance_block_index": 125, "confirmed": true, - "first_issuance_block_time": 1726509578, - "last_issuance_block_time": 1726509592, + "first_issuance_block_time": 1727200723, + "last_issuance_block_time": 1727200736, "supply_normalized": "100.00000000" } }, "/v2/assets//balances": { "result": [ { - "address": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "address": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "utxo": null, "utxo_address": null, "asset": "FAIRMINTA", @@ -4641,14 +4919,14 @@ "asset_info": { "asset_longname": "", "description": "", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, "quantity_normalized": "95.00000000" }, { - "address": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", + "address": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", "utxo": null, "utxo_address": null, "asset": "FAIRMINTA", @@ -4656,7 +4934,7 @@ "asset_info": { "asset_longname": "", "description": "", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, @@ -4668,9 +4946,9 @@ }, "/v2/assets//balances/
": { "result": { - "address": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "address": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "asset": "XCP", - "quantity": 82699937176, + "quantity": 82699937196, "utxo": null, "utxo_address": null, "asset_info": { @@ -4686,10 +4964,10 @@ "/v2/assets//orders": { "result": [ { - "tx_index": 57, - "tx_hash": "7b7048040c893c69892bd088ce48db79b96b9c1d7221b50d903064ff5a1ed232", - "block_index": 191, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "tx_index": 48, + "tx_hash": "f90bb3520b4cd8e8f43ae4a416ea102f6a45a4cfd10b4620066271057abde926", + "block_index": 183, + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "give_asset": "XCP", "give_quantity": 1000, "give_remaining": 1000, @@ -4697,14 +4975,14 @@ "get_quantity": 1000, "get_remaining": 1000, "expiration": 21, - "expire_index": 212, + "expire_index": 182, "fee_required": 0, "fee_required_remaining": 0, "fee_provided": 10000, "fee_provided_remaining": 10000, - "status": "open", + "status": "expired", "confirmed": true, - "block_time": 1726509903, + "block_time": 1727200899, "give_asset_info": { "divisible": true, "asset_longname": null, @@ -4729,10 +5007,53 @@ "fee_provided_remaining_normalized": "0.00010000" }, { - "tx_index": 55, - "tx_hash": "5e324d551a694d3f6ffc9c67b3db8817d470ba32257047ddee237d3d07c1a1e2", - "block_index": 190, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "tx_index": 50, + "tx_hash": "4844c5f31805a95e25af849d3e888b41d4cba82846300010c82895f4072e57f6", + "block_index": 187, + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "give_asset": "XCP", + "give_quantity": 10000, + "give_remaining": 5000, + "get_asset": "BTC", + "get_quantity": 10000, + "get_remaining": 5000, + "expiration": 21, + "expire_index": 205, + "fee_required": 0, + "fee_required_remaining": 0, + "fee_provided": 10000, + "fee_provided_remaining": 10000, + "status": "open", + "confirmed": true, + "block_time": 1727200986, + "give_asset_info": { + "divisible": true, + "asset_longname": null, + "description": "The Counterparty protocol native currency", + "locked": true, + "issuer": null + }, + "get_asset_info": { + "divisible": true, + "asset_longname": null, + "description": "The Bitcoin cryptocurrency", + "locked": false, + "issuer": null + }, + "give_quantity_normalized": "0.00010000", + "get_quantity_normalized": "0.00010000", + "get_remaining_normalized": "0.00005000", + "give_remaining_normalized": "0.00005000", + "fee_provided_normalized": "0.00010000", + "fee_required_normalized": "0.00000000", + "fee_required_remaining_normalized": "0.00000000", + "fee_provided_remaining_normalized": "0.00010000" + }, + { + "tx_index": 56, + "tx_hash": "83919cf82dd5eb1e2e1f6d3f3f752d34d41636ed00ab8ff78369eb81475b8e57", + "block_index": 191, + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "give_asset": "XCP", "give_quantity": 1000, "give_remaining": 1000, @@ -4740,14 +5061,14 @@ "get_quantity": 1000, "get_remaining": 1000, "expiration": 21, - "expire_index": 210, + "expire_index": 211, "fee_required": 0, "fee_required_remaining": 0, "fee_provided": 10000, "fee_provided_remaining": 10000, "status": "cancelled", "confirmed": true, - "block_time": 1726509899, + "block_time": 1727201003, "give_asset_info": { "divisible": true, "asset_longname": null, @@ -4772,53 +5093,53 @@ "fee_provided_remaining_normalized": "0.00010000" }, { - "tx_index": 52, - "tx_hash": "d87f4afa605375256bce3dab7d014314a751d0d998cdc0842ac2dfc8c2fa2b21", - "block_index": 186, - "source": "bcrt1q3ds7n4l97tumdkgcr3vyhe04zaxce8ujr8fmr2", - "give_asset": "BTC", - "give_quantity": 3000, - "give_remaining": 0, - "get_asset": "XCP", - "get_quantity": 3000, - "get_remaining": 0, + "tx_index": 58, + "tx_hash": "132d67269995e3bc9e40d83bc0badefad56d85f0229eedfb0e2ccdf829d03d28", + "block_index": 192, + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "give_asset": "XCP", + "give_quantity": 1000, + "give_remaining": 1000, + "get_asset": "BTC", + "get_quantity": 1000, + "get_remaining": 1000, "expiration": 21, - "expire_index": 207, + "expire_index": 213, "fee_required": 0, "fee_required_remaining": 0, "fee_provided": 10000, "fee_provided_remaining": 10000, "status": "open", "confirmed": true, - "block_time": 1726509871, + "block_time": 1727201008, "give_asset_info": { "divisible": true, "asset_longname": null, - "description": "The Bitcoin cryptocurrency", - "locked": false, + "description": "The Counterparty protocol native currency", + "locked": true, "issuer": null }, "get_asset_info": { "divisible": true, "asset_longname": null, - "description": "The Counterparty protocol native currency", - "locked": true, + "description": "The Bitcoin cryptocurrency", + "locked": false, "issuer": null }, - "give_quantity_normalized": "0.00003000", - "get_quantity_normalized": "0.00003000", - "get_remaining_normalized": "0.00000000", - "give_remaining_normalized": "0.00000000", + "give_quantity_normalized": "0.00001000", + "get_quantity_normalized": "0.00001000", + "get_remaining_normalized": "0.00001000", + "give_remaining_normalized": "0.00001000", "fee_provided_normalized": "0.00010000", "fee_required_normalized": "0.00000000", "fee_required_remaining_normalized": "0.00000000", "fee_provided_remaining_normalized": "0.00010000" }, { - "tx_index": 50, - "tx_hash": "ebe20caac209f665277d0ac456ab451b4934a7d86529e24fd43b97535e62746a", - "block_index": 185, - "source": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", + "tx_index": 51, + "tx_hash": "e2f9612faf4a7e6249958ba9d24aaf9e3d7a70b0dafaa5fb94dc51a088e6cf63", + "block_index": 186, + "source": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", "give_asset": "BTC", "give_quantity": 2000, "give_remaining": 0, @@ -4826,14 +5147,14 @@ "get_quantity": 2000, "get_remaining": 0, "expiration": 21, - "expire_index": 205, + "expire_index": 206, "fee_required": 0, "fee_required_remaining": 0, "fee_provided": 10000, "fee_provided_remaining": 10000, "status": "filled", "confirmed": true, - "block_time": 1726509867, + "block_time": 1727200982, "give_asset_info": { "divisible": true, "asset_longname": null, @@ -4856,78 +5177,35 @@ "fee_required_normalized": "0.00000000", "fee_required_remaining_normalized": "0.00000000", "fee_provided_remaining_normalized": "0.00010000" - }, + } + ], + "next_cursor": 53, + "result_count": 7 + }, + "/v2/assets//matches": { + "result": [ { - "tx_index": 49, - "tx_hash": "675f8dccad4bdcf4b54ce5aca7ddc442f642d63e518d64ad6068a264fb9894e1", - "block_index": 186, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "give_asset": "XCP", - "give_quantity": 10000, - "give_remaining": 5000, - "get_asset": "BTC", - "get_quantity": 10000, - "get_remaining": 5000, - "expiration": 21, - "expire_index": 204, - "fee_required": 0, - "fee_required_remaining": 0, - "fee_provided": 10000, - "fee_provided_remaining": 10000, - "status": "open", - "confirmed": true, - "block_time": 1726509871, - "give_asset_info": { - "divisible": true, - "asset_longname": null, - "description": "The Counterparty protocol native currency", - "locked": true, - "issuer": null - }, - "get_asset_info": { - "divisible": true, - "asset_longname": null, - "description": "The Bitcoin cryptocurrency", - "locked": false, - "issuer": null - }, - "give_quantity_normalized": "0.00010000", - "get_quantity_normalized": "0.00010000", - "get_remaining_normalized": "0.00005000", - "give_remaining_normalized": "0.00005000", - "fee_provided_normalized": "0.00010000", - "fee_required_normalized": "0.00000000", - "fee_required_remaining_normalized": "0.00000000", - "fee_provided_remaining_normalized": "0.00010000" - } - ], - "next_cursor": 48, - "result_count": 7 - }, - "/v2/assets//matches": { - "result": [ - { - "id": "675f8dccad4bdcf4b54ce5aca7ddc442f642d63e518d64ad6068a264fb9894e1_d87f4afa605375256bce3dab7d014314a751d0d998cdc0842ac2dfc8c2fa2b21", - "tx0_index": 49, - "tx0_hash": "675f8dccad4bdcf4b54ce5aca7ddc442f642d63e518d64ad6068a264fb9894e1", - "tx0_address": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "tx1_index": 52, - "tx1_hash": "d87f4afa605375256bce3dab7d014314a751d0d998cdc0842ac2dfc8c2fa2b21", - "tx1_address": "bcrt1q3ds7n4l97tumdkgcr3vyhe04zaxce8ujr8fmr2", + "id": "4844c5f31805a95e25af849d3e888b41d4cba82846300010c82895f4072e57f6_467f7e82754021f4a8a7e07800c1785d2619004c75fd9200884f7aa4def7caa7", + "tx0_index": 50, + "tx0_hash": "4844c5f31805a95e25af849d3e888b41d4cba82846300010c82895f4072e57f6", + "tx0_address": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "tx1_index": 53, + "tx1_hash": "467f7e82754021f4a8a7e07800c1785d2619004c75fd9200884f7aa4def7caa7", + "tx1_address": "bcrt1q9cf2ed4wk37qye08wlppw39l7prxws7afa3krk", "forward_asset": "XCP", "forward_quantity": 3000, "backward_asset": "BTC", "backward_quantity": 3000, - "tx0_block_index": 184, - "tx1_block_index": 186, - "block_index": 186, + "tx0_block_index": 185, + "tx1_block_index": 187, + "block_index": 187, "tx0_expiration": 21, "tx1_expiration": 21, - "match_expire_index": 206, + "match_expire_index": 207, "fee_paid": 0, "status": "pending", "confirmed": true, - "block_time": 1726509871, + "block_time": 1727200986, "forward_asset_info": { "divisible": true, "asset_longname": null, @@ -4947,27 +5225,27 @@ "fee_paid_normalized": "0.00000000" }, { - "id": "675f8dccad4bdcf4b54ce5aca7ddc442f642d63e518d64ad6068a264fb9894e1_ebe20caac209f665277d0ac456ab451b4934a7d86529e24fd43b97535e62746a", - "tx0_index": 49, - "tx0_hash": "675f8dccad4bdcf4b54ce5aca7ddc442f642d63e518d64ad6068a264fb9894e1", - "tx0_address": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "tx1_index": 50, - "tx1_hash": "ebe20caac209f665277d0ac456ab451b4934a7d86529e24fd43b97535e62746a", - "tx1_address": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", + "id": "4844c5f31805a95e25af849d3e888b41d4cba82846300010c82895f4072e57f6_e2f9612faf4a7e6249958ba9d24aaf9e3d7a70b0dafaa5fb94dc51a088e6cf63", + "tx0_index": 50, + "tx0_hash": "4844c5f31805a95e25af849d3e888b41d4cba82846300010c82895f4072e57f6", + "tx0_address": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "tx1_index": 51, + "tx1_hash": "e2f9612faf4a7e6249958ba9d24aaf9e3d7a70b0dafaa5fb94dc51a088e6cf63", + "tx1_address": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", "forward_asset": "XCP", "forward_quantity": 2000, "backward_asset": "BTC", "backward_quantity": 2000, - "tx0_block_index": 183, - "tx1_block_index": 184, - "block_index": 185, + "tx0_block_index": 184, + "tx1_block_index": 185, + "block_index": 186, "tx0_expiration": 21, "tx1_expiration": 21, - "match_expire_index": 204, + "match_expire_index": 205, "fee_paid": 0, "status": "completed", "confirmed": true, - "block_time": 1726509867, + "block_time": 1727200982, "forward_asset_info": { "divisible": true, "asset_longname": null, @@ -4987,27 +5265,27 @@ "fee_paid_normalized": "0.00000000" }, { - "id": "e2263719273ed7cbb5496ae9daff21e24a2899e76feea1abbd4e91fa72766b5d_afd6eab5bb50283dc170ad276157e78db2dc90cb330d559320b9adc3721a1fbc", - "tx0_index": 47, - "tx0_hash": "e2263719273ed7cbb5496ae9daff21e24a2899e76feea1abbd4e91fa72766b5d", - "tx0_address": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "tx1_index": 48, - "tx1_hash": "afd6eab5bb50283dc170ad276157e78db2dc90cb330d559320b9adc3721a1fbc", - "tx1_address": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", + "id": "f90bb3520b4cd8e8f43ae4a416ea102f6a45a4cfd10b4620066271057abde926_3a7ea4dc466a608d47050ca02aa94f8d84ae9ea60b94dcf727b3e6eb8728e8d8", + "tx0_index": 48, + "tx0_hash": "f90bb3520b4cd8e8f43ae4a416ea102f6a45a4cfd10b4620066271057abde926", + "tx0_address": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "tx1_index": 49, + "tx1_hash": "3a7ea4dc466a608d47050ca02aa94f8d84ae9ea60b94dcf727b3e6eb8728e8d8", + "tx1_address": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", "forward_asset": "XCP", "forward_quantity": 1000, "backward_asset": "BTC", "backward_quantity": 1000, - "tx0_block_index": 160, - "tx1_block_index": 161, - "block_index": 182, + "tx0_block_index": 161, + "tx1_block_index": 162, + "block_index": 183, "tx0_expiration": 21, "tx1_expiration": 20, - "match_expire_index": 181, + "match_expire_index": 182, "fee_paid": 0, "status": "expired", "confirmed": true, - "block_time": 1726509796, + "block_time": 1727200899, "forward_asset_info": { "divisible": true, "asset_longname": null, @@ -5033,21 +5311,21 @@ "/v2/assets//credits": { "result": [ { - "block_index": 192, - "address": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "block_index": 193, + "address": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "asset": "FAIRMINTA", "quantity": 500000000, "calling_function": "sweep", - "event": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", - "tx_index": 58, + "event": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", + "tx_index": 59, "utxo": null, "utxo_address": null, "confirmed": true, - "block_time": 1726509908, + "block_time": 1727201012, "asset_info": { "asset_longname": "", "description": "", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, @@ -5055,20 +5333,20 @@ }, { "block_index": 125, - "address": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "address": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "asset": "FAIRMINTA", "quantity": 9000000000, "calling_function": "fairmint", - "event": "60c597d6868e45719209ae17a0338cb00c81d5d64d82363d6dc68744ecf36351", + "event": "0690942f2dfd840ad6ff6b5cfd4f06d86e77dbce303980758bd99ac034e4d803", "tx_index": 13, "utxo": null, "utxo_address": null, "confirmed": true, - "block_time": 1726509592, + "block_time": 1727200736, "asset_info": { "asset_longname": "", "description": "", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, @@ -5076,20 +5354,20 @@ }, { "block_index": 124, - "address": "bcrt1q3ds7n4l97tumdkgcr3vyhe04zaxce8ujr8fmr2", + "address": "bcrt1q9cf2ed4wk37qye08wlppw39l7prxws7afa3krk", "asset": "FAIRMINTA", "quantity": 500000000, "calling_function": "unescrowed fairmint", - "event": "efce747367cf4f6f269d55f239087910bc90dcb738205d57146a4a5b537dad17", + "event": "c7de2f976583158832e195c5e06c91be234ea8f11f3dec44a14e41ee44e25238", "tx_index": 12, "utxo": null, "utxo_address": null, "confirmed": true, - "block_time": 1726509587, + "block_time": 1727200732, "asset_info": { "asset_longname": "", "description": "", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, @@ -5097,20 +5375,20 @@ }, { "block_index": 124, - "address": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", + "address": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", "asset": "FAIRMINTA", "quantity": 500000000, "calling_function": "unescrowed fairmint", - "event": "320ca07cfa5b9233bd809064f5facf416651c9b1f8a8d06a1ebc57a17a01436c", + "event": "5a391ff7c4ab9f62237b4734451c3765753c6424c9d0cded3325f895e75ff06f", "tx_index": 11, "utxo": null, "utxo_address": null, "confirmed": true, - "block_time": 1726509587, + "block_time": 1727200732, "asset_info": { "asset_longname": "", "description": "", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, @@ -5122,16 +5400,16 @@ "asset": "FAIRMINTA", "quantity": 500000000, "calling_function": "escrowed fairmint", - "event": "efce747367cf4f6f269d55f239087910bc90dcb738205d57146a4a5b537dad17", + "event": "c7de2f976583158832e195c5e06c91be234ea8f11f3dec44a14e41ee44e25238", "tx_index": 12, "utxo": null, "utxo_address": null, "confirmed": true, - "block_time": 1726509587, + "block_time": 1727200732, "asset_info": { "asset_longname": "", "description": "", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, @@ -5144,17 +5422,17 @@ "/v2/assets//debits": { "result": [ { - "block_index": 193, - "address": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "block_index": 194, + "address": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "asset": "XCP", "quantity": 1, "action": "destroy", - "event": "f79c39d2a2896a86ef0bb2370101c664b69f2b9387afcd377d8226b839d419ce", - "tx_index": 59, + "event": "da0a0e76bfc982e2bbed2679a71f4e2d3ebc01140b448f430bb01b50f7ceaabb", + "tx_index": 60, "utxo": null, "utxo_address": null, "confirmed": true, - "block_time": 1726509912, + "block_time": 1727201016, "asset_info": { "divisible": true, "asset_longname": null, @@ -5165,17 +5443,17 @@ "quantity_normalized": "0.00000001" }, { - "block_index": 192, - "address": "bcrt1q3ds7n4l97tumdkgcr3vyhe04zaxce8ujr8fmr2", + "block_index": 193, + "address": "bcrt1q9cf2ed4wk37qye08wlppw39l7prxws7afa3krk", "asset": "XCP", "quantity": 74499387833, "action": "sweep", - "event": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", - "tx_index": 58, + "event": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", + "tx_index": 59, "utxo": null, "utxo_address": null, "confirmed": true, - "block_time": 1726509908, + "block_time": 1727201012, "asset_info": { "divisible": true, "asset_longname": null, @@ -5186,17 +5464,17 @@ "quantity_normalized": "744.99388000" }, { - "block_index": 192, - "address": "bcrt1q3ds7n4l97tumdkgcr3vyhe04zaxce8ujr8fmr2", + "block_index": 193, + "address": "bcrt1q9cf2ed4wk37qye08wlppw39l7prxws7afa3krk", "asset": "XCP", "quantity": 600000, "action": "sweep fee", - "event": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", - "tx_index": 58, + "event": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", + "tx_index": 59, "utxo": null, "utxo_address": null, "confirmed": true, - "block_time": 1726509908, + "block_time": 1727201012, "asset_info": { "divisible": true, "asset_longname": null, @@ -5207,17 +5485,17 @@ "quantity_normalized": "0.00600000" }, { - "block_index": 191, - "address": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "block_index": 192, + "address": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "asset": "XCP", "quantity": 1000, "action": "open order", - "event": "7b7048040c893c69892bd088ce48db79b96b9c1d7221b50d903064ff5a1ed232", - "tx_index": 57, + "event": "132d67269995e3bc9e40d83bc0badefad56d85f0229eedfb0e2ccdf829d03d28", + "tx_index": 58, "utxo": null, "utxo_address": null, "confirmed": true, - "block_time": 1726509903, + "block_time": 1727201008, "asset_info": { "divisible": true, "asset_longname": null, @@ -5228,17 +5506,17 @@ "quantity_normalized": "0.00001000" }, { - "block_index": 189, - "address": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "block_index": 190, + "address": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "asset": "XCP", "quantity": 1000, "action": "open order", - "event": "5e324d551a694d3f6ffc9c67b3db8817d470ba32257047ddee237d3d07c1a1e2", - "tx_index": 55, + "event": "83919cf82dd5eb1e2e1f6d3f3f752d34d41636ed00ab8ff78369eb81475b8e57", + "tx_index": 56, "utxo": null, "utxo_address": null, "confirmed": true, - "block_time": 1726509894, + "block_time": 1727200999, "asset_info": { "divisible": true, "asset_longname": null, @@ -5255,21 +5533,21 @@ "/v2/assets//dividends": { "result": [ { - "tx_index": 40, - "tx_hash": "65e4ec441796883270c7bb0f18ca610e54b1ad0b3ae8a33e572bca985f65ee00", - "block_index": 153, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "tx_index": 41, + "tx_hash": "1b9303b3959067c0857fe1abb4fdd4b3684c7534c12691382004cc31a9afcca4", + "block_index": 154, + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "asset": "MYASSETA", "dividend_asset": "XCP", "quantity_per_unit": 100000000, "fee_paid": 40000, "status": "valid", "confirmed": true, - "block_time": 1726509732, + "block_time": 1727200857, "asset_info": { "asset_longname": null, "description": "My super asset A", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, @@ -5291,14 +5569,14 @@ "result": [ { "tx_index": 13, - "tx_hash": "60c597d6868e45719209ae17a0338cb00c81d5d64d82363d6dc68744ecf36351", + "tx_hash": "0690942f2dfd840ad6ff6b5cfd4f06d86e77dbce303980758bd99ac034e4d803", "msg_index": 0, "block_index": 125, "asset": "FAIRMINTA", "quantity": 9000000000, "divisible": true, - "source": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "transfer": false, "callable": false, "call_date": 0, @@ -5313,20 +5591,20 @@ "fair_minting": false, "asset_events": "fairmint", "confirmed": true, - "block_time": 1726509592, + "block_time": 1727200736, "quantity_normalized": "90.00000000", "fee_paid_normalized": "0.00000000" }, { "tx_index": 12, - "tx_hash": "efce747367cf4f6f269d55f239087910bc90dcb738205d57146a4a5b537dad17", + "tx_hash": "c7de2f976583158832e195c5e06c91be234ea8f11f3dec44a14e41ee44e25238", "msg_index": 0, "block_index": 124, "asset": "FAIRMINTA", "quantity": 500000000, "divisible": true, - "source": "bcrt1q3ds7n4l97tumdkgcr3vyhe04zaxce8ujr8fmr2", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q9cf2ed4wk37qye08wlppw39l7prxws7afa3krk", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "transfer": false, "callable": false, "call_date": 0, @@ -5341,20 +5619,20 @@ "fair_minting": true, "asset_events": "fairmint", "confirmed": true, - "block_time": 1726509587, + "block_time": 1727200732, "quantity_normalized": "5.00000000", "fee_paid_normalized": "0.00000000" }, { "tx_index": 11, - "tx_hash": "320ca07cfa5b9233bd809064f5facf416651c9b1f8a8d06a1ebc57a17a01436c", + "tx_hash": "5a391ff7c4ab9f62237b4734451c3765753c6424c9d0cded3325f895e75ff06f", "msg_index": 0, "block_index": 123, "asset": "FAIRMINTA", "quantity": 500000000, "divisible": true, - "source": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "transfer": false, "callable": false, "call_date": 0, @@ -5369,20 +5647,20 @@ "fair_minting": true, "asset_events": "fairmint", "confirmed": true, - "block_time": 1726509583, + "block_time": 1727200727, "quantity_normalized": "5.00000000", "fee_paid_normalized": "0.00000000" }, { "tx_index": 10, - "tx_hash": "7ae7bb5d540de02fd2b97d7234b6c87c925d0b6b3eac5a55e5ced650ce49eed1", + "tx_hash": "15f8f2368ab00936a53063e0f92508f82a1d6018e7495426e7dc81fc02f6d6f1", "msg_index": 0, "block_index": 122, "asset": "FAIRMINTA", "quantity": 0, "divisible": true, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "transfer": false, "callable": false, "call_date": 0, @@ -5397,7 +5675,7 @@ "fair_minting": true, "asset_events": "open_fairminter", "confirmed": true, - "block_time": 1726509578, + "block_time": 1727200723, "quantity_normalized": "0.00000000", "fee_paid_normalized": "0.50000000" } @@ -5408,11 +5686,11 @@ "/v2/assets//sends": { "result": [ { - "tx_index": 54, - "tx_hash": "e8fda956958ed7de0a98e42d8d28349b9c7b5e20da375c185c5830526df6594f", - "block_index": 188, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "destination": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", + "tx_index": 55, + "tx_hash": "4cd813fae2558e89f2f9411f38daa7d4c10c94a267daa38155cf18fb4d9fd055", + "block_index": 189, + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "destination": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", "asset": "XCP", "quantity": 10, "status": "valid", @@ -5420,7 +5698,7 @@ "memo": null, "fee_paid": 0, "confirmed": true, - "block_time": 1726509890, + "block_time": 1727200995, "asset_info": { "divisible": true, "asset_longname": null, @@ -5432,11 +5710,11 @@ "fee_paid_normalized": "0.00000000" }, { - "tx_index": 53, - "tx_hash": "f96235259f9722ca1558a6601a39e235c6a60fa33d67cc9e5039890d0ab2fe03", - "block_index": 187, - "source": "bcrt1q3ds7n4l97tumdkgcr3vyhe04zaxce8ujr8fmr2", - "destination": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "tx_index": 54, + "tx_hash": "e7989369eefaec09cec5770c6128eb548023225e666d57bbed74b3d03240e9c3", + "block_index": 188, + "source": "bcrt1q9cf2ed4wk37qye08wlppw39l7prxws7afa3krk", + "destination": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "asset": "XCP", "quantity": 10000, "status": "valid", @@ -5444,7 +5722,7 @@ "memo": null, "fee_paid": 0, "confirmed": true, - "block_time": 1726509886, + "block_time": 1727200991, "asset_info": { "divisible": true, "asset_longname": null, @@ -5456,11 +5734,11 @@ "fee_paid_normalized": "0.00000000" }, { - "tx_index": 42, - "tx_hash": "f48f32cde583a1233260e9d07c858726031b0aadb7550a061602ad6cffd5f3a7", - "block_index": 155, - "source": "3f0027dbe860c95e4cea6d1c83db0d8ea3acf7adbeacefd7e8eb56e9399d879b:0", - "destination": "f48f32cde583a1233260e9d07c858726031b0aadb7550a061602ad6cffd5f3a7:1", + "tx_index": 43, + "tx_hash": "ca11a87b6b09143626cafffbc32be68d26d43df5facbb48aa919ce857c1aa739", + "block_index": 156, + "source": "9d347b5453e8bf2608768d2b109367ce3aaf5a12d4bc63526fa6fb59eab1901d:0", + "destination": "ca11a87b6b09143626cafffbc32be68d26d43df5facbb48aa919ce857c1aa739:1", "asset": "XCP", "quantity": 1500000000, "status": "valid", @@ -5468,7 +5746,7 @@ "memo": null, "fee_paid": 0, "confirmed": true, - "block_time": 1726509741, + "block_time": 1727200867, "asset_info": { "divisible": true, "asset_longname": null, @@ -5480,11 +5758,11 @@ "fee_paid_normalized": "0.00000000" }, { - "tx_index": 41, - "tx_hash": "3f0027dbe860c95e4cea6d1c83db0d8ea3acf7adbeacefd7e8eb56e9399d879b", - "block_index": 154, - "source": "9d34a868637906281a292d50facdb8551872a2d08cd28cf7a895f10f80cb0b32:0", - "destination": "3f0027dbe860c95e4cea6d1c83db0d8ea3acf7adbeacefd7e8eb56e9399d879b:0", + "tx_index": 42, + "tx_hash": "9d347b5453e8bf2608768d2b109367ce3aaf5a12d4bc63526fa6fb59eab1901d", + "block_index": 155, + "source": "99ac4db802d5262ae35de8b542d298d4a28719ccffb6ffd8d462f40e8435bdd8:0", + "destination": "9d347b5453e8bf2608768d2b109367ce3aaf5a12d4bc63526fa6fb59eab1901d:0", "asset": "XCP", "quantity": 1500000000, "status": "valid", @@ -5492,7 +5770,7 @@ "memo": null, "fee_paid": 0, "confirmed": true, - "block_time": 1726509735, + "block_time": 1727200861, "asset_info": { "divisible": true, "asset_longname": null, @@ -5510,29 +5788,29 @@ "/v2/assets//dispensers": { "result": [ { - "tx_index": 32, - "tx_hash": "5c8374a3882f222038bbf9a0cce7589e84b790915b9228d66af1a5b0eb61ea2d", - "block_index": 146, - "source": "bcrt1qlm44vh2ynrtqwh8j2mptwrzzfd04czsya4wxcd", + "tx_index": 26, + "tx_hash": "3df6d90991175a0c2aabbe0dc87cacd5d92c90cb996ce5b1514492f2585c61fc", + "block_index": 141, + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "asset": "XCP", "give_quantity": 1, "escrow_quantity": 10000, "satoshirate": 1, - "status": 0, - "give_remaining": 9334, - "oracle_address": "bcrt1qlm44vh2ynrtqwh8j2mptwrzzfd04czsya4wxcd", + "status": 10, + "give_remaining": 0, + "oracle_address": null, "last_status_tx_hash": null, - "origin": "bcrt1qlm44vh2ynrtqwh8j2mptwrzzfd04czsya4wxcd", - "dispense_count": 1, + "origin": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "dispense_count": 2, "last_status_tx_source": null, "close_block_index": null, "confirmed": true, - "fiat_price": 0.01, - "oracle_price": 66600.0, - "fiat_unit": "USD", - "oracle_price_last_updated": 138, - "satoshi_price": 16, - "block_time": 1726509701, + "fiat_price": null, + "oracle_price": null, + "fiat_unit": null, + "oracle_price_last_updated": null, + "satoshi_price": 1, + "block_time": 1727200803, "asset_info": { "divisible": true, "asset_longname": null, @@ -5541,25 +5819,25 @@ "issuer": null }, "give_quantity_normalized": "0.00000001", - "give_remaining_normalized": "0.00009334", + "give_remaining_normalized": "0.00000000", "escrow_quantity_normalized": "0.00010000", "satoshirate_normalized": "0.00000001", - "satoshi_price_normalized": "0.00000016" + "satoshi_price_normalized": "0.00000001" }, { - "tx_index": 30, - "tx_hash": "d3713f7f4355cf95ddb00030d4c53655897b901d6827b640ee27cc83efaba2e6", - "block_index": 144, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "tx_index": 29, + "tx_hash": "aa785aa095076658df4575becc62c26d1e549a540599459cf332e9f44ae51019", + "block_index": 142, + "source": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "asset": "XCP", "give_quantity": 1, - "escrow_quantity": 10, + "escrow_quantity": 10000, "satoshirate": 1, "status": 0, - "give_remaining": 20, + "give_remaining": 10000, "oracle_address": null, "last_status_tx_hash": null, - "origin": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "origin": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "dispense_count": 0, "last_status_tx_source": null, "close_block_index": null, @@ -5569,7 +5847,7 @@ "fiat_unit": null, "oracle_price_last_updated": null, "satoshi_price": 1, - "block_time": 1726509693, + "block_time": 1727200806, "asset_info": { "divisible": true, "asset_longname": null, @@ -5578,35 +5856,35 @@ "issuer": null }, "give_quantity_normalized": "0.00000001", - "give_remaining_normalized": "0.00000020", - "escrow_quantity_normalized": "0.00000010", + "give_remaining_normalized": "0.00010000", + "escrow_quantity_normalized": "0.00010000", "satoshirate_normalized": "0.00000001", "satoshi_price_normalized": "0.00000001" }, { - "tx_index": 29, - "tx_hash": "ee65a85736487849d0d1ac06ea09424e477194edd27c7c31afbe06f4fbb6142c", - "block_index": 142, - "source": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "tx_index": 30, + "tx_hash": "e6a18e565cab14aec4ba641f48a311c8643793f8fa84b25141ced517eaefc6f9", + "block_index": 150, + "source": "mtFzzdWHLZqWVVMGKENQscisyMTejQamk6", "asset": "XCP", "give_quantity": 1, - "escrow_quantity": 10000, + "escrow_quantity": 10, "satoshirate": 1, - "status": 0, - "give_remaining": 10000, + "status": 10, + "give_remaining": 0, "oracle_address": null, - "last_status_tx_hash": null, - "origin": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "last_status_tx_hash": "d2fb8bc72b0250cee9a35d9f657f0d4eb12286a93b930f502d166903f57fafb9", + "origin": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "dispense_count": 0, - "last_status_tx_source": null, - "close_block_index": null, + "last_status_tx_source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "close_block_index": "150", "confirmed": true, "fiat_price": null, "oracle_price": null, "fiat_unit": null, "oracle_price_last_updated": null, "satoshi_price": 1, - "block_time": 1726509684, + "block_time": 1727200840, "asset_info": { "divisible": true, "asset_longname": null, @@ -5615,35 +5893,35 @@ "issuer": null }, "give_quantity_normalized": "0.00000001", - "give_remaining_normalized": "0.00010000", - "escrow_quantity_normalized": "0.00010000", + "give_remaining_normalized": "0.00000000", + "escrow_quantity_normalized": "0.00000010", "satoshirate_normalized": "0.00000001", "satoshi_price_normalized": "0.00000001" }, { - "tx_index": 26, - "tx_hash": "e4fcdf91df3b0bbacb56d49f65bba5e59c88e92c829d7c8b3f251d5e20457f4e", - "block_index": 141, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "tx_index": 33, + "tx_hash": "1e7bea513de78cabf444b974fdb0efb4304b18bd990a889d7a0f8b0e3d21b6ea", + "block_index": 147, + "source": "bcrt1qeshrsce6vyx833j2p85aesnx0aj9sxjtt79jak", "asset": "XCP", "give_quantity": 1, "escrow_quantity": 10000, "satoshirate": 1, - "status": 10, - "give_remaining": 0, - "oracle_address": null, + "status": 0, + "give_remaining": 9334, + "oracle_address": "bcrt1qeshrsce6vyx833j2p85aesnx0aj9sxjtt79jak", "last_status_tx_hash": null, - "origin": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "dispense_count": 2, + "origin": "bcrt1qeshrsce6vyx833j2p85aesnx0aj9sxjtt79jak", + "dispense_count": 1, "last_status_tx_source": null, "close_block_index": null, "confirmed": true, - "fiat_price": null, - "oracle_price": null, - "fiat_unit": null, - "oracle_price_last_updated": null, - "satoshi_price": 1, - "block_time": 1726509680, + "fiat_price": 0.01, + "oracle_price": 66600.0, + "fiat_unit": "USD", + "oracle_price_last_updated": 138, + "satoshi_price": 16, + "block_time": 1727200827, "asset_info": { "divisible": true, "asset_longname": null, @@ -5652,10 +5930,10 @@ "issuer": null }, "give_quantity_normalized": "0.00000001", - "give_remaining_normalized": "0.00000000", + "give_remaining_normalized": "0.00009334", "escrow_quantity_normalized": "0.00010000", "satoshirate_normalized": "0.00000001", - "satoshi_price_normalized": "0.00000001" + "satoshi_price_normalized": "0.00000016" } ], "next_cursor": null, @@ -5663,20 +5941,20 @@ }, "/v2/assets//dispensers/
": { "result": { - "tx_index": 30, - "tx_hash": "d3713f7f4355cf95ddb00030d4c53655897b901d6827b640ee27cc83efaba2e6", - "block_index": 144, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "tx_index": 26, + "tx_hash": "3df6d90991175a0c2aabbe0dc87cacd5d92c90cb996ce5b1514492f2585c61fc", + "block_index": 141, + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "asset": "XCP", "give_quantity": 1, - "escrow_quantity": 10, + "escrow_quantity": 10000, "satoshirate": 1, - "status": 0, - "give_remaining": 20, + "status": 10, + "give_remaining": 0, "oracle_address": null, "last_status_tx_hash": null, - "origin": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "dispense_count": 0, + "origin": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "dispense_count": 2, "last_status_tx_source": null, "close_block_index": null, "confirmed": true, @@ -5685,7 +5963,7 @@ "fiat_unit": null, "oracle_price_last_updated": null, "satoshi_price": 1, - "block_time": 1726509693, + "block_time": 1727200803, "asset_info": { "divisible": true, "asset_longname": null, @@ -5694,8 +5972,8 @@ "issuer": null }, "give_quantity_normalized": "0.00000001", - "give_remaining_normalized": "0.00000020", - "escrow_quantity_normalized": "0.00000010", + "give_remaining_normalized": "0.00000000", + "escrow_quantity_normalized": "0.00010000", "satoshirate_normalized": "0.00000001", "satoshi_price_normalized": "0.00000001" } @@ -5713,7 +5991,7 @@ "asset_info": { "asset_longname": "", "description": "", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, @@ -5721,7 +5999,7 @@ }, { "asset": "FAIRMINTA", - "address": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", + "address": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", "quantity": 500000000, "escrow": null, "cursor_id": "balances_13", @@ -5730,7 +6008,7 @@ "asset_info": { "asset_longname": "", "description": "", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, @@ -5738,7 +6016,7 @@ }, { "asset": "FAIRMINTA", - "address": "bcrt1q3ds7n4l97tumdkgcr3vyhe04zaxce8ujr8fmr2", + "address": "bcrt1q9cf2ed4wk37qye08wlppw39l7prxws7afa3krk", "quantity": 0, "escrow": null, "cursor_id": "balances_14", @@ -5747,7 +6025,7 @@ "asset_info": { "asset_longname": "", "description": "", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, @@ -5755,7 +6033,7 @@ }, { "asset": "FAIRMINTA", - "address": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "address": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "quantity": 9500000000, "escrow": null, "cursor_id": "balances_15", @@ -5764,7 +6042,7 @@ "asset_info": { "asset_longname": "", "description": "", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, @@ -5777,29 +6055,29 @@ "/v2/assets//dispenses": { "result": [ { - "tx_index": 33, + "tx_index": 34, "dispense_index": 0, - "tx_hash": "516159be9547a87a0ab0ce652ce9daebb10796eb67509fa50780dca28d813535", - "block_index": 146, - "source": "bcrt1qlm44vh2ynrtqwh8j2mptwrzzfd04czsya4wxcd", - "destination": "bcrt1qlqcrlvw5t7cnj8r9hjl0qq67c2fyk5kvfra90p", + "tx_hash": "6b21482e6e461d42ded8e74826ff88a8b23621baaa45e714c7c2a20457bd6c12", + "block_index": 147, + "source": "bcrt1qeshrsce6vyx833j2p85aesnx0aj9sxjtt79jak", + "destination": "bcrt1qfvucymcd7u04hpd7eafsmxwnashcmaqs54q79p", "asset": "XCP", "dispense_quantity": 666, - "dispenser_tx_hash": "5c8374a3882f222038bbf9a0cce7589e84b790915b9228d66af1a5b0eb61ea2d", + "dispenser_tx_hash": "1e7bea513de78cabf444b974fdb0efb4304b18bd990a889d7a0f8b0e3d21b6ea", "btc_amount": 10000, "confirmed": true, "dispenser": { - "tx_index": 32, - "block_index": 146, - "source": "bcrt1qlm44vh2ynrtqwh8j2mptwrzzfd04czsya4wxcd", + "tx_index": 33, + "block_index": 147, + "source": "bcrt1qeshrsce6vyx833j2p85aesnx0aj9sxjtt79jak", "give_quantity": 1, "escrow_quantity": 10000, "satoshirate": 1, "status": 0, "give_remaining": 9334, - "oracle_address": "bcrt1qlm44vh2ynrtqwh8j2mptwrzzfd04czsya4wxcd", + "oracle_address": "bcrt1qeshrsce6vyx833j2p85aesnx0aj9sxjtt79jak", "last_status_tx_hash": null, - "origin": "bcrt1qlm44vh2ynrtqwh8j2mptwrzzfd04czsya4wxcd", + "origin": "bcrt1qeshrsce6vyx833j2p85aesnx0aj9sxjtt79jak", "dispense_count": 1, "last_status_tx_source": null, "close_block_index": null, @@ -5814,7 +6092,7 @@ "satoshirate_normalized": "0.00000001", "satoshi_price_normalized": "0.00000016" }, - "block_time": 1726509701, + "block_time": 1727200827, "asset_info": { "divisible": true, "asset_longname": null, @@ -5828,19 +6106,19 @@ { "tx_index": 28, "dispense_index": 0, - "tx_hash": "ab0fd3f5a4ce7ef637dfa113da8a1d7ca7f9b7b8ef7bea07721c55ef2aee9d2f", + "tx_hash": "6ae257db1a77e44eb808057e9944b6f6e15eebf699db2c77f3009100a550b7fa", "block_index": 141, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "destination": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "destination": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", "asset": "XCP", "dispense_quantity": 4000, - "dispenser_tx_hash": "e4fcdf91df3b0bbacb56d49f65bba5e59c88e92c829d7c8b3f251d5e20457f4e", + "dispenser_tx_hash": "3df6d90991175a0c2aabbe0dc87cacd5d92c90cb996ce5b1514492f2585c61fc", "btc_amount": 4000, "confirmed": true, "dispenser": { "tx_index": 26, "block_index": 141, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "give_quantity": 1, "escrow_quantity": 10000, "satoshirate": 1, @@ -5848,7 +6126,7 @@ "give_remaining": 0, "oracle_address": null, "last_status_tx_hash": null, - "origin": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "origin": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "dispense_count": 2, "last_status_tx_source": null, "close_block_index": null, @@ -5863,7 +6141,7 @@ "satoshirate_normalized": "0.00000001", "satoshi_price_normalized": "0.00000001" }, - "block_time": 1726509680, + "block_time": 1727200803, "asset_info": { "divisible": true, "asset_longname": null, @@ -5877,19 +6155,19 @@ { "tx_index": 27, "dispense_index": 0, - "tx_hash": "54eee03a80a18a6e816f27408ce071f7c7fefac72abc8ade14e835ad5f1563ce", + "tx_hash": "2a07cfa93bced14f59b80e10872f5fe4a406622078c0b85295c5c4149820d102", "block_index": 140, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "destination": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "destination": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", "asset": "XCP", "dispense_quantity": 6000, - "dispenser_tx_hash": "e4fcdf91df3b0bbacb56d49f65bba5e59c88e92c829d7c8b3f251d5e20457f4e", + "dispenser_tx_hash": "3df6d90991175a0c2aabbe0dc87cacd5d92c90cb996ce5b1514492f2585c61fc", "btc_amount": 6000, "confirmed": true, "dispenser": { "tx_index": 26, "block_index": 141, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "give_quantity": 1, "escrow_quantity": 10000, "satoshirate": 1, @@ -5897,7 +6175,7 @@ "give_remaining": 0, "oracle_address": null, "last_status_tx_hash": null, - "origin": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "origin": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "dispense_count": 2, "last_status_tx_source": null, "close_block_index": null, @@ -5912,7 +6190,7 @@ "satoshirate_normalized": "0.00000001", "satoshi_price_normalized": "0.00000001" }, - "block_time": 1726509665, + "block_time": 1727200798, "asset_info": { "divisible": true, "asset_longname": null, @@ -5933,17 +6211,17 @@ "asset": "A95428959745315388", "asset_id": "95428959745315388", "asset_longname": "TESTLOCKDESC.MYSUBASSET", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "owner": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "owner": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false, "supply": 0, "description": "Test Locking Description", - "first_issuance_block_index": 157, - "last_issuance_block_index": 157, + "first_issuance_block_index": 158, + "last_issuance_block_index": 158, "confirmed": true, - "first_issuance_block_time": 1726509760, - "last_issuance_block_time": 1726509760, + "first_issuance_block_time": 1727200875, + "last_issuance_block_time": 1727200875, "supply_normalized": "0.00000000" } ], @@ -5953,10 +6231,10 @@ "/v2/assets//fairminters": { "result": [ { - "tx_hash": "7ae7bb5d540de02fd2b97d7234b6c87c925d0b6b3eac5a55e5ced650ce49eed1", + "tx_hash": "15f8f2368ab00936a53063e0f92508f82a1d6018e7495426e7dc81fc02f6d6f1", "tx_index": 10, "block_index": 125, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "asset": "FAIRMINTA", "asset_parent": "", "asset_longname": "", @@ -5981,7 +6259,7 @@ "commission": null, "paid_quantity": null, "confirmed": true, - "block_time": 1726509592 + "block_time": 1727200736 } ], "next_cursor": null, @@ -5990,64 +6268,64 @@ "/v2/assets//fairmints": { "result": [ { - "tx_hash": "60c597d6868e45719209ae17a0338cb00c81d5d64d82363d6dc68744ecf36351", + "tx_hash": "0690942f2dfd840ad6ff6b5cfd4f06d86e77dbce303980758bd99ac034e4d803", "tx_index": 13, "block_index": 125, - "source": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", - "fairminter_tx_hash": "7ae7bb5d540de02fd2b97d7234b6c87c925d0b6b3eac5a55e5ced650ce49eed1", + "source": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", + "fairminter_tx_hash": "15f8f2368ab00936a53063e0f92508f82a1d6018e7495426e7dc81fc02f6d6f1", "asset": "FAIRMINTA", "earn_quantity": 9000000000, "paid_quantity": 9000000000, "commission": 0, "status": "valid", "confirmed": true, - "block_time": 1726509592, + "block_time": 1727200736, "asset_info": { "asset_longname": "", "description": "", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false } }, { - "tx_hash": "efce747367cf4f6f269d55f239087910bc90dcb738205d57146a4a5b537dad17", + "tx_hash": "c7de2f976583158832e195c5e06c91be234ea8f11f3dec44a14e41ee44e25238", "tx_index": 12, "block_index": 124, - "source": "bcrt1q3ds7n4l97tumdkgcr3vyhe04zaxce8ujr8fmr2", - "fairminter_tx_hash": "7ae7bb5d540de02fd2b97d7234b6c87c925d0b6b3eac5a55e5ced650ce49eed1", + "source": "bcrt1q9cf2ed4wk37qye08wlppw39l7prxws7afa3krk", + "fairminter_tx_hash": "15f8f2368ab00936a53063e0f92508f82a1d6018e7495426e7dc81fc02f6d6f1", "asset": "FAIRMINTA", "earn_quantity": 500000000, "paid_quantity": 500000000, "commission": 0, "status": "valid", "confirmed": true, - "block_time": 1726509587, + "block_time": 1727200732, "asset_info": { "asset_longname": "", "description": "", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false } }, { - "tx_hash": "320ca07cfa5b9233bd809064f5facf416651c9b1f8a8d06a1ebc57a17a01436c", + "tx_hash": "5a391ff7c4ab9f62237b4734451c3765753c6424c9d0cded3325f895e75ff06f", "tx_index": 11, "block_index": 123, - "source": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", - "fairminter_tx_hash": "7ae7bb5d540de02fd2b97d7234b6c87c925d0b6b3eac5a55e5ced650ce49eed1", + "source": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", + "fairminter_tx_hash": "15f8f2368ab00936a53063e0f92508f82a1d6018e7495426e7dc81fc02f6d6f1", "asset": "FAIRMINTA", "earn_quantity": 500000000, "paid_quantity": 500000000, "commission": 0, "status": "valid", "confirmed": true, - "block_time": 1726509583, + "block_time": 1727200727, "asset_info": { "asset_longname": "", "description": "", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false } @@ -6059,22 +6337,22 @@ "/v2/assets//fairmints/
": { "result": [ { - "tx_hash": "320ca07cfa5b9233bd809064f5facf416651c9b1f8a8d06a1ebc57a17a01436c", + "tx_hash": "5a391ff7c4ab9f62237b4734451c3765753c6424c9d0cded3325f895e75ff06f", "tx_index": 11, "block_index": 123, - "source": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", - "fairminter_tx_hash": "7ae7bb5d540de02fd2b97d7234b6c87c925d0b6b3eac5a55e5ced650ce49eed1", + "source": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", + "fairminter_tx_hash": "15f8f2368ab00936a53063e0f92508f82a1d6018e7495426e7dc81fc02f6d6f1", "asset": "FAIRMINTA", "earn_quantity": 500000000, "paid_quantity": 500000000, "commission": 0, "status": "valid", "confirmed": true, - "block_time": 1726509583, + "block_time": 1727200727, "asset_info": { "asset_longname": "", "description": "", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false } @@ -6086,10 +6364,10 @@ "/v2/orders": { "result": [ { - "tx_index": 57, - "tx_hash": "7b7048040c893c69892bd088ce48db79b96b9c1d7221b50d903064ff5a1ed232", - "block_index": 191, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "tx_index": 48, + "tx_hash": "f90bb3520b4cd8e8f43ae4a416ea102f6a45a4cfd10b4620066271057abde926", + "block_index": 183, + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "give_asset": "XCP", "give_quantity": 1000, "give_remaining": 1000, @@ -6097,14 +6375,14 @@ "get_quantity": 1000, "get_remaining": 1000, "expiration": 21, - "expire_index": 212, + "expire_index": 182, "fee_required": 0, "fee_required_remaining": 0, "fee_provided": 10000, "fee_provided_remaining": 10000, - "status": "open", + "status": "expired", "confirmed": true, - "block_time": 1726509903, + "block_time": 1727200899, "give_asset_info": { "divisible": true, "asset_longname": null, @@ -6129,111 +6407,111 @@ "fee_provided_remaining_normalized": "0.00010000" }, { - "tx_index": 55, - "tx_hash": "5e324d551a694d3f6ffc9c67b3db8817d470ba32257047ddee237d3d07c1a1e2", - "block_index": 190, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "give_asset": "XCP", - "give_quantity": 1000, - "give_remaining": 1000, - "get_asset": "BTC", - "get_quantity": 1000, - "get_remaining": 1000, + "tx_index": 51, + "tx_hash": "e2f9612faf4a7e6249958ba9d24aaf9e3d7a70b0dafaa5fb94dc51a088e6cf63", + "block_index": 186, + "source": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", + "give_asset": "BTC", + "give_quantity": 2000, + "give_remaining": 0, + "get_asset": "XCP", + "get_quantity": 2000, + "get_remaining": 0, "expiration": 21, - "expire_index": 210, + "expire_index": 206, "fee_required": 0, "fee_required_remaining": 0, "fee_provided": 10000, "fee_provided_remaining": 10000, - "status": "cancelled", + "status": "filled", "confirmed": true, - "block_time": 1726509899, + "block_time": 1727200982, "give_asset_info": { "divisible": true, "asset_longname": null, - "description": "The Counterparty protocol native currency", - "locked": true, + "description": "The Bitcoin cryptocurrency", + "locked": false, "issuer": null }, "get_asset_info": { "divisible": true, "asset_longname": null, - "description": "The Bitcoin cryptocurrency", - "locked": false, + "description": "The Counterparty protocol native currency", + "locked": true, "issuer": null }, - "give_quantity_normalized": "0.00001000", - "get_quantity_normalized": "0.00001000", - "get_remaining_normalized": "0.00001000", - "give_remaining_normalized": "0.00001000", + "give_quantity_normalized": "0.00002000", + "get_quantity_normalized": "0.00002000", + "get_remaining_normalized": "0.00000000", + "give_remaining_normalized": "0.00000000", "fee_provided_normalized": "0.00010000", "fee_required_normalized": "0.00000000", "fee_required_remaining_normalized": "0.00000000", "fee_provided_remaining_normalized": "0.00010000" }, { - "tx_index": 52, - "tx_hash": "d87f4afa605375256bce3dab7d014314a751d0d998cdc0842ac2dfc8c2fa2b21", - "block_index": 186, - "source": "bcrt1q3ds7n4l97tumdkgcr3vyhe04zaxce8ujr8fmr2", - "give_asset": "BTC", - "give_quantity": 3000, - "give_remaining": 0, - "get_asset": "XCP", - "get_quantity": 3000, - "get_remaining": 0, + "tx_index": 50, + "tx_hash": "4844c5f31805a95e25af849d3e888b41d4cba82846300010c82895f4072e57f6", + "block_index": 187, + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "give_asset": "XCP", + "give_quantity": 10000, + "give_remaining": 5000, + "get_asset": "BTC", + "get_quantity": 10000, + "get_remaining": 5000, "expiration": 21, - "expire_index": 207, + "expire_index": 205, "fee_required": 0, "fee_required_remaining": 0, "fee_provided": 10000, "fee_provided_remaining": 10000, "status": "open", "confirmed": true, - "block_time": 1726509871, + "block_time": 1727200986, "give_asset_info": { "divisible": true, "asset_longname": null, - "description": "The Bitcoin cryptocurrency", - "locked": false, + "description": "The Counterparty protocol native currency", + "locked": true, "issuer": null }, "get_asset_info": { "divisible": true, "asset_longname": null, - "description": "The Counterparty protocol native currency", - "locked": true, + "description": "The Bitcoin cryptocurrency", + "locked": false, "issuer": null }, - "give_quantity_normalized": "0.00003000", - "get_quantity_normalized": "0.00003000", - "get_remaining_normalized": "0.00000000", - "give_remaining_normalized": "0.00000000", + "give_quantity_normalized": "0.00010000", + "get_quantity_normalized": "0.00010000", + "get_remaining_normalized": "0.00005000", + "give_remaining_normalized": "0.00005000", "fee_provided_normalized": "0.00010000", "fee_required_normalized": "0.00000000", "fee_required_remaining_normalized": "0.00000000", "fee_provided_remaining_normalized": "0.00010000" }, { - "tx_index": 50, - "tx_hash": "ebe20caac209f665277d0ac456ab451b4934a7d86529e24fd43b97535e62746a", - "block_index": 185, - "source": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", + "tx_index": 53, + "tx_hash": "467f7e82754021f4a8a7e07800c1785d2619004c75fd9200884f7aa4def7caa7", + "block_index": 187, + "source": "bcrt1q9cf2ed4wk37qye08wlppw39l7prxws7afa3krk", "give_asset": "BTC", - "give_quantity": 2000, + "give_quantity": 3000, "give_remaining": 0, "get_asset": "XCP", - "get_quantity": 2000, + "get_quantity": 3000, "get_remaining": 0, "expiration": 21, - "expire_index": 205, + "expire_index": 208, "fee_required": 0, "fee_required_remaining": 0, "fee_provided": 10000, "fee_provided_remaining": 10000, - "status": "filled", + "status": "open", "confirmed": true, - "block_time": 1726509867, + "block_time": 1727200986, "give_asset_info": { "divisible": true, "asset_longname": null, @@ -6248,8 +6526,8 @@ "locked": true, "issuer": null }, - "give_quantity_normalized": "0.00002000", - "get_quantity_normalized": "0.00002000", + "give_quantity_normalized": "0.00003000", + "get_quantity_normalized": "0.00003000", "get_remaining_normalized": "0.00000000", "give_remaining_normalized": "0.00000000", "fee_provided_normalized": "0.00010000", @@ -6258,25 +6536,25 @@ "fee_provided_remaining_normalized": "0.00010000" }, { - "tx_index": 49, - "tx_hash": "675f8dccad4bdcf4b54ce5aca7ddc442f642d63e518d64ad6068a264fb9894e1", - "block_index": 186, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "tx_index": 56, + "tx_hash": "83919cf82dd5eb1e2e1f6d3f3f752d34d41636ed00ab8ff78369eb81475b8e57", + "block_index": 191, + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "give_asset": "XCP", - "give_quantity": 10000, - "give_remaining": 5000, + "give_quantity": 1000, + "give_remaining": 1000, "get_asset": "BTC", - "get_quantity": 10000, - "get_remaining": 5000, + "get_quantity": 1000, + "get_remaining": 1000, "expiration": 21, - "expire_index": 204, + "expire_index": 211, "fee_required": 0, "fee_required_remaining": 0, "fee_provided": 10000, "fee_provided_remaining": 10000, - "status": "open", + "status": "cancelled", "confirmed": true, - "block_time": 1726509871, + "block_time": 1727201003, "give_asset_info": { "divisible": true, "asset_longname": null, @@ -6291,25 +6569,25 @@ "locked": false, "issuer": null }, - "give_quantity_normalized": "0.00010000", - "get_quantity_normalized": "0.00010000", - "get_remaining_normalized": "0.00005000", - "give_remaining_normalized": "0.00005000", + "give_quantity_normalized": "0.00001000", + "get_quantity_normalized": "0.00001000", + "get_remaining_normalized": "0.00001000", + "give_remaining_normalized": "0.00001000", "fee_provided_normalized": "0.00010000", "fee_required_normalized": "0.00000000", "fee_required_remaining_normalized": "0.00000000", "fee_provided_remaining_normalized": "0.00010000" } ], - "next_cursor": 48, + "next_cursor": 58, "result_count": 7 }, "/v2/orders/": { "result": { - "tx_index": 57, - "tx_hash": "7b7048040c893c69892bd088ce48db79b96b9c1d7221b50d903064ff5a1ed232", - "block_index": 191, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "tx_index": 58, + "tx_hash": "132d67269995e3bc9e40d83bc0badefad56d85f0229eedfb0e2ccdf829d03d28", + "block_index": 192, + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "give_asset": "XCP", "give_quantity": 1000, "give_remaining": 1000, @@ -6317,14 +6595,14 @@ "get_quantity": 1000, "get_remaining": 1000, "expiration": 21, - "expire_index": 212, + "expire_index": 213, "fee_required": 0, "fee_required_remaining": 0, "fee_provided": 10000, "fee_provided_remaining": 10000, "status": "open", "confirmed": true, - "block_time": 1726509903, + "block_time": 1727201008, "give_asset_info": { "divisible": true, "asset_longname": null, @@ -6352,27 +6630,27 @@ "/v2/orders//matches": { "result": [ { - "id": "675f8dccad4bdcf4b54ce5aca7ddc442f642d63e518d64ad6068a264fb9894e1_d87f4afa605375256bce3dab7d014314a751d0d998cdc0842ac2dfc8c2fa2b21", - "tx0_index": 49, - "tx0_hash": "675f8dccad4bdcf4b54ce5aca7ddc442f642d63e518d64ad6068a264fb9894e1", - "tx0_address": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "tx1_index": 52, - "tx1_hash": "d87f4afa605375256bce3dab7d014314a751d0d998cdc0842ac2dfc8c2fa2b21", - "tx1_address": "bcrt1q3ds7n4l97tumdkgcr3vyhe04zaxce8ujr8fmr2", + "id": "4844c5f31805a95e25af849d3e888b41d4cba82846300010c82895f4072e57f6_467f7e82754021f4a8a7e07800c1785d2619004c75fd9200884f7aa4def7caa7", + "tx0_index": 50, + "tx0_hash": "4844c5f31805a95e25af849d3e888b41d4cba82846300010c82895f4072e57f6", + "tx0_address": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "tx1_index": 53, + "tx1_hash": "467f7e82754021f4a8a7e07800c1785d2619004c75fd9200884f7aa4def7caa7", + "tx1_address": "bcrt1q9cf2ed4wk37qye08wlppw39l7prxws7afa3krk", "forward_asset": "XCP", "forward_quantity": 3000, "backward_asset": "BTC", "backward_quantity": 3000, - "tx0_block_index": 184, - "tx1_block_index": 186, - "block_index": 186, + "tx0_block_index": 185, + "tx1_block_index": 187, + "block_index": 187, "tx0_expiration": 21, "tx1_expiration": 21, - "match_expire_index": 206, + "match_expire_index": 207, "fee_paid": 0, "status": "pending", "confirmed": true, - "block_time": 1726509871, + "block_time": 1727200986, "forward_asset_info": { "divisible": true, "asset_longname": null, @@ -6392,27 +6670,27 @@ "fee_paid_normalized": "0.00000000" }, { - "id": "675f8dccad4bdcf4b54ce5aca7ddc442f642d63e518d64ad6068a264fb9894e1_ebe20caac209f665277d0ac456ab451b4934a7d86529e24fd43b97535e62746a", - "tx0_index": 49, - "tx0_hash": "675f8dccad4bdcf4b54ce5aca7ddc442f642d63e518d64ad6068a264fb9894e1", - "tx0_address": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "tx1_index": 50, - "tx1_hash": "ebe20caac209f665277d0ac456ab451b4934a7d86529e24fd43b97535e62746a", - "tx1_address": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", + "id": "4844c5f31805a95e25af849d3e888b41d4cba82846300010c82895f4072e57f6_e2f9612faf4a7e6249958ba9d24aaf9e3d7a70b0dafaa5fb94dc51a088e6cf63", + "tx0_index": 50, + "tx0_hash": "4844c5f31805a95e25af849d3e888b41d4cba82846300010c82895f4072e57f6", + "tx0_address": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "tx1_index": 51, + "tx1_hash": "e2f9612faf4a7e6249958ba9d24aaf9e3d7a70b0dafaa5fb94dc51a088e6cf63", + "tx1_address": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", "forward_asset": "XCP", "forward_quantity": 2000, "backward_asset": "BTC", "backward_quantity": 2000, - "tx0_block_index": 183, - "tx1_block_index": 184, - "block_index": 185, + "tx0_block_index": 184, + "tx1_block_index": 185, + "block_index": 186, "tx0_expiration": 21, "tx1_expiration": 21, - "match_expire_index": 204, + "match_expire_index": 205, "fee_paid": 0, "status": "completed", "confirmed": true, - "block_time": 1726509867, + "block_time": 1727200982, "forward_asset_info": { "divisible": true, "asset_longname": null, @@ -6438,16 +6716,16 @@ "/v2/orders//btcpays": { "result": [ { - "tx_index": 51, - "tx_hash": "d749fed653092a4854ac8c9773d9610edfb2b12db4c962aa3795cc653e8a624d", - "block_index": 185, - "source": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", - "destination": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "tx_index": 52, + "tx_hash": "c78a916b13975e32514ea6fac0324481adfcc972f1db2cbabb96677db4d026cb", + "block_index": 186, + "source": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", + "destination": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "btc_amount": 2000, - "order_match_id": "675f8dccad4bdcf4b54ce5aca7ddc442f642d63e518d64ad6068a264fb9894e1_ebe20caac209f665277d0ac456ab451b4934a7d86529e24fd43b97535e62746a", + "order_match_id": "4844c5f31805a95e25af849d3e888b41d4cba82846300010c82895f4072e57f6_e2f9612faf4a7e6249958ba9d24aaf9e3d7a70b0dafaa5fb94dc51a088e6cf63", "status": "valid", "confirmed": true, - "block_time": 1726509867, + "block_time": 1727200982, "btc_amount_normalized": "0.00002000" } ], @@ -6457,102 +6735,56 @@ "/v2/orders//": { "result": [ { - "tx_index": 57, - "tx_hash": "7b7048040c893c69892bd088ce48db79b96b9c1d7221b50d903064ff5a1ed232", - "block_index": 191, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "give_asset": "XCP", - "give_quantity": 1000, - "give_remaining": 1000, - "get_asset": "BTC", - "get_quantity": 1000, - "get_remaining": 1000, + "tx_index": 51, + "tx_hash": "e2f9612faf4a7e6249958ba9d24aaf9e3d7a70b0dafaa5fb94dc51a088e6cf63", + "block_index": 186, + "source": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", + "give_asset": "BTC", + "give_quantity": 2000, + "give_remaining": 0, + "get_asset": "XCP", + "get_quantity": 2000, + "get_remaining": 0, "expiration": 21, - "expire_index": 212, + "expire_index": 206, "fee_required": 0, "fee_required_remaining": 0, "fee_provided": 10000, "fee_provided_remaining": 10000, - "status": "open", + "status": "filled", "confirmed": true, "market_pair": "BTC/XCP", - "market_dir": "BUY", + "market_dir": "SELL", "market_price": "1.00000000", - "block_time": 1726509903, + "block_time": 1727200982, "give_asset_info": { - "divisible": true, - "asset_longname": null, - "description": "The Counterparty protocol native currency", - "locked": true, - "issuer": null - }, - "get_asset_info": { "divisible": true, "asset_longname": null, "description": "The Bitcoin cryptocurrency", "locked": false, "issuer": null }, - "give_quantity_normalized": "0.00001000", - "get_quantity_normalized": "0.00001000", - "get_remaining_normalized": "0.00001000", - "give_remaining_normalized": "0.00001000", - "fee_provided_normalized": "0.00010000", - "fee_required_normalized": "0.00000000", - "fee_required_remaining_normalized": "0.00000000", - "fee_provided_remaining_normalized": "0.00010000" - }, - { - "tx_index": 55, - "tx_hash": "5e324d551a694d3f6ffc9c67b3db8817d470ba32257047ddee237d3d07c1a1e2", - "block_index": 190, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "give_asset": "XCP", - "give_quantity": 1000, - "give_remaining": 1000, - "get_asset": "BTC", - "get_quantity": 1000, - "get_remaining": 1000, - "expiration": 21, - "expire_index": 210, - "fee_required": 0, - "fee_required_remaining": 0, - "fee_provided": 10000, - "fee_provided_remaining": 10000, - "status": "cancelled", - "confirmed": true, - "market_pair": "BTC/XCP", - "market_dir": "BUY", - "market_price": "1.00000000", - "block_time": 1726509899, - "give_asset_info": { + "get_asset_info": { "divisible": true, "asset_longname": null, "description": "The Counterparty protocol native currency", "locked": true, "issuer": null }, - "get_asset_info": { - "divisible": true, - "asset_longname": null, - "description": "The Bitcoin cryptocurrency", - "locked": false, - "issuer": null - }, - "give_quantity_normalized": "0.00001000", - "get_quantity_normalized": "0.00001000", - "get_remaining_normalized": "0.00001000", - "give_remaining_normalized": "0.00001000", + "give_quantity_normalized": "0.00002000", + "get_quantity_normalized": "0.00002000", + "get_remaining_normalized": "0.00000000", + "give_remaining_normalized": "0.00000000", "fee_provided_normalized": "0.00010000", "fee_required_normalized": "0.00000000", "fee_required_remaining_normalized": "0.00000000", "fee_provided_remaining_normalized": "0.00010000" }, { - "tx_index": 52, - "tx_hash": "d87f4afa605375256bce3dab7d014314a751d0d998cdc0842ac2dfc8c2fa2b21", - "block_index": 186, - "source": "bcrt1q3ds7n4l97tumdkgcr3vyhe04zaxce8ujr8fmr2", + "tx_index": 53, + "tx_hash": "467f7e82754021f4a8a7e07800c1785d2619004c75fd9200884f7aa4def7caa7", + "block_index": 187, + "source": "bcrt1q9cf2ed4wk37qye08wlppw39l7prxws7afa3krk", "give_asset": "BTC", "give_quantity": 3000, "give_remaining": 0, @@ -6560,7 +6792,7 @@ "get_quantity": 3000, "get_remaining": 0, "expiration": 21, - "expire_index": 207, + "expire_index": 208, "fee_required": 0, "fee_required_remaining": 0, "fee_provided": 10000, @@ -6570,7 +6802,7 @@ "market_pair": "BTC/XCP", "market_dir": "SELL", "market_price": "1.00000000", - "block_time": 1726509871, + "block_time": 1727200986, "give_asset_info": { "divisible": true, "asset_longname": null, @@ -6595,56 +6827,56 @@ "fee_provided_remaining_normalized": "0.00010000" }, { - "tx_index": 50, - "tx_hash": "ebe20caac209f665277d0ac456ab451b4934a7d86529e24fd43b97535e62746a", - "block_index": 185, - "source": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", - "give_asset": "BTC", - "give_quantity": 2000, - "give_remaining": 0, - "get_asset": "XCP", - "get_quantity": 2000, - "get_remaining": 0, + "tx_index": 48, + "tx_hash": "f90bb3520b4cd8e8f43ae4a416ea102f6a45a4cfd10b4620066271057abde926", + "block_index": 183, + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "give_asset": "XCP", + "give_quantity": 1000, + "give_remaining": 1000, + "get_asset": "BTC", + "get_quantity": 1000, + "get_remaining": 1000, "expiration": 21, - "expire_index": 205, + "expire_index": 182, "fee_required": 0, "fee_required_remaining": 0, "fee_provided": 10000, "fee_provided_remaining": 10000, - "status": "filled", + "status": "expired", "confirmed": true, "market_pair": "BTC/XCP", - "market_dir": "SELL", + "market_dir": "BUY", "market_price": "1.00000000", - "block_time": 1726509867, + "block_time": 1727200899, "give_asset_info": { "divisible": true, "asset_longname": null, - "description": "The Bitcoin cryptocurrency", - "locked": false, + "description": "The Counterparty protocol native currency", + "locked": true, "issuer": null }, "get_asset_info": { "divisible": true, "asset_longname": null, - "description": "The Counterparty protocol native currency", - "locked": true, + "description": "The Bitcoin cryptocurrency", + "locked": false, "issuer": null }, - "give_quantity_normalized": "0.00002000", - "get_quantity_normalized": "0.00002000", - "get_remaining_normalized": "0.00000000", - "give_remaining_normalized": "0.00000000", + "give_quantity_normalized": "0.00001000", + "get_quantity_normalized": "0.00001000", + "get_remaining_normalized": "0.00001000", + "give_remaining_normalized": "0.00001000", "fee_provided_normalized": "0.00010000", "fee_required_normalized": "0.00000000", "fee_required_remaining_normalized": "0.00000000", "fee_provided_remaining_normalized": "0.00010000" }, { - "tx_index": 49, - "tx_hash": "675f8dccad4bdcf4b54ce5aca7ddc442f642d63e518d64ad6068a264fb9894e1", - "block_index": 186, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "tx_index": 50, + "tx_hash": "4844c5f31805a95e25af849d3e888b41d4cba82846300010c82895f4072e57f6", + "block_index": 187, + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "give_asset": "XCP", "give_quantity": 10000, "give_remaining": 5000, @@ -6652,7 +6884,7 @@ "get_quantity": 10000, "get_remaining": 5000, "expiration": 21, - "expire_index": 204, + "expire_index": 205, "fee_required": 0, "fee_required_remaining": 0, "fee_provided": 10000, @@ -6662,7 +6894,7 @@ "market_pair": "BTC/XCP", "market_dir": "BUY", "market_price": "1.00000000", - "block_time": 1726509871, + "block_time": 1727200986, "give_asset_info": { "divisible": true, "asset_longname": null, @@ -6685,38 +6917,84 @@ "fee_required_normalized": "0.00000000", "fee_required_remaining_normalized": "0.00000000", "fee_provided_remaining_normalized": "0.00010000" + }, + { + "tx_index": 56, + "tx_hash": "83919cf82dd5eb1e2e1f6d3f3f752d34d41636ed00ab8ff78369eb81475b8e57", + "block_index": 191, + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "give_asset": "XCP", + "give_quantity": 1000, + "give_remaining": 1000, + "get_asset": "BTC", + "get_quantity": 1000, + "get_remaining": 1000, + "expiration": 21, + "expire_index": 211, + "fee_required": 0, + "fee_required_remaining": 0, + "fee_provided": 10000, + "fee_provided_remaining": 10000, + "status": "cancelled", + "confirmed": true, + "market_pair": "BTC/XCP", + "market_dir": "BUY", + "market_price": "1.00000000", + "block_time": 1727201003, + "give_asset_info": { + "divisible": true, + "asset_longname": null, + "description": "The Counterparty protocol native currency", + "locked": true, + "issuer": null + }, + "get_asset_info": { + "divisible": true, + "asset_longname": null, + "description": "The Bitcoin cryptocurrency", + "locked": false, + "issuer": null + }, + "give_quantity_normalized": "0.00001000", + "get_quantity_normalized": "0.00001000", + "get_remaining_normalized": "0.00001000", + "give_remaining_normalized": "0.00001000", + "fee_provided_normalized": "0.00010000", + "fee_required_normalized": "0.00000000", + "fee_required_remaining_normalized": "0.00000000", + "fee_provided_remaining_normalized": "0.00010000" } ], - "next_cursor": 48, + "next_cursor": 58, "result_count": 7 }, "/v2/orders///matches": { "result": [ { - "id": "675f8dccad4bdcf4b54ce5aca7ddc442f642d63e518d64ad6068a264fb9894e1_d87f4afa605375256bce3dab7d014314a751d0d998cdc0842ac2dfc8c2fa2b21", - "tx0_index": 49, - "tx0_hash": "675f8dccad4bdcf4b54ce5aca7ddc442f642d63e518d64ad6068a264fb9894e1", - "tx0_address": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "tx1_index": 52, - "tx1_hash": "d87f4afa605375256bce3dab7d014314a751d0d998cdc0842ac2dfc8c2fa2b21", - "tx1_address": "bcrt1q3ds7n4l97tumdkgcr3vyhe04zaxce8ujr8fmr2", + "id": "4844c5f31805a95e25af849d3e888b41d4cba82846300010c82895f4072e57f6_467f7e82754021f4a8a7e07800c1785d2619004c75fd9200884f7aa4def7caa7", + "tx0_index": 50, + "tx0_hash": "4844c5f31805a95e25af849d3e888b41d4cba82846300010c82895f4072e57f6", + "tx0_address": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "tx1_index": 53, + "tx1_hash": "467f7e82754021f4a8a7e07800c1785d2619004c75fd9200884f7aa4def7caa7", + "tx1_address": "bcrt1q9cf2ed4wk37qye08wlppw39l7prxws7afa3krk", "forward_asset": "XCP", "forward_quantity": 3000, "backward_asset": "BTC", "backward_quantity": 3000, - "tx0_block_index": 184, - "tx1_block_index": 186, - "block_index": 186, + "tx0_block_index": 185, + "tx1_block_index": 187, + "block_index": 187, "tx0_expiration": 21, "tx1_expiration": 21, - "match_expire_index": 206, + "match_expire_index": 207, "fee_paid": 0, "status": "pending", "confirmed": true, "market_pair": "BTC/XCP", "market_dir": "BUY", "market_price": "1.00000000", - "block_time": 1726509871, + "block_time": 1727200986, "forward_asset_info": { "divisible": true, "asset_longname": null, @@ -6736,30 +7014,30 @@ "fee_paid_normalized": "0.00000000" }, { - "id": "675f8dccad4bdcf4b54ce5aca7ddc442f642d63e518d64ad6068a264fb9894e1_ebe20caac209f665277d0ac456ab451b4934a7d86529e24fd43b97535e62746a", - "tx0_index": 49, - "tx0_hash": "675f8dccad4bdcf4b54ce5aca7ddc442f642d63e518d64ad6068a264fb9894e1", - "tx0_address": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "tx1_index": 50, - "tx1_hash": "ebe20caac209f665277d0ac456ab451b4934a7d86529e24fd43b97535e62746a", - "tx1_address": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", + "id": "4844c5f31805a95e25af849d3e888b41d4cba82846300010c82895f4072e57f6_e2f9612faf4a7e6249958ba9d24aaf9e3d7a70b0dafaa5fb94dc51a088e6cf63", + "tx0_index": 50, + "tx0_hash": "4844c5f31805a95e25af849d3e888b41d4cba82846300010c82895f4072e57f6", + "tx0_address": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "tx1_index": 51, + "tx1_hash": "e2f9612faf4a7e6249958ba9d24aaf9e3d7a70b0dafaa5fb94dc51a088e6cf63", + "tx1_address": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", "forward_asset": "XCP", "forward_quantity": 2000, "backward_asset": "BTC", "backward_quantity": 2000, - "tx0_block_index": 183, - "tx1_block_index": 184, - "block_index": 185, + "tx0_block_index": 184, + "tx1_block_index": 185, + "block_index": 186, "tx0_expiration": 21, "tx1_expiration": 21, - "match_expire_index": 204, + "match_expire_index": 205, "fee_paid": 0, "status": "completed", "confirmed": true, "market_pair": "BTC/XCP", "market_dir": "BUY", "market_price": "1.00000000", - "block_time": 1726509867, + "block_time": 1727200982, "forward_asset_info": { "divisible": true, "asset_longname": null, @@ -6779,30 +7057,30 @@ "fee_paid_normalized": "0.00000000" }, { - "id": "e2263719273ed7cbb5496ae9daff21e24a2899e76feea1abbd4e91fa72766b5d_afd6eab5bb50283dc170ad276157e78db2dc90cb330d559320b9adc3721a1fbc", - "tx0_index": 47, - "tx0_hash": "e2263719273ed7cbb5496ae9daff21e24a2899e76feea1abbd4e91fa72766b5d", - "tx0_address": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "tx1_index": 48, - "tx1_hash": "afd6eab5bb50283dc170ad276157e78db2dc90cb330d559320b9adc3721a1fbc", - "tx1_address": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", + "id": "f90bb3520b4cd8e8f43ae4a416ea102f6a45a4cfd10b4620066271057abde926_3a7ea4dc466a608d47050ca02aa94f8d84ae9ea60b94dcf727b3e6eb8728e8d8", + "tx0_index": 48, + "tx0_hash": "f90bb3520b4cd8e8f43ae4a416ea102f6a45a4cfd10b4620066271057abde926", + "tx0_address": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "tx1_index": 49, + "tx1_hash": "3a7ea4dc466a608d47050ca02aa94f8d84ae9ea60b94dcf727b3e6eb8728e8d8", + "tx1_address": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", "forward_asset": "XCP", "forward_quantity": 1000, "backward_asset": "BTC", "backward_quantity": 1000, - "tx0_block_index": 160, - "tx1_block_index": 161, - "block_index": 182, + "tx0_block_index": 161, + "tx1_block_index": 162, + "block_index": 183, "tx0_expiration": 21, "tx1_expiration": 20, - "match_expire_index": 181, + "match_expire_index": 182, "fee_paid": 0, "status": "expired", "confirmed": true, "market_pair": "BTC/XCP", "market_dir": "BUY", "market_price": "1.00000000", - "block_time": 1726509796, + "block_time": 1727200899, "forward_asset_info": { "divisible": true, "asset_longname": null, @@ -6828,27 +7106,27 @@ "/v2/order_matches": { "result": [ { - "id": "675f8dccad4bdcf4b54ce5aca7ddc442f642d63e518d64ad6068a264fb9894e1_d87f4afa605375256bce3dab7d014314a751d0d998cdc0842ac2dfc8c2fa2b21", - "tx0_index": 49, - "tx0_hash": "675f8dccad4bdcf4b54ce5aca7ddc442f642d63e518d64ad6068a264fb9894e1", - "tx0_address": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "tx1_index": 52, - "tx1_hash": "d87f4afa605375256bce3dab7d014314a751d0d998cdc0842ac2dfc8c2fa2b21", - "tx1_address": "bcrt1q3ds7n4l97tumdkgcr3vyhe04zaxce8ujr8fmr2", + "id": "4844c5f31805a95e25af849d3e888b41d4cba82846300010c82895f4072e57f6_467f7e82754021f4a8a7e07800c1785d2619004c75fd9200884f7aa4def7caa7", + "tx0_index": 50, + "tx0_hash": "4844c5f31805a95e25af849d3e888b41d4cba82846300010c82895f4072e57f6", + "tx0_address": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "tx1_index": 53, + "tx1_hash": "467f7e82754021f4a8a7e07800c1785d2619004c75fd9200884f7aa4def7caa7", + "tx1_address": "bcrt1q9cf2ed4wk37qye08wlppw39l7prxws7afa3krk", "forward_asset": "XCP", "forward_quantity": 3000, "backward_asset": "BTC", "backward_quantity": 3000, - "tx0_block_index": 184, - "tx1_block_index": 186, - "block_index": 186, + "tx0_block_index": 185, + "tx1_block_index": 187, + "block_index": 187, "tx0_expiration": 21, "tx1_expiration": 21, - "match_expire_index": 206, + "match_expire_index": 207, "fee_paid": 0, "status": "pending", "confirmed": true, - "block_time": 1726509871, + "block_time": 1727200986, "forward_asset_info": { "divisible": true, "asset_longname": null, @@ -6868,27 +7146,27 @@ "fee_paid_normalized": "0.00000000" }, { - "id": "675f8dccad4bdcf4b54ce5aca7ddc442f642d63e518d64ad6068a264fb9894e1_ebe20caac209f665277d0ac456ab451b4934a7d86529e24fd43b97535e62746a", - "tx0_index": 49, - "tx0_hash": "675f8dccad4bdcf4b54ce5aca7ddc442f642d63e518d64ad6068a264fb9894e1", - "tx0_address": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "tx1_index": 50, - "tx1_hash": "ebe20caac209f665277d0ac456ab451b4934a7d86529e24fd43b97535e62746a", - "tx1_address": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", + "id": "4844c5f31805a95e25af849d3e888b41d4cba82846300010c82895f4072e57f6_e2f9612faf4a7e6249958ba9d24aaf9e3d7a70b0dafaa5fb94dc51a088e6cf63", + "tx0_index": 50, + "tx0_hash": "4844c5f31805a95e25af849d3e888b41d4cba82846300010c82895f4072e57f6", + "tx0_address": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "tx1_index": 51, + "tx1_hash": "e2f9612faf4a7e6249958ba9d24aaf9e3d7a70b0dafaa5fb94dc51a088e6cf63", + "tx1_address": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", "forward_asset": "XCP", "forward_quantity": 2000, "backward_asset": "BTC", "backward_quantity": 2000, - "tx0_block_index": 183, - "tx1_block_index": 184, - "block_index": 185, + "tx0_block_index": 184, + "tx1_block_index": 185, + "block_index": 186, "tx0_expiration": 21, "tx1_expiration": 21, - "match_expire_index": 204, + "match_expire_index": 205, "fee_paid": 0, "status": "completed", "confirmed": true, - "block_time": 1726509867, + "block_time": 1727200982, "forward_asset_info": { "divisible": true, "asset_longname": null, @@ -6908,27 +7186,27 @@ "fee_paid_normalized": "0.00000000" }, { - "id": "e2263719273ed7cbb5496ae9daff21e24a2899e76feea1abbd4e91fa72766b5d_afd6eab5bb50283dc170ad276157e78db2dc90cb330d559320b9adc3721a1fbc", - "tx0_index": 47, - "tx0_hash": "e2263719273ed7cbb5496ae9daff21e24a2899e76feea1abbd4e91fa72766b5d", - "tx0_address": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "tx1_index": 48, - "tx1_hash": "afd6eab5bb50283dc170ad276157e78db2dc90cb330d559320b9adc3721a1fbc", - "tx1_address": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", + "id": "f90bb3520b4cd8e8f43ae4a416ea102f6a45a4cfd10b4620066271057abde926_3a7ea4dc466a608d47050ca02aa94f8d84ae9ea60b94dcf727b3e6eb8728e8d8", + "tx0_index": 48, + "tx0_hash": "f90bb3520b4cd8e8f43ae4a416ea102f6a45a4cfd10b4620066271057abde926", + "tx0_address": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "tx1_index": 49, + "tx1_hash": "3a7ea4dc466a608d47050ca02aa94f8d84ae9ea60b94dcf727b3e6eb8728e8d8", + "tx1_address": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", "forward_asset": "XCP", "forward_quantity": 1000, "backward_asset": "BTC", "backward_quantity": 1000, - "tx0_block_index": 160, - "tx1_block_index": 161, - "block_index": 182, + "tx0_block_index": 161, + "tx1_block_index": 162, + "block_index": 183, "tx0_expiration": 21, "tx1_expiration": 20, - "match_expire_index": 181, + "match_expire_index": 182, "fee_paid": 0, "status": "expired", "confirmed": true, - "block_time": 1726509796, + "block_time": 1727200899, "forward_asset_info": { "divisible": true, "asset_longname": null, @@ -6973,66 +7251,66 @@ "result": [ { "tx_index": 9, - "tx_hash": "2504c4bdafa1c2cab23605685e6a8040748f7d6df91f857b42f1cb259d3a91e0", + "tx_hash": "bb35e686d434cae9951da80cf904917280d38b8251f1626625123d1a058d4a6d", "block_index": 121, - "source": "bcrt1qyzyw25seaw22494hrmtlwsm3d5mqyp93fd25da", + "source": "bcrt1quygvuzd7gsxym55nf7w85agucgajyp9p5jduqp", "burned": 50000000, "earned": 74999996667, "status": "valid", "confirmed": true, - "block_time": 1726509573, + "block_time": 1727200719, "burned_normalized": "0.50000000", "earned_normalized": "749.99997000" }, { "tx_index": 8, - "tx_hash": "6322f2e8e202acc14afc1b22b19ac8ab56b27f17712400d116568a1da72222cc", + "tx_hash": "b51b2867cf3c155fd34050bdca7366bee0cdec885a9d99baf3528307a7e27db6", "block_index": 120, - "source": "bcrt1qrqg60l5vguevyqtnw4ym5hdth8jm4zmk0fxn99", + "source": "bcrt1qtwywdknya042p0342nhnjk05557lxwysfw6vuj", "burned": 50000000, "earned": 74999996833, "status": "valid", "confirmed": true, - "block_time": 1726509569, + "block_time": 1727200715, "burned_normalized": "0.50000000", "earned_normalized": "749.99997000" }, { "tx_index": 7, - "tx_hash": "38fc46963011e93a419c7d62e149905064cd942d143e7452ee3a67a6183f9e98", + "tx_hash": "328eaf6b9d4677ede9e9e97effbd0d13104f5055317a9974961d8de95cba585c", "block_index": 119, - "source": "bcrt1qqt2dxp9pmcgvjrckeyuy29myfghay5le53hl0d", + "source": "bcrt1qtmd9xj5r7dlk044rn35kqqdmy62jpnf6u52x9z", "burned": 50000000, "earned": 74999997000, "status": "valid", "confirmed": true, - "block_time": 1726509565, + "block_time": 1727200710, "burned_normalized": "0.50000000", "earned_normalized": "749.99997000" }, { "tx_index": 6, - "tx_hash": "f8d15199587f10cbe7ee5233aba5c8fcc99d9ba2e1c6995360c80912f6eb2a6c", + "tx_hash": "3881d5577b826809c73539506d45d0ba91960069911a94563115003d1bd1427b", "block_index": 118, - "source": "bcrt1qlqcrlvw5t7cnj8r9hjl0qq67c2fyk5kvfra90p", + "source": "bcrt1qfvucymcd7u04hpd7eafsmxwnashcmaqs54q79p", "burned": 50000000, "earned": 74999997167, "status": "valid", "confirmed": true, - "block_time": 1726509560, + "block_time": 1727200706, "burned_normalized": "0.50000000", "earned_normalized": "749.99997000" }, { "tx_index": 5, - "tx_hash": "7b45fa1f2e5deab279659946a3af0948830f02d9df9dd929afc3d897f23384ef", + "tx_hash": "3a8d701d6ce7937fb5069dda57641ea7218382a8654ad0344f861e12ca6717d1", "block_index": 117, - "source": "bcrt1qlm44vh2ynrtqwh8j2mptwrzzfd04czsya4wxcd", + "source": "bcrt1qeshrsce6vyx833j2p85aesnx0aj9sxjtt79jak", "burned": 50000000, "earned": 74999997333, "status": "valid", "confirmed": true, - "block_time": 1726509556, + "block_time": 1727200702, "burned_normalized": "0.50000000", "earned_normalized": "749.99997000" } @@ -7043,29 +7321,29 @@ "/v2/dispensers": { "result": [ { - "tx_index": 32, - "tx_hash": "5c8374a3882f222038bbf9a0cce7589e84b790915b9228d66af1a5b0eb61ea2d", - "block_index": 146, - "source": "bcrt1qlm44vh2ynrtqwh8j2mptwrzzfd04czsya4wxcd", + "tx_index": 26, + "tx_hash": "3df6d90991175a0c2aabbe0dc87cacd5d92c90cb996ce5b1514492f2585c61fc", + "block_index": 141, + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "asset": "XCP", "give_quantity": 1, "escrow_quantity": 10000, "satoshirate": 1, - "status": 0, - "give_remaining": 9334, - "oracle_address": "bcrt1qlm44vh2ynrtqwh8j2mptwrzzfd04czsya4wxcd", + "status": 10, + "give_remaining": 0, + "oracle_address": null, "last_status_tx_hash": null, - "origin": "bcrt1qlm44vh2ynrtqwh8j2mptwrzzfd04czsya4wxcd", - "dispense_count": 1, + "origin": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "dispense_count": 2, "last_status_tx_source": null, "close_block_index": null, "confirmed": true, - "fiat_price": 0.01, - "oracle_price": 66600.0, - "fiat_unit": "USD", - "oracle_price_last_updated": 138, - "satoshi_price": 16, - "block_time": 1726509701, + "fiat_price": null, + "oracle_price": null, + "fiat_unit": null, + "oracle_price_last_updated": null, + "satoshi_price": 1, + "block_time": 1727200803, "asset_info": { "divisible": true, "asset_longname": null, @@ -7074,25 +7352,25 @@ "issuer": null }, "give_quantity_normalized": "0.00000001", - "give_remaining_normalized": "0.00009334", + "give_remaining_normalized": "0.00000000", "escrow_quantity_normalized": "0.00010000", "satoshirate_normalized": "0.00000001", - "satoshi_price_normalized": "0.00000016" + "satoshi_price_normalized": "0.00000001" }, { - "tx_index": 30, - "tx_hash": "d3713f7f4355cf95ddb00030d4c53655897b901d6827b640ee27cc83efaba2e6", - "block_index": 144, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "tx_index": 29, + "tx_hash": "aa785aa095076658df4575becc62c26d1e549a540599459cf332e9f44ae51019", + "block_index": 142, + "source": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "asset": "XCP", "give_quantity": 1, - "escrow_quantity": 10, + "escrow_quantity": 10000, "satoshirate": 1, "status": 0, - "give_remaining": 20, + "give_remaining": 10000, "oracle_address": null, "last_status_tx_hash": null, - "origin": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "origin": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "dispense_count": 0, "last_status_tx_source": null, "close_block_index": null, @@ -7102,7 +7380,7 @@ "fiat_unit": null, "oracle_price_last_updated": null, "satoshi_price": 1, - "block_time": 1726509693, + "block_time": 1727200806, "asset_info": { "divisible": true, "asset_longname": null, @@ -7111,35 +7389,35 @@ "issuer": null }, "give_quantity_normalized": "0.00000001", - "give_remaining_normalized": "0.00000020", - "escrow_quantity_normalized": "0.00000010", + "give_remaining_normalized": "0.00010000", + "escrow_quantity_normalized": "0.00010000", "satoshirate_normalized": "0.00000001", "satoshi_price_normalized": "0.00000001" }, { - "tx_index": 29, - "tx_hash": "ee65a85736487849d0d1ac06ea09424e477194edd27c7c31afbe06f4fbb6142c", - "block_index": 142, - "source": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "tx_index": 33, + "tx_hash": "1e7bea513de78cabf444b974fdb0efb4304b18bd990a889d7a0f8b0e3d21b6ea", + "block_index": 147, + "source": "bcrt1qeshrsce6vyx833j2p85aesnx0aj9sxjtt79jak", "asset": "XCP", "give_quantity": 1, "escrow_quantity": 10000, "satoshirate": 1, "status": 0, - "give_remaining": 10000, - "oracle_address": null, + "give_remaining": 9334, + "oracle_address": "bcrt1qeshrsce6vyx833j2p85aesnx0aj9sxjtt79jak", "last_status_tx_hash": null, - "origin": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", - "dispense_count": 0, + "origin": "bcrt1qeshrsce6vyx833j2p85aesnx0aj9sxjtt79jak", + "dispense_count": 1, "last_status_tx_source": null, "close_block_index": null, "confirmed": true, - "fiat_price": null, - "oracle_price": null, - "fiat_unit": null, - "oracle_price_last_updated": null, - "satoshi_price": 1, - "block_time": 1726509684, + "fiat_price": 0.01, + "oracle_price": 66600.0, + "fiat_unit": "USD", + "oracle_price_last_updated": 138, + "satoshi_price": 16, + "block_time": 1727200827, "asset_info": { "divisible": true, "asset_longname": null, @@ -7148,35 +7426,35 @@ "issuer": null }, "give_quantity_normalized": "0.00000001", - "give_remaining_normalized": "0.00010000", + "give_remaining_normalized": "0.00009334", "escrow_quantity_normalized": "0.00010000", "satoshirate_normalized": "0.00000001", - "satoshi_price_normalized": "0.00000001" + "satoshi_price_normalized": "0.00000016" }, { - "tx_index": 26, - "tx_hash": "e4fcdf91df3b0bbacb56d49f65bba5e59c88e92c829d7c8b3f251d5e20457f4e", - "block_index": 141, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "tx_index": 30, + "tx_hash": "e6a18e565cab14aec4ba641f48a311c8643793f8fa84b25141ced517eaefc6f9", + "block_index": 150, + "source": "mtFzzdWHLZqWVVMGKENQscisyMTejQamk6", "asset": "XCP", "give_quantity": 1, - "escrow_quantity": 10000, + "escrow_quantity": 10, "satoshirate": 1, "status": 10, "give_remaining": 0, "oracle_address": null, - "last_status_tx_hash": null, - "origin": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "dispense_count": 2, - "last_status_tx_source": null, - "close_block_index": null, + "last_status_tx_hash": "d2fb8bc72b0250cee9a35d9f657f0d4eb12286a93b930f502d166903f57fafb9", + "origin": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "dispense_count": 0, + "last_status_tx_source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "close_block_index": "150", "confirmed": true, "fiat_price": null, "oracle_price": null, "fiat_unit": null, "oracle_price_last_updated": null, "satoshi_price": 1, - "block_time": 1726509680, + "block_time": 1727200840, "asset_info": { "divisible": true, "asset_longname": null, @@ -7186,7 +7464,7 @@ }, "give_quantity_normalized": "0.00000001", "give_remaining_normalized": "0.00000000", - "escrow_quantity_normalized": "0.00010000", + "escrow_quantity_normalized": "0.00000010", "satoshirate_normalized": "0.00000001", "satoshi_price_normalized": "0.00000001" } @@ -7197,9 +7475,9 @@ "/v2/dispensers/": { "result": { "tx_index": 26, - "tx_hash": "e4fcdf91df3b0bbacb56d49f65bba5e59c88e92c829d7c8b3f251d5e20457f4e", + "tx_hash": "3df6d90991175a0c2aabbe0dc87cacd5d92c90cb996ce5b1514492f2585c61fc", "block_index": 141, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "asset": "XCP", "give_quantity": 1, "escrow_quantity": 10000, @@ -7208,7 +7486,7 @@ "give_remaining": 0, "oracle_address": null, "last_status_tx_hash": null, - "origin": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "origin": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "dispense_count": 2, "last_status_tx_source": null, "close_block_index": null, @@ -7218,7 +7496,7 @@ "fiat_unit": null, "oracle_price_last_updated": null, "satoshi_price": 1, - "block_time": 1726509680, + "block_time": 1727200803, "asset_info": { "divisible": true, "asset_longname": null, @@ -7238,19 +7516,19 @@ { "tx_index": 28, "dispense_index": 0, - "tx_hash": "ab0fd3f5a4ce7ef637dfa113da8a1d7ca7f9b7b8ef7bea07721c55ef2aee9d2f", + "tx_hash": "6ae257db1a77e44eb808057e9944b6f6e15eebf699db2c77f3009100a550b7fa", "block_index": 141, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "destination": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "destination": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", "asset": "XCP", "dispense_quantity": 4000, - "dispenser_tx_hash": "e4fcdf91df3b0bbacb56d49f65bba5e59c88e92c829d7c8b3f251d5e20457f4e", + "dispenser_tx_hash": "3df6d90991175a0c2aabbe0dc87cacd5d92c90cb996ce5b1514492f2585c61fc", "btc_amount": 4000, "confirmed": true, "dispenser": { "tx_index": 26, "block_index": 141, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "give_quantity": 1, "escrow_quantity": 10000, "satoshirate": 1, @@ -7258,7 +7536,7 @@ "give_remaining": 0, "oracle_address": null, "last_status_tx_hash": null, - "origin": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "origin": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "dispense_count": 2, "last_status_tx_source": null, "close_block_index": null, @@ -7273,7 +7551,7 @@ "satoshirate_normalized": "0.00000001", "satoshi_price_normalized": "0.00000001" }, - "block_time": 1726509680, + "block_time": 1727200803, "asset_info": { "divisible": true, "asset_longname": null, @@ -7287,19 +7565,19 @@ { "tx_index": 27, "dispense_index": 0, - "tx_hash": "54eee03a80a18a6e816f27408ce071f7c7fefac72abc8ade14e835ad5f1563ce", + "tx_hash": "2a07cfa93bced14f59b80e10872f5fe4a406622078c0b85295c5c4149820d102", "block_index": 140, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "destination": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "destination": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", "asset": "XCP", "dispense_quantity": 6000, - "dispenser_tx_hash": "e4fcdf91df3b0bbacb56d49f65bba5e59c88e92c829d7c8b3f251d5e20457f4e", + "dispenser_tx_hash": "3df6d90991175a0c2aabbe0dc87cacd5d92c90cb996ce5b1514492f2585c61fc", "btc_amount": 6000, "confirmed": true, "dispenser": { "tx_index": 26, "block_index": 141, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "give_quantity": 1, "escrow_quantity": 10000, "satoshirate": 1, @@ -7307,7 +7585,7 @@ "give_remaining": 0, "oracle_address": null, "last_status_tx_hash": null, - "origin": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "origin": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "dispense_count": 2, "last_status_tx_source": null, "close_block_index": null, @@ -7322,7 +7600,7 @@ "satoshirate_normalized": "0.00000001", "satoshi_price_normalized": "0.00000001" }, - "block_time": 1726509665, + "block_time": 1727200798, "asset_info": { "divisible": true, "asset_longname": null, @@ -7340,21 +7618,21 @@ "/v2/dividends": { "result": [ { - "tx_index": 40, - "tx_hash": "65e4ec441796883270c7bb0f18ca610e54b1ad0b3ae8a33e572bca985f65ee00", - "block_index": 153, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "tx_index": 41, + "tx_hash": "1b9303b3959067c0857fe1abb4fdd4b3684c7534c12691382004cc31a9afcca4", + "block_index": 154, + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "asset": "MYASSETA", "dividend_asset": "XCP", "quantity_per_unit": 100000000, "fee_paid": 40000, "status": "valid", "confirmed": true, - "block_time": 1726509732, + "block_time": 1727200857, "asset_info": { "asset_longname": null, "description": "My super asset A", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, @@ -7374,21 +7652,21 @@ }, "/v2/dividends/": { "result": { - "tx_index": 40, - "tx_hash": "65e4ec441796883270c7bb0f18ca610e54b1ad0b3ae8a33e572bca985f65ee00", - "block_index": 153, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "tx_index": 41, + "tx_hash": "1b9303b3959067c0857fe1abb4fdd4b3684c7534c12691382004cc31a9afcca4", + "block_index": 154, + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "asset": "MYASSETA", "dividend_asset": "XCP", "quantity_per_unit": 100000000, "fee_paid": 40000, "status": "valid", "confirmed": true, - "block_time": 1726509732, + "block_time": 1727200857, "asset_info": { "asset_longname": null, "description": "My super asset A", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, @@ -7406,17 +7684,17 @@ "/v2/dividends//credits": { "result": [ { - "block_index": 153, + "block_index": 154, "address": null, "asset": "XCP", "quantity": 1500000000, "calling_function": "dividend", - "event": "65e4ec441796883270c7bb0f18ca610e54b1ad0b3ae8a33e572bca985f65ee00", - "tx_index": 40, - "utxo": "9d34a868637906281a292d50facdb8551872a2d08cd28cf7a895f10f80cb0b32:0", - "utxo_address": "bcrt1qlm44vh2ynrtqwh8j2mptwrzzfd04czsya4wxcd", + "event": "1b9303b3959067c0857fe1abb4fdd4b3684c7534c12691382004cc31a9afcca4", + "tx_index": 41, + "utxo": "99ac4db802d5262ae35de8b542d298d4a28719ccffb6ffd8d462f40e8435bdd8:0", + "utxo_address": "bcrt1qeshrsce6vyx833j2p85aesnx0aj9sxjtt79jak", "confirmed": true, - "block_time": 1726509732, + "block_time": 1727200857, "asset_info": { "divisible": true, "asset_longname": null, @@ -7427,17 +7705,17 @@ "quantity_normalized": "15.00000000" }, { - "block_index": 153, - "address": "bcrt1qghqkpk28xhsruvxjphq0ecx2ec35v90uksf2j0", + "block_index": 154, + "address": "bcrt1qe4v63z8qa2kvy5yzt4ssr8zhwxgqw84j8nmhvg", "asset": "XCP", "quantity": 500000000, "calling_function": "dividend", - "event": "65e4ec441796883270c7bb0f18ca610e54b1ad0b3ae8a33e572bca985f65ee00", - "tx_index": 40, + "event": "1b9303b3959067c0857fe1abb4fdd4b3684c7534c12691382004cc31a9afcca4", + "tx_index": 41, "utxo": null, "utxo_address": null, "confirmed": true, - "block_time": 1726509732, + "block_time": 1727200857, "asset_info": { "divisible": true, "asset_longname": null, @@ -7454,45 +7732,45 @@ "/v2/events": { "result": [ { - "event_index": 535, + "event_index": 542, "event": "BLOCK_PARSED", "params": { - "block_index": 193, - "ledger_hash": "260bca5241d162936ae20e643b78cd69f7c3d74370745be7447cbaae1dde9a9c", - "messages_hash": "a5b39b3745218a45506fcbd2397ab67628c6263f2173159bdf4b259978114bde", + "block_index": 194, + "ledger_hash": "d16329e826a589a6af06767a820f5914ee69e22398c8612ed0c73909a1ab9b1f", + "messages_hash": "1bc8906db34e5bf45f47eca127e2b4cc60e46bbc8cf4301617e02c6f29b32301", "transaction_count": 1, - "txlist_hash": "1ecd81dbebae4723fab572ad7f59f8712a540b524662de521ea50631e83b7e7b", - "block_time": 1726509912 + "txlist_hash": "555a7b8103a776f23b649ec297d2177fe885443dc976750a259547be47cd26e7", + "block_time": 1727201016 }, "tx_hash": null, - "block_index": 193, - "block_time": 1726509912 + "block_index": 194, + "block_time": 1727201016 }, { - "event_index": 534, + "event_index": 541, "event": "TRANSACTION_PARSED", "params": { "supported": true, - "tx_hash": "f79c39d2a2896a86ef0bb2370101c664b69f2b9387afcd377d8226b839d419ce", - "tx_index": 59 + "tx_hash": "da0a0e76bfc982e2bbed2679a71f4e2d3ebc01140b448f430bb01b50f7ceaabb", + "tx_index": 60 }, - "tx_hash": "f79c39d2a2896a86ef0bb2370101c664b69f2b9387afcd377d8226b839d419ce", - "block_index": 193, - "block_time": 1726509912 + "tx_hash": "da0a0e76bfc982e2bbed2679a71f4e2d3ebc01140b448f430bb01b50f7ceaabb", + "block_index": 194, + "block_time": 1727201016 }, { - "event_index": 533, + "event_index": 540, "event": "ASSET_DESTRUCTION", "params": { "asset": "XCP", - "block_index": 193, + "block_index": 194, "quantity": 1, - "source": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "source": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "status": "valid", "tag": "64657374726f79", - "tx_hash": "f79c39d2a2896a86ef0bb2370101c664b69f2b9387afcd377d8226b839d419ce", - "tx_index": 59, - "block_time": 1726509912, + "tx_hash": "da0a0e76bfc982e2bbed2679a71f4e2d3ebc01140b448f430bb01b50f7ceaabb", + "tx_index": 60, + "block_time": 1727201016, "asset_info": { "divisible": true, "asset_longname": null, @@ -7502,24 +7780,24 @@ }, "quantity_normalized": "0.00000001" }, - "tx_hash": "f79c39d2a2896a86ef0bb2370101c664b69f2b9387afcd377d8226b839d419ce", - "block_index": 193, - "block_time": 1726509912 + "tx_hash": "da0a0e76bfc982e2bbed2679a71f4e2d3ebc01140b448f430bb01b50f7ceaabb", + "block_index": 194, + "block_time": 1727201016 }, { - "event_index": 532, + "event_index": 539, "event": "DEBIT", "params": { "action": "destroy", - "address": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "address": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "asset": "XCP", - "block_index": 193, - "event": "f79c39d2a2896a86ef0bb2370101c664b69f2b9387afcd377d8226b839d419ce", + "block_index": 194, + "event": "da0a0e76bfc982e2bbed2679a71f4e2d3ebc01140b448f430bb01b50f7ceaabb", "quantity": 1, - "tx_index": 59, + "tx_index": 60, "utxo": null, "utxo_address": null, - "block_time": 1726509912, + "block_time": 1727201016, "asset_info": { "divisible": true, "asset_longname": null, @@ -7529,25 +7807,25 @@ }, "quantity_normalized": "0.00000001" }, - "tx_hash": "f79c39d2a2896a86ef0bb2370101c664b69f2b9387afcd377d8226b839d419ce", - "block_index": 193, - "block_time": 1726509912 + "tx_hash": "da0a0e76bfc982e2bbed2679a71f4e2d3ebc01140b448f430bb01b50f7ceaabb", + "block_index": 194, + "block_time": 1727201016 }, { - "event_index": 531, + "event_index": 538, "event": "NEW_TRANSACTION", "params": { - "block_hash": "0c078dccb9971fd739e4646df2613ddf86bea7f006a0ec0aabf2253f9f835f58", - "block_index": 193, - "block_time": 1726509912, + "block_hash": "52ace614bdf700970fae116cbd930af95fe09c4faee117d3d3c0c24860eedf93", + "block_index": 194, + "block_time": 1727201016, "btc_amount": 0, "data": "6e0000000000000001000000000000000164657374726f79", "destination": "", "fee": 10000, - "source": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", - "tx_hash": "f79c39d2a2896a86ef0bb2370101c664b69f2b9387afcd377d8226b839d419ce", - "tx_index": 59, - "utxos_info": "f79c39d2a2896a86ef0bb2370101c664b69f2b9387afcd377d8226b839d419ce:1", + "source": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", + "tx_hash": "da0a0e76bfc982e2bbed2679a71f4e2d3ebc01140b448f430bb01b50f7ceaabb", + "tx_index": 60, + "utxos_info": "da0a0e76bfc982e2bbed2679a71f4e2d3ebc01140b448f430bb01b50f7ceaabb:1", "unpacked_data": { "message_type": "destroy", "message_type_id": 110, @@ -7567,29 +7845,29 @@ }, "btc_amount_normalized": "0.00000000" }, - "tx_hash": "f79c39d2a2896a86ef0bb2370101c664b69f2b9387afcd377d8226b839d419ce", - "block_index": 193, - "block_time": 1726509912 + "tx_hash": "da0a0e76bfc982e2bbed2679a71f4e2d3ebc01140b448f430bb01b50f7ceaabb", + "block_index": 194, + "block_time": 1727201016 } ], - "next_cursor": 530, - "result_count": 536 + "next_cursor": 537, + "result_count": 543 }, "/v2/events/": { "result": { - "event_index": 535, + "event_index": 542, "event": "BLOCK_PARSED", "params": { - "block_index": 193, - "ledger_hash": "260bca5241d162936ae20e643b78cd69f7c3d74370745be7447cbaae1dde9a9c", - "messages_hash": "a5b39b3745218a45506fcbd2397ab67628c6263f2173159bdf4b259978114bde", + "block_index": 194, + "ledger_hash": "d16329e826a589a6af06767a820f5914ee69e22398c8612ed0c73909a1ab9b1f", + "messages_hash": "1bc8906db34e5bf45f47eca127e2b4cc60e46bbc8cf4301617e02c6f29b32301", "transaction_count": 1, - "txlist_hash": "1ecd81dbebae4723fab572ad7f59f8712a540b524662de521ea50631e83b7e7b", - "block_time": 1726509912 + "txlist_hash": "555a7b8103a776f23b649ec297d2177fe885443dc976750a259547be47cd26e7", + "block_time": 1727201016 }, "tx_hash": null, - "block_index": 193, - "block_time": 1726509912 + "block_index": 194, + "block_time": 1727201016 } }, "/v2/events/counts": { @@ -7600,7 +7878,7 @@ }, { "event": "TRANSACTION_PARSED", - "event_count": 47 + "event_count": 48 }, { "event": "SWEEP", @@ -7621,19 +7899,19 @@ "/v2/events/": { "result": [ { - "event_index": 526, + "event_index": 533, "event": "CREDIT", "params": { - "address": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "address": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "asset": "XCP", - "block_index": 192, + "block_index": 193, "calling_function": "sweep", - "event": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", + "event": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", "quantity": 74499387833, - "tx_index": 58, + "tx_index": 59, "utxo": null, "utxo_address": null, - "block_time": 1726509908, + "block_time": 1727201012, "asset_info": { "divisible": true, "asset_longname": null, @@ -7643,78 +7921,78 @@ }, "quantity_normalized": "744.99388000" }, - "tx_hash": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", - "block_index": 192, - "block_time": 1726509908 + "tx_hash": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", + "block_index": 193, + "block_time": 1727201012 }, { - "event_index": 524, + "event_index": 531, "event": "CREDIT", "params": { - "address": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "address": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "asset": "MYASSETA", - "block_index": 192, + "block_index": 193, "calling_function": "sweep", - "event": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", + "event": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", "quantity": 10, - "tx_index": 58, + "tx_index": 59, "utxo": null, "utxo_address": null, - "block_time": 1726509908, + "block_time": 1727201012, "asset_info": { "asset_longname": null, "description": "My super asset A", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, "quantity_normalized": "0.00000010" }, - "tx_hash": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", - "block_index": 192, - "block_time": 1726509908 + "tx_hash": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", + "block_index": 193, + "block_time": 1727201012 }, { - "event_index": 522, + "event_index": 529, "event": "CREDIT", "params": { - "address": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "address": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "asset": "FAIRMINTA", - "block_index": 192, + "block_index": 193, "calling_function": "sweep", - "event": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", + "event": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", "quantity": 500000000, - "tx_index": 58, + "tx_index": 59, "utxo": null, "utxo_address": null, - "block_time": 1726509908, + "block_time": 1727201012, "asset_info": { "asset_longname": "", "description": "", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, "quantity_normalized": "5.00000000" }, - "tx_hash": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", - "block_index": 192, - "block_time": 1726509908 + "tx_hash": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", + "block_index": 193, + "block_time": 1727201012 }, { - "event_index": 508, + "event_index": 515, "event": "CREDIT", "params": { - "address": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "address": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "asset": "XCP", - "block_index": 190, + "block_index": 191, "calling_function": "cancel order", - "event": "5e324d551a694d3f6ffc9c67b3db8817d470ba32257047ddee237d3d07c1a1e2", + "event": "83919cf82dd5eb1e2e1f6d3f3f752d34d41636ed00ab8ff78369eb81475b8e57", "quantity": 1000, - "tx_index": 56, + "tx_index": 57, "utxo": null, "utxo_address": null, - "block_time": 1726509899, + "block_time": 1727201003, "asset_info": { "divisible": true, "asset_longname": null, @@ -7724,24 +8002,24 @@ }, "quantity_normalized": "0.00001000" }, - "tx_hash": "18a9b72fc9e67470cff556297fa5f3dd95ea7d472693f42d597db7ad598c05ec", - "block_index": 190, - "block_time": 1726509899 + "tx_hash": "1d314894d90254c43598647c4ebca9b8f3f0d20a522eb8130d9955e95ea1c197", + "block_index": 191, + "block_time": 1727201003 }, { - "event_index": 491, + "event_index": 498, "event": "CREDIT", "params": { - "address": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", + "address": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", "asset": "XCP", - "block_index": 188, + "block_index": 189, "calling_function": "mpma send", - "event": "e8fda956958ed7de0a98e42d8d28349b9c7b5e20da375c185c5830526df6594f", + "event": "4cd813fae2558e89f2f9411f38daa7d4c10c94a267daa38155cf18fb4d9fd055", "quantity": 10, - "tx_index": 54, + "tx_index": 55, "utxo": null, "utxo_address": null, - "block_time": 1726509890, + "block_time": 1727200995, "asset_info": { "divisible": true, "asset_longname": null, @@ -7751,46 +8029,46 @@ }, "quantity_normalized": "0.00000010" }, - "tx_hash": "e8fda956958ed7de0a98e42d8d28349b9c7b5e20da375c185c5830526df6594f", - "block_index": 188, - "block_time": 1726509890 + "tx_hash": "4cd813fae2558e89f2f9411f38daa7d4c10c94a267daa38155cf18fb4d9fd055", + "block_index": 189, + "block_time": 1727200995 } ], - "next_cursor": 490, - "result_count": 67 + "next_cursor": 497, + "result_count": 68 }, "/v2/events//count": { "result": { "event": "CREDIT", - "event_count": 67 + "event_count": 68 } }, "/v2/dispenses": { "result": [ { - "tx_index": 33, + "tx_index": 34, "dispense_index": 0, - "tx_hash": "516159be9547a87a0ab0ce652ce9daebb10796eb67509fa50780dca28d813535", - "block_index": 146, - "source": "bcrt1qlm44vh2ynrtqwh8j2mptwrzzfd04czsya4wxcd", - "destination": "bcrt1qlqcrlvw5t7cnj8r9hjl0qq67c2fyk5kvfra90p", + "tx_hash": "6b21482e6e461d42ded8e74826ff88a8b23621baaa45e714c7c2a20457bd6c12", + "block_index": 147, + "source": "bcrt1qeshrsce6vyx833j2p85aesnx0aj9sxjtt79jak", + "destination": "bcrt1qfvucymcd7u04hpd7eafsmxwnashcmaqs54q79p", "asset": "XCP", "dispense_quantity": 666, - "dispenser_tx_hash": "5c8374a3882f222038bbf9a0cce7589e84b790915b9228d66af1a5b0eb61ea2d", + "dispenser_tx_hash": "1e7bea513de78cabf444b974fdb0efb4304b18bd990a889d7a0f8b0e3d21b6ea", "btc_amount": 10000, "confirmed": true, "dispenser": { - "tx_index": 32, - "block_index": 146, - "source": "bcrt1qlm44vh2ynrtqwh8j2mptwrzzfd04czsya4wxcd", + "tx_index": 33, + "block_index": 147, + "source": "bcrt1qeshrsce6vyx833j2p85aesnx0aj9sxjtt79jak", "give_quantity": 1, "escrow_quantity": 10000, "satoshirate": 1, "status": 0, "give_remaining": 9334, - "oracle_address": "bcrt1qlm44vh2ynrtqwh8j2mptwrzzfd04czsya4wxcd", + "oracle_address": "bcrt1qeshrsce6vyx833j2p85aesnx0aj9sxjtt79jak", "last_status_tx_hash": null, - "origin": "bcrt1qlm44vh2ynrtqwh8j2mptwrzzfd04czsya4wxcd", + "origin": "bcrt1qeshrsce6vyx833j2p85aesnx0aj9sxjtt79jak", "dispense_count": 1, "last_status_tx_source": null, "close_block_index": null, @@ -7805,7 +8083,7 @@ "satoshirate_normalized": "0.00000001", "satoshi_price_normalized": "0.00000016" }, - "block_time": 1726509701, + "block_time": 1727200827, "asset_info": { "divisible": true, "asset_longname": null, @@ -7819,19 +8097,19 @@ { "tx_index": 28, "dispense_index": 0, - "tx_hash": "ab0fd3f5a4ce7ef637dfa113da8a1d7ca7f9b7b8ef7bea07721c55ef2aee9d2f", + "tx_hash": "6ae257db1a77e44eb808057e9944b6f6e15eebf699db2c77f3009100a550b7fa", "block_index": 141, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "destination": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "destination": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", "asset": "XCP", "dispense_quantity": 4000, - "dispenser_tx_hash": "e4fcdf91df3b0bbacb56d49f65bba5e59c88e92c829d7c8b3f251d5e20457f4e", + "dispenser_tx_hash": "3df6d90991175a0c2aabbe0dc87cacd5d92c90cb996ce5b1514492f2585c61fc", "btc_amount": 4000, "confirmed": true, "dispenser": { "tx_index": 26, "block_index": 141, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "give_quantity": 1, "escrow_quantity": 10000, "satoshirate": 1, @@ -7839,7 +8117,7 @@ "give_remaining": 0, "oracle_address": null, "last_status_tx_hash": null, - "origin": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "origin": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "dispense_count": 2, "last_status_tx_source": null, "close_block_index": null, @@ -7854,7 +8132,7 @@ "satoshirate_normalized": "0.00000001", "satoshi_price_normalized": "0.00000001" }, - "block_time": 1726509680, + "block_time": 1727200803, "asset_info": { "divisible": true, "asset_longname": null, @@ -7868,19 +8146,19 @@ { "tx_index": 27, "dispense_index": 0, - "tx_hash": "54eee03a80a18a6e816f27408ce071f7c7fefac72abc8ade14e835ad5f1563ce", + "tx_hash": "2a07cfa93bced14f59b80e10872f5fe4a406622078c0b85295c5c4149820d102", "block_index": 140, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "destination": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "destination": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", "asset": "XCP", "dispense_quantity": 6000, - "dispenser_tx_hash": "e4fcdf91df3b0bbacb56d49f65bba5e59c88e92c829d7c8b3f251d5e20457f4e", + "dispenser_tx_hash": "3df6d90991175a0c2aabbe0dc87cacd5d92c90cb996ce5b1514492f2585c61fc", "btc_amount": 6000, "confirmed": true, "dispenser": { "tx_index": 26, "block_index": 141, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "give_quantity": 1, "escrow_quantity": 10000, "satoshirate": 1, @@ -7888,7 +8166,7 @@ "give_remaining": 0, "oracle_address": null, "last_status_tx_hash": null, - "origin": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "origin": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "dispense_count": 2, "last_status_tx_source": null, "close_block_index": null, @@ -7903,7 +8181,7 @@ "satoshirate_normalized": "0.00000001", "satoshi_price_normalized": "0.00000001" }, - "block_time": 1726509665, + "block_time": 1727200798, "asset_info": { "divisible": true, "asset_longname": null, @@ -7921,11 +8199,11 @@ "/v2/sends": { "result": [ { - "tx_index": 54, - "tx_hash": "e8fda956958ed7de0a98e42d8d28349b9c7b5e20da375c185c5830526df6594f", - "block_index": 188, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "destination": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", + "tx_index": 55, + "tx_hash": "4cd813fae2558e89f2f9411f38daa7d4c10c94a267daa38155cf18fb4d9fd055", + "block_index": 189, + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "destination": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", "asset": "XCP", "quantity": 10, "status": "valid", @@ -7933,7 +8211,7 @@ "memo": null, "fee_paid": 0, "confirmed": true, - "block_time": 1726509890, + "block_time": 1727200995, "asset_info": { "divisible": true, "asset_longname": null, @@ -7945,11 +8223,11 @@ "fee_paid_normalized": "0.00000000" }, { - "tx_index": 54, - "tx_hash": "e8fda956958ed7de0a98e42d8d28349b9c7b5e20da375c185c5830526df6594f", - "block_index": 188, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "destination": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "tx_index": 55, + "tx_hash": "4cd813fae2558e89f2f9411f38daa7d4c10c94a267daa38155cf18fb4d9fd055", + "block_index": 189, + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "destination": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "asset": "MYASSETA", "quantity": 10, "status": "valid", @@ -7957,11 +8235,11 @@ "memo": null, "fee_paid": 0, "confirmed": true, - "block_time": 1726509890, + "block_time": 1727200995, "asset_info": { "asset_longname": null, "description": "My super asset A", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, @@ -7969,11 +8247,11 @@ "fee_paid_normalized": "0.00000000" }, { - "tx_index": 54, - "tx_hash": "e8fda956958ed7de0a98e42d8d28349b9c7b5e20da375c185c5830526df6594f", - "block_index": 188, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "destination": "bcrt1q3ds7n4l97tumdkgcr3vyhe04zaxce8ujr8fmr2", + "tx_index": 55, + "tx_hash": "4cd813fae2558e89f2f9411f38daa7d4c10c94a267daa38155cf18fb4d9fd055", + "block_index": 189, + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "destination": "bcrt1q9cf2ed4wk37qye08wlppw39l7prxws7afa3krk", "asset": "MYASSETA", "quantity": 10, "status": "valid", @@ -7981,11 +8259,11 @@ "memo": null, "fee_paid": 0, "confirmed": true, - "block_time": 1726509890, + "block_time": 1727200995, "asset_info": { "asset_longname": null, "description": "My super asset A", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, @@ -7993,11 +8271,11 @@ "fee_paid_normalized": "0.00000000" }, { - "tx_index": 53, - "tx_hash": "f96235259f9722ca1558a6601a39e235c6a60fa33d67cc9e5039890d0ab2fe03", - "block_index": 187, - "source": "bcrt1q3ds7n4l97tumdkgcr3vyhe04zaxce8ujr8fmr2", - "destination": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "tx_index": 54, + "tx_hash": "e7989369eefaec09cec5770c6128eb548023225e666d57bbed74b3d03240e9c3", + "block_index": 188, + "source": "bcrt1q9cf2ed4wk37qye08wlppw39l7prxws7afa3krk", + "destination": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "asset": "XCP", "quantity": 10000, "status": "valid", @@ -8005,7 +8283,7 @@ "memo": null, "fee_paid": 0, "confirmed": true, - "block_time": 1726509886, + "block_time": 1727200991, "asset_info": { "divisible": true, "asset_longname": null, @@ -8017,11 +8295,11 @@ "fee_paid_normalized": "0.00000000" }, { - "tx_index": 42, - "tx_hash": "f48f32cde583a1233260e9d07c858726031b0aadb7550a061602ad6cffd5f3a7", - "block_index": 155, - "source": "3f0027dbe860c95e4cea6d1c83db0d8ea3acf7adbeacefd7e8eb56e9399d879b:0", - "destination": "f48f32cde583a1233260e9d07c858726031b0aadb7550a061602ad6cffd5f3a7:1", + "tx_index": 43, + "tx_hash": "ca11a87b6b09143626cafffbc32be68d26d43df5facbb48aa919ce857c1aa739", + "block_index": 156, + "source": "9d347b5453e8bf2608768d2b109367ce3aaf5a12d4bc63526fa6fb59eab1901d:0", + "destination": "ca11a87b6b09143626cafffbc32be68d26d43df5facbb48aa919ce857c1aa739:1", "asset": "XCP", "quantity": 1500000000, "status": "valid", @@ -8029,7 +8307,7 @@ "memo": null, "fee_paid": 0, "confirmed": true, - "block_time": 1726509741, + "block_time": 1727200867, "asset_info": { "divisible": true, "asset_longname": null, @@ -8047,15 +8325,15 @@ "/v2/issuances": { "result": [ { - "tx_index": 46, - "tx_hash": "3f80ba6dc66be4e5b604bbf8e1e2007161960069d871f7cb00b1d24f9f090491", + "tx_index": 47, + "tx_hash": "efd20bb15eb6a7ce22645a0fb33b1873d00dc0cdeb9533d37037e0fd6a63f512", "msg_index": 0, - "block_index": 159, + "block_index": 160, "asset": "A95428956980101314", "quantity": 100000000000, "divisible": true, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "transfer": false, "callable": false, "call_date": 0, @@ -8070,20 +8348,20 @@ "fair_minting": false, "asset_events": "creation", "confirmed": true, - "block_time": 1726509780, + "block_time": 1727200884, "quantity_normalized": "1000.00000000", "fee_paid_normalized": "0.00000000" }, { - "tx_index": 45, - "tx_hash": "99d6840da9077ad147d3cb8e3a527ebcb05445b5e72d0fa4f9429f91a2ed5f9f", + "tx_index": 46, + "tx_hash": "af9f8fab45dd2130f26f25edacaa4de3e37feaa202ad6a578e5a60d0aa935b46", "msg_index": 0, - "block_index": 158, + "block_index": 159, "asset": "TESTLOCKDESC", "quantity": 0, "divisible": true, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "transfer": false, "callable": false, "call_date": 0, @@ -8098,20 +8376,20 @@ "fair_minting": false, "asset_events": "lock_description reissuance", "confirmed": true, - "block_time": 1726509775, + "block_time": 1727200880, "quantity_normalized": "0.00000000", "fee_paid_normalized": "0.00000000" }, { - "tx_index": 44, - "tx_hash": "edf7eb0a60e46ad53360d769c00fbd350628dff893bb6f1869570c9fdcfc71af", + "tx_index": 45, + "tx_hash": "54776b690fc35e38368ab8ddb01f39437d6ad2177f025473e278802b9748e23c", "msg_index": 0, - "block_index": 157, + "block_index": 158, "asset": "A95428959745315388", "quantity": 0, "divisible": true, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "transfer": false, "callable": false, "call_date": 0, @@ -8126,20 +8404,20 @@ "fair_minting": false, "asset_events": "creation", "confirmed": true, - "block_time": 1726509760, + "block_time": 1727200875, "quantity_normalized": "0.00000000", "fee_paid_normalized": "0.00000000" }, { - "tx_index": 43, - "tx_hash": "23d681cb0c9d9310fd8150fcabf440c84cae363db926d0fcde70cbe12373f96f", + "tx_index": 44, + "tx_hash": "e12a079169fa7227aca6b168eafdf85cc67738b746b00fb0efa698d2c977b8f1", "msg_index": 0, - "block_index": 156, + "block_index": 157, "asset": "TESTLOCKDESC", "quantity": 10000000000, "divisible": true, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "transfer": false, "callable": false, "call_date": 0, @@ -8154,20 +8432,20 @@ "fair_minting": false, "asset_events": "creation", "confirmed": true, - "block_time": 1726509746, + "block_time": 1727200871, "quantity_normalized": "100.00000000", "fee_paid_normalized": "0.50000000" }, { - "tx_index": 42, - "tx_hash": "f48f32cde583a1233260e9d07c858726031b0aadb7550a061602ad6cffd5f3a7", + "tx_index": 43, + "tx_hash": "ca11a87b6b09143626cafffbc32be68d26d43df5facbb48aa919ce857c1aa739", "msg_index": 0, - "block_index": 155, + "block_index": 156, "asset": "MYASSETB", "quantity": 100000000000, "divisible": true, - "source": "bcrt1qrqg60l5vguevyqtnw4ym5hdth8jm4zmk0fxn99", - "issuer": "bcrt1qrqg60l5vguevyqtnw4ym5hdth8jm4zmk0fxn99", + "source": "bcrt1qtwywdknya042p0342nhnjk05557lxwysfw6vuj", + "issuer": "bcrt1qtwywdknya042p0342nhnjk05557lxwysfw6vuj", "transfer": false, "callable": false, "call_date": 0, @@ -8182,7 +8460,7 @@ "fair_minting": false, "asset_events": "creation", "confirmed": true, - "block_time": 1726509741, + "block_time": 1727200867, "quantity_normalized": "1000.00000000", "fee_paid_normalized": "0.50000000" } @@ -8192,15 +8470,15 @@ }, "/v2/issuances/": { "result": { - "tx_index": 46, - "tx_hash": "3f80ba6dc66be4e5b604bbf8e1e2007161960069d871f7cb00b1d24f9f090491", + "tx_index": 47, + "tx_hash": "efd20bb15eb6a7ce22645a0fb33b1873d00dc0cdeb9533d37037e0fd6a63f512", "msg_index": 0, - "block_index": 159, + "block_index": 160, "asset": "A95428956980101314", "quantity": 100000000000, "divisible": true, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "transfer": false, "callable": false, "call_date": 0, @@ -8215,7 +8493,7 @@ "fair_minting": false, "asset_events": "creation", "confirmed": true, - "block_time": 1726509780, + "block_time": 1727200884, "quantity_normalized": "1000.00000000", "fee_paid_normalized": "0.00000000" } @@ -8223,17 +8501,17 @@ "/v2/sweeps": { "result": [ { - "tx_index": 58, - "tx_hash": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", - "block_index": 192, - "source": "bcrt1q3ds7n4l97tumdkgcr3vyhe04zaxce8ujr8fmr2", - "destination": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "tx_index": 59, + "tx_hash": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", + "block_index": 193, + "source": "bcrt1q9cf2ed4wk37qye08wlppw39l7prxws7afa3krk", + "destination": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "flags": 1, "status": "valid", "memo": "sweep my assets", "fee_paid": 600000, "confirmed": true, - "block_time": 1726509908, + "block_time": 1727201012, "fee_paid_normalized": "0.00600000" } ], @@ -8243,17 +8521,17 @@ "/v2/sweeps/": { "result": [ { - "tx_index": 58, - "tx_hash": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", - "block_index": 192, - "source": "bcrt1q3ds7n4l97tumdkgcr3vyhe04zaxce8ujr8fmr2", - "destination": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "tx_index": 59, + "tx_hash": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", + "block_index": 193, + "source": "bcrt1q9cf2ed4wk37qye08wlppw39l7prxws7afa3krk", + "destination": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "flags": 1, "status": "valid", "memo": "sweep my assets", "fee_paid": 600000, "confirmed": true, - "block_time": 1726509908, + "block_time": 1727201012, "fee_paid_normalized": "0.00600000" } ], @@ -8264,9 +8542,9 @@ "result": [ { "tx_index": 25, - "tx_hash": "0b3452fcb5ee0a881ba450a768e89de4e0c89e297785e478dd6fc844975bec3a", + "tx_hash": "28499c6a50363ce063ee5e7f5de4d43ea5bf86a19dc05ea650443b343c00e258", "block_index": 138, - "source": "bcrt1qlm44vh2ynrtqwh8j2mptwrzzfd04czsya4wxcd", + "source": "bcrt1qeshrsce6vyx833j2p85aesnx0aj9sxjtt79jak", "timestamp": 4003903983, "value": 66600.0, "fee_fraction_int": 0, @@ -8274,14 +8552,14 @@ "locked": false, "status": "valid", "confirmed": true, - "block_time": 1726509656, + "block_time": 1727200790, "fee_fraction_int_normalized": "0.00000000" }, { "tx_index": 24, - "tx_hash": "1629a61f230d38e661231eeaac724d9336e9413ce0a9f145c49d57030ae05b8d", + "tx_hash": "929b85b0f022a54c6904a36e51da0339ca9b0583ac7d003a91cd601964f53da5", "block_index": 137, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "timestamp": 4003903983, "value": 999.0, "fee_fraction_int": 0, @@ -8289,7 +8567,7 @@ "locked": false, "status": "valid", "confirmed": true, - "block_time": 1726509652, + "block_time": 1727200786, "fee_fraction_int_normalized": "0.00000000" } ], @@ -8299,9 +8577,9 @@ "/v2/broadcasts/": { "result": { "tx_index": 25, - "tx_hash": "0b3452fcb5ee0a881ba450a768e89de4e0c89e297785e478dd6fc844975bec3a", + "tx_hash": "28499c6a50363ce063ee5e7f5de4d43ea5bf86a19dc05ea650443b343c00e258", "block_index": 138, - "source": "bcrt1qlm44vh2ynrtqwh8j2mptwrzzfd04czsya4wxcd", + "source": "bcrt1qeshrsce6vyx833j2p85aesnx0aj9sxjtt79jak", "timestamp": 4003903983, "value": 66600.0, "fee_fraction_int": 0, @@ -8309,17 +8587,17 @@ "locked": false, "status": "valid", "confirmed": true, - "block_time": 1726509656, + "block_time": 1727200790, "fee_fraction_int_normalized": "0.00000000" } }, "/v2/fairminters": { "result": [ { - "tx_hash": "d91c1e127adf6010f11ee5d04a4cd804ece0ff8087b450f307ae85b6f5f83137", + "tx_hash": "5f1bb112a42ace59fa09d6a6fc1916eec2a940d44682b160c97bbae14494b127", "tx_index": 22, "block_index": 135, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "asset": "FAIRMINTD", "asset_parent": "", "asset_longname": "", @@ -8344,13 +8622,13 @@ "commission": null, "paid_quantity": null, "confirmed": true, - "block_time": 1726509644 + "block_time": 1727200777 }, { - "tx_hash": "b8787fa4e26710112ef68030beafe12d09ec601552f130e5f37da63ba73eec12", + "tx_hash": "bf4d673a1117a0391adcac895de8ac4f234e093b9257df4ce473fe1e01bebf8b", "tx_index": 18, "block_index": 131, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "asset": "FAIRMINTC", "asset_parent": "", "asset_longname": "", @@ -8375,13 +8653,13 @@ "commission": null, "paid_quantity": null, "confirmed": true, - "block_time": 1726509617 + "block_time": 1727200760 }, { - "tx_hash": "536537382f35f3fc4bf3bcb4f6957228528eaa802dc49361f6339cd575de0a16", + "tx_hash": "ef8994a7c4750636583ff8d92fe09ac8c38d280813f2e2e923e07c9b9a3d9cda", "tx_index": 14, "block_index": 130, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "asset": "FAIRMINTB", "asset_parent": "", "asset_longname": "", @@ -8406,13 +8684,13 @@ "commission": null, "paid_quantity": null, "confirmed": true, - "block_time": 1726509613 + "block_time": 1727200756 }, { - "tx_hash": "7ae7bb5d540de02fd2b97d7234b6c87c925d0b6b3eac5a55e5ced650ce49eed1", + "tx_hash": "15f8f2368ab00936a53063e0f92508f82a1d6018e7495426e7dc81fc02f6d6f1", "tx_index": 10, "block_index": 125, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "asset": "FAIRMINTA", "asset_parent": "", "asset_longname": "", @@ -8437,7 +8715,7 @@ "commission": null, "paid_quantity": null, "confirmed": true, - "block_time": 1726509592 + "block_time": 1727200736 } ], "next_cursor": null, @@ -8447,21 +8725,21 @@ "result": [ { "vout": 2, - "height": 146, + "height": 147, "value": 4949970000, "confirmations": 48, "amount": 49.4997, - "txid": "516159be9547a87a0ab0ce652ce9daebb10796eb67509fa50780dca28d813535", - "address": "bcrt1qlqcrlvw5t7cnj8r9hjl0qq67c2fyk5kvfra90p" + "txid": "6b21482e6e461d42ded8e74826ff88a8b23621baaa45e714c7c2a20457bd6c12", + "address": "bcrt1qfvucymcd7u04hpd7eafsmxwnashcmaqs54q79p" }, { "vout": 2, - "height": 155, + "height": 156, "value": 100000, "confirmations": 39, "amount": 0.001, - "txid": "f48f32cde583a1233260e9d07c858726031b0aadb7550a061602ad6cffd5f3a7", - "address": "bcrt1qqt2dxp9pmcgvjrckeyuy29myfghay5le53hl0d" + "txid": "ca11a87b6b09143626cafffbc32be68d26d43df5facbb48aa919ce857c1aa739", + "address": "bcrt1qtmd9xj5r7dlk044rn35kqqdmy62jpnf6u52x9z" } ], "next_cursor": null, @@ -8470,28 +8748,28 @@ "/v2/bitcoin/addresses/
/transactions": { "result": [ { - "tx_hash": "f96235259f9722ca1558a6601a39e235c6a60fa33d67cc9e5039890d0ab2fe03" + "tx_hash": "1e3535ba7d55784565a1ebd370a14fdde23ba46de1398689d8e4dd3886a34714" }, { - "tx_hash": "efce747367cf4f6f269d55f239087910bc90dcb738205d57146a4a5b537dad17" + "tx_hash": "2e8af63264d4d2130abba102b9d8a867d2b35b41e878e037f328cb46b727a415" }, { - "tx_hash": "d87f4afa605375256bce3dab7d014314a751d0d998cdc0842ac2dfc8c2fa2b21" + "tx_hash": "664b33a2858e0961f08c6a45f5ec6b98042d62a4f4e98faf6862f374be802724" }, { - "tx_hash": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b" + "tx_hash": "601d3f3304f74f8dd7dce71bd22011f57da8c83a23e9ae8bb8b30b2f9a202338" }, { - "tx_hash": "d2f3afeb63580aa006eee4e055138c2903f7e8172876f688b7241e2ebbe5f172" + "tx_hash": "c7de2f976583158832e195c5e06c91be234ea8f11f3dec44a14e41ee44e25238" }, { - "tx_hash": "9d48ae21a1caed318e44591060a2d5873ed0ef5b403a5447046052a111c7dd88" + "tx_hash": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774" }, { - "tx_hash": "58f41fb8b8ec22f12daa5aad5a4f72194f54f652542abd409766afe4de2798b9" + "tx_hash": "467f7e82754021f4a8a7e07800c1785d2619004c75fd9200884f7aa4def7caa7" }, { - "tx_hash": "cd209fe04d43a38dcf842ad0d74fd71e123c66549db03f3650099a7e5f0297be" + "tx_hash": "e7989369eefaec09cec5770c6128eb548023225e666d57bbed74b3d03240e9c3" } ], "next_cursor": null, @@ -8499,32 +8777,32 @@ }, "/v2/bitcoin/addresses/
/transactions/oldest": { "result": { - "block_index": 1, - "tx_hash": "39808e5b91587a72ae37c23d618a8526cf4c292592c2681dd3400837654b0786" + "block_index": 2, + "tx_hash": "ef65836cc15a965615ff2edb77455cb8b91b9db8494c794f96d2652c7f1f5a21" } }, "/v2/bitcoin/addresses/
/utxos": { "result": [ { "vout": 2, - "height": 146, + "height": 147, "value": 4949970000, "confirmations": 48, "amount": 49.4997, - "txid": "516159be9547a87a0ab0ce652ce9daebb10796eb67509fa50780dca28d813535" + "txid": "6b21482e6e461d42ded8e74826ff88a8b23621baaa45e714c7c2a20457bd6c12" } ], "next_cursor": null, "result_count": null }, "/v2/bitcoin/addresses/
/pubkey": { - "result": "038cf659b1eef29fa8241c63dfa9eab3e1ef4f14fd7d99ee18746a9a9387076169" + "result": "03e9ae92eabb90ca74fe993bac25a34afb53dbfd9ee15d1434f46704cbef38ec97" }, "/v2/bitcoin/transactions/": { - "result": "02000000000101ba21bea38dc876b1215be6872f0c75a77328eb90aea0f5e5f5d687b38e7ca5050300000000ffffffff020000000000000000226a20e661db2d032f2a3e7844cfb698121f85b2b30cced7b8b215b0e8fe1f5fd1a779680b0a2701000000160014ae2b0c1095bbdf23747f76b242be716817701b780247304402205f232b082605ae63445a865c556deef60158bbdf42b4ac8953b712ef33fe80a202203c7aebb1b51e30698a54c8e0177213dcbcd480529ede188b0a18129a80637fef0121035352a3478786437bb2f973478638b43a6bee4a925c1b0efd94dc193e94b198b500000000" + "result": "02000000000101b6d782df6b5c2f06c0c7af0c8c4d60f0aa556ff6f727703a94f74ba118e609f40300000000ffffffff020000000000000000226a20bdb345b43fda7b9a18a9666a3c0969176fba41ebfa02e4533597d73786663d8e680b0a27010000001600146c45b04730370dc7e778ed200c19f22a08c064a90247304402203d873dec7dfcb9e89aa9e315200792e26864340166149cab6836a7546859a72902206bc567bc0d510087b95dbc9fc763e9058df75cad340b8deba4aab9186e73d92b012103b5e165703c3ef7b3eb8feb32c82da0679166b81eae0830c1d0d0803fe78048b000000000" }, "/v2/bitcoin/estimatesmartfee": { - "result": 68546 + "result": 58603 }, "/v2/bitcoin/getmempoolinfo": { "result": { @@ -8544,27 +8822,27 @@ "/v2/mempool/events": { "result": [ { - "tx_hash": "adc699f3b9af2a586a913343701a26c494a8fd637e66e50840936b8ef7bf10b6", + "tx_hash": "044206e67491ff5d4c325bca6bbf5704dfbc3794e8948a39aae3ab0e11b23e2a", "event": "TRANSACTION_PARSED", "params": { "supported": true, - "tx_hash": "adc699f3b9af2a586a913343701a26c494a8fd637e66e50840936b8ef7bf10b6", - "tx_index": 60 + "tx_hash": "044206e67491ff5d4c325bca6bbf5704dfbc3794e8948a39aae3ab0e11b23e2a", + "tx_index": 61 } }, { - "tx_hash": "adc699f3b9af2a586a913343701a26c494a8fd637e66e50840936b8ef7bf10b6", + "tx_hash": "044206e67491ff5d4c325bca6bbf5704dfbc3794e8948a39aae3ab0e11b23e2a", "event": "ENHANCED_SEND", "params": { "asset": "XCP", "block_index": 9999999, - "destination": "bcrt1q3ds7n4l97tumdkgcr3vyhe04zaxce8ujr8fmr2", + "destination": "bcrt1q9cf2ed4wk37qye08wlppw39l7prxws7afa3krk", "memo": null, "quantity": 10000, - "source": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "source": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "status": "valid", - "tx_hash": "adc699f3b9af2a586a913343701a26c494a8fd637e66e50840936b8ef7bf10b6", - "tx_index": 60, + "tx_hash": "044206e67491ff5d4c325bca6bbf5704dfbc3794e8948a39aae3ab0e11b23e2a", + "tx_index": 61, "asset_info": { "divisible": true, "asset_longname": null, @@ -8576,19 +8854,19 @@ } }, { - "tx_hash": "adc699f3b9af2a586a913343701a26c494a8fd637e66e50840936b8ef7bf10b6", + "tx_hash": "044206e67491ff5d4c325bca6bbf5704dfbc3794e8948a39aae3ab0e11b23e2a", "event": "CREDIT", "params": { - "address": "bcrt1q3ds7n4l97tumdkgcr3vyhe04zaxce8ujr8fmr2", + "address": "bcrt1q9cf2ed4wk37qye08wlppw39l7prxws7afa3krk", "asset": "XCP", - "block_index": 193, + "block_index": 194, "calling_function": "send", - "event": "adc699f3b9af2a586a913343701a26c494a8fd637e66e50840936b8ef7bf10b6", + "event": "044206e67491ff5d4c325bca6bbf5704dfbc3794e8948a39aae3ab0e11b23e2a", "quantity": 10000, - "tx_index": 60, + "tx_index": 61, "utxo": null, "utxo_address": null, - "block_time": 1726509912, + "block_time": 1727201016, "asset_info": { "divisible": true, "asset_longname": null, @@ -8600,19 +8878,19 @@ } }, { - "tx_hash": "adc699f3b9af2a586a913343701a26c494a8fd637e66e50840936b8ef7bf10b6", + "tx_hash": "044206e67491ff5d4c325bca6bbf5704dfbc3794e8948a39aae3ab0e11b23e2a", "event": "DEBIT", "params": { "action": "send", - "address": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "address": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "asset": "XCP", - "block_index": 193, - "event": "adc699f3b9af2a586a913343701a26c494a8fd637e66e50840936b8ef7bf10b6", + "block_index": 194, + "event": "044206e67491ff5d4c325bca6bbf5704dfbc3794e8948a39aae3ab0e11b23e2a", "quantity": 10000, - "tx_index": 60, + "tx_index": 61, "utxo": null, "utxo_address": null, - "block_time": 1726509912, + "block_time": 1727201016, "asset_info": { "divisible": true, "asset_longname": null, @@ -8624,27 +8902,27 @@ } }, { - "tx_hash": "adc699f3b9af2a586a913343701a26c494a8fd637e66e50840936b8ef7bf10b6", + "tx_hash": "044206e67491ff5d4c325bca6bbf5704dfbc3794e8948a39aae3ab0e11b23e2a", "event": "NEW_TRANSACTION", "params": { "block_hash": "mempool", "block_index": 9999999, - "block_time": 1726509917.0831685, + "block_time": 1727201019.8965485, "btc_amount": 0, - "data": "0200000000000000010000000000002710808b61e9d7e5f2f9b6d9181c584be5f5174d8c9f92", + "data": "0200000000000000010000000000002710802e12acb6aeb47c0265e777c21744bff0466743dd", "destination": "", "fee": 10000, - "source": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", - "tx_hash": "adc699f3b9af2a586a913343701a26c494a8fd637e66e50840936b8ef7bf10b6", - "tx_index": 60, - "utxos_info": "adc699f3b9af2a586a913343701a26c494a8fd637e66e50840936b8ef7bf10b6:1", + "source": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", + "tx_hash": "044206e67491ff5d4c325bca6bbf5704dfbc3794e8948a39aae3ab0e11b23e2a", + "tx_index": 61, + "utxos_info": "044206e67491ff5d4c325bca6bbf5704dfbc3794e8948a39aae3ab0e11b23e2a:1", "unpacked_data": { "message_type": "enhanced_send", "message_type_id": 2, "message_data": { "asset": "XCP", "quantity": 10000, - "address": "bcrt1q3ds7n4l97tumdkgcr3vyhe04zaxce8ujr8fmr2", + "address": "bcrt1q9cf2ed4wk37qye08wlppw39l7prxws7afa3krk", "memo": null, "asset_info": { "divisible": true, @@ -8666,19 +8944,19 @@ "/v2/mempool/events/": { "result": [ { - "tx_hash": "adc699f3b9af2a586a913343701a26c494a8fd637e66e50840936b8ef7bf10b6", + "tx_hash": "044206e67491ff5d4c325bca6bbf5704dfbc3794e8948a39aae3ab0e11b23e2a", "event": "CREDIT", "params": { - "address": "bcrt1q3ds7n4l97tumdkgcr3vyhe04zaxce8ujr8fmr2", + "address": "bcrt1q9cf2ed4wk37qye08wlppw39l7prxws7afa3krk", "asset": "XCP", - "block_index": 193, + "block_index": 194, "calling_function": "send", - "event": "adc699f3b9af2a586a913343701a26c494a8fd637e66e50840936b8ef7bf10b6", + "event": "044206e67491ff5d4c325bca6bbf5704dfbc3794e8948a39aae3ab0e11b23e2a", "quantity": 10000, - "tx_index": 60, + "tx_index": 61, "utxo": null, "utxo_address": null, - "block_time": 1726509912, + "block_time": 1727201016, "asset_info": { "divisible": true, "asset_longname": null, @@ -8696,27 +8974,27 @@ "/v2/mempool/transactions//events": { "result": [ { - "tx_hash": "adc699f3b9af2a586a913343701a26c494a8fd637e66e50840936b8ef7bf10b6", + "tx_hash": "044206e67491ff5d4c325bca6bbf5704dfbc3794e8948a39aae3ab0e11b23e2a", "event": "TRANSACTION_PARSED", "params": { "supported": true, - "tx_hash": "adc699f3b9af2a586a913343701a26c494a8fd637e66e50840936b8ef7bf10b6", - "tx_index": 60 + "tx_hash": "044206e67491ff5d4c325bca6bbf5704dfbc3794e8948a39aae3ab0e11b23e2a", + "tx_index": 61 } }, { - "tx_hash": "adc699f3b9af2a586a913343701a26c494a8fd637e66e50840936b8ef7bf10b6", + "tx_hash": "044206e67491ff5d4c325bca6bbf5704dfbc3794e8948a39aae3ab0e11b23e2a", "event": "ENHANCED_SEND", "params": { "asset": "XCP", "block_index": 9999999, - "destination": "bcrt1q3ds7n4l97tumdkgcr3vyhe04zaxce8ujr8fmr2", + "destination": "bcrt1q9cf2ed4wk37qye08wlppw39l7prxws7afa3krk", "memo": null, "quantity": 10000, - "source": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "source": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "status": "valid", - "tx_hash": "adc699f3b9af2a586a913343701a26c494a8fd637e66e50840936b8ef7bf10b6", - "tx_index": 60, + "tx_hash": "044206e67491ff5d4c325bca6bbf5704dfbc3794e8948a39aae3ab0e11b23e2a", + "tx_index": 61, "asset_info": { "divisible": true, "asset_longname": null, @@ -8728,19 +9006,19 @@ } }, { - "tx_hash": "adc699f3b9af2a586a913343701a26c494a8fd637e66e50840936b8ef7bf10b6", + "tx_hash": "044206e67491ff5d4c325bca6bbf5704dfbc3794e8948a39aae3ab0e11b23e2a", "event": "CREDIT", "params": { - "address": "bcrt1q3ds7n4l97tumdkgcr3vyhe04zaxce8ujr8fmr2", + "address": "bcrt1q9cf2ed4wk37qye08wlppw39l7prxws7afa3krk", "asset": "XCP", - "block_index": 193, + "block_index": 194, "calling_function": "send", - "event": "adc699f3b9af2a586a913343701a26c494a8fd637e66e50840936b8ef7bf10b6", + "event": "044206e67491ff5d4c325bca6bbf5704dfbc3794e8948a39aae3ab0e11b23e2a", "quantity": 10000, - "tx_index": 60, + "tx_index": 61, "utxo": null, "utxo_address": null, - "block_time": 1726509912, + "block_time": 1727201016, "asset_info": { "divisible": true, "asset_longname": null, @@ -8752,19 +9030,19 @@ } }, { - "tx_hash": "adc699f3b9af2a586a913343701a26c494a8fd637e66e50840936b8ef7bf10b6", + "tx_hash": "044206e67491ff5d4c325bca6bbf5704dfbc3794e8948a39aae3ab0e11b23e2a", "event": "DEBIT", "params": { "action": "send", - "address": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "address": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "asset": "XCP", - "block_index": 193, - "event": "adc699f3b9af2a586a913343701a26c494a8fd637e66e50840936b8ef7bf10b6", + "block_index": 194, + "event": "044206e67491ff5d4c325bca6bbf5704dfbc3794e8948a39aae3ab0e11b23e2a", "quantity": 10000, - "tx_index": 60, + "tx_index": 61, "utxo": null, "utxo_address": null, - "block_time": 1726509912, + "block_time": 1727201016, "asset_info": { "divisible": true, "asset_longname": null, @@ -8776,27 +9054,27 @@ } }, { - "tx_hash": "adc699f3b9af2a586a913343701a26c494a8fd637e66e50840936b8ef7bf10b6", + "tx_hash": "044206e67491ff5d4c325bca6bbf5704dfbc3794e8948a39aae3ab0e11b23e2a", "event": "NEW_TRANSACTION", "params": { "block_hash": "mempool", "block_index": 9999999, - "block_time": 1726509917.0831685, + "block_time": 1727201019.8965485, "btc_amount": 0, - "data": "0200000000000000010000000000002710808b61e9d7e5f2f9b6d9181c584be5f5174d8c9f92", + "data": "0200000000000000010000000000002710802e12acb6aeb47c0265e777c21744bff0466743dd", "destination": "", "fee": 10000, - "source": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", - "tx_hash": "adc699f3b9af2a586a913343701a26c494a8fd637e66e50840936b8ef7bf10b6", - "tx_index": 60, - "utxos_info": "adc699f3b9af2a586a913343701a26c494a8fd637e66e50840936b8ef7bf10b6:1", + "source": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", + "tx_hash": "044206e67491ff5d4c325bca6bbf5704dfbc3794e8948a39aae3ab0e11b23e2a", + "tx_index": 61, + "utxos_info": "044206e67491ff5d4c325bca6bbf5704dfbc3794e8948a39aae3ab0e11b23e2a:1", "unpacked_data": { "message_type": "enhanced_send", "message_type_id": 2, "message_data": { "asset": "XCP", "quantity": 10000, - "address": "bcrt1q3ds7n4l97tumdkgcr3vyhe04zaxce8ujr8fmr2", + "address": "bcrt1q9cf2ed4wk37qye08wlppw39l7prxws7afa3krk", "memo": null, "asset_info": { "divisible": true, @@ -8828,40 +9106,40 @@ "/v2/events/NEW_BLOCK": { "result": [ { - "event_index": 530, + "event_index": 537, "event": "NEW_BLOCK", "params": { - "block_hash": "0c078dccb9971fd739e4646df2613ddf86bea7f006a0ec0aabf2253f9f835f58", - "block_index": 193, - "block_time": 1726509912, + "block_hash": "52ace614bdf700970fae116cbd930af95fe09c4faee117d3d3c0c24860eedf93", + "block_index": 194, + "block_time": 1727201016, "difficulty": 545259519, - "previous_block_hash": "356d63b3ac8ed95b008257f61aee3850ec360d8ac8d808d0b0e0ceab8de6ee1e" + "previous_block_hash": "72aff9bcfbc6a9f61cd1c192dc2322be91c061a847e81cc3b45854c9af31a6d5" }, "tx_hash": null, - "block_index": 193, - "block_time": 1726509912 + "block_index": 194, + "block_time": 1727201016 } ], - "next_cursor": 518, - "result_count": 93 + "next_cursor": 525, + "result_count": 94 }, "/v2/events/NEW_TRANSACTION": { "result": [ { - "event_index": 531, + "event_index": 538, "event": "NEW_TRANSACTION", "params": { - "block_hash": "0c078dccb9971fd739e4646df2613ddf86bea7f006a0ec0aabf2253f9f835f58", - "block_index": 193, - "block_time": 1726509912, + "block_hash": "52ace614bdf700970fae116cbd930af95fe09c4faee117d3d3c0c24860eedf93", + "block_index": 194, + "block_time": 1727201016, "btc_amount": 0, "data": "6e0000000000000001000000000000000164657374726f79", "destination": "", "fee": 10000, - "source": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", - "tx_hash": "f79c39d2a2896a86ef0bb2370101c664b69f2b9387afcd377d8226b839d419ce", - "tx_index": 59, - "utxos_info": "f79c39d2a2896a86ef0bb2370101c664b69f2b9387afcd377d8226b839d419ce:1", + "source": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", + "tx_hash": "da0a0e76bfc982e2bbed2679a71f4e2d3ebc01140b448f430bb01b50f7ceaabb", + "tx_index": 60, + "utxos_info": "da0a0e76bfc982e2bbed2679a71f4e2d3ebc01140b448f430bb01b50f7ceaabb:1", "unpacked_data": { "message_type": "destroy", "message_type_id": 110, @@ -8881,32 +9159,32 @@ }, "btc_amount_normalized": "0.00000000" }, - "tx_hash": "f79c39d2a2896a86ef0bb2370101c664b69f2b9387afcd377d8226b839d419ce", - "block_index": 193, - "block_time": 1726509912 + "tx_hash": "da0a0e76bfc982e2bbed2679a71f4e2d3ebc01140b448f430bb01b50f7ceaabb", + "block_index": 194, + "block_time": 1727201016 } ], - "next_cursor": 519, - "result_count": 60 + "next_cursor": 526, + "result_count": 61 }, "/v2/events/NEW_TRANSACTION_OUTPUT": { "result": [ { - "event_index": 272, + "event_index": 277, "event": "NEW_TRANSACTION_OUTPUT", "params": { - "block_index": 146, + "block_index": 147, "btc_amount": 10000, - "destination": "bcrt1qlm44vh2ynrtqwh8j2mptwrzzfd04czsya4wxcd", + "destination": "bcrt1qeshrsce6vyx833j2p85aesnx0aj9sxjtt79jak", "out_index": 0, - "tx_hash": "516159be9547a87a0ab0ce652ce9daebb10796eb67509fa50780dca28d813535", - "tx_index": 33, - "block_time": 1726509701, + "tx_hash": "6b21482e6e461d42ded8e74826ff88a8b23621baaa45e714c7c2a20457bd6c12", + "tx_index": 34, + "block_time": 1727200827, "btc_amount_normalized": "0.00010000" }, - "tx_hash": "516159be9547a87a0ab0ce652ce9daebb10796eb67509fa50780dca28d813535", - "block_index": 146, - "block_time": 1726509701 + "tx_hash": "6b21482e6e461d42ded8e74826ff88a8b23621baaa45e714c7c2a20457bd6c12", + "block_index": 147, + "block_time": 1727200827 } ], "next_cursor": 237, @@ -8915,58 +9193,58 @@ "/v2/events/BLOCK_PARSED": { "result": [ { - "event_index": 535, + "event_index": 542, "event": "BLOCK_PARSED", "params": { - "block_index": 193, - "ledger_hash": "260bca5241d162936ae20e643b78cd69f7c3d74370745be7447cbaae1dde9a9c", - "messages_hash": "a5b39b3745218a45506fcbd2397ab67628c6263f2173159bdf4b259978114bde", + "block_index": 194, + "ledger_hash": "d16329e826a589a6af06767a820f5914ee69e22398c8612ed0c73909a1ab9b1f", + "messages_hash": "1bc8906db34e5bf45f47eca127e2b4cc60e46bbc8cf4301617e02c6f29b32301", "transaction_count": 1, - "txlist_hash": "1ecd81dbebae4723fab572ad7f59f8712a540b524662de521ea50631e83b7e7b", - "block_time": 1726509912 + "txlist_hash": "555a7b8103a776f23b649ec297d2177fe885443dc976750a259547be47cd26e7", + "block_time": 1727201016 }, "tx_hash": null, - "block_index": 193, - "block_time": 1726509912 + "block_index": 194, + "block_time": 1727201016 } ], - "next_cursor": 529, - "result_count": 93 + "next_cursor": 536, + "result_count": 94 }, "/v2/events/TRANSACTION_PARSED": { "result": [ { - "event_index": 534, + "event_index": 541, "event": "TRANSACTION_PARSED", "params": { "supported": true, - "tx_hash": "f79c39d2a2896a86ef0bb2370101c664b69f2b9387afcd377d8226b839d419ce", - "tx_index": 59 + "tx_hash": "da0a0e76bfc982e2bbed2679a71f4e2d3ebc01140b448f430bb01b50f7ceaabb", + "tx_index": 60 }, - "tx_hash": "f79c39d2a2896a86ef0bb2370101c664b69f2b9387afcd377d8226b839d419ce", - "block_index": 193, - "block_time": 1726509912 + "tx_hash": "da0a0e76bfc982e2bbed2679a71f4e2d3ebc01140b448f430bb01b50f7ceaabb", + "block_index": 194, + "block_time": 1727201016 } ], - "next_cursor": 528, - "result_count": 47 + "next_cursor": 535, + "result_count": 48 }, "/v2/events/DEBIT": { "result": [ { - "event_index": 532, + "event_index": 539, "event": "DEBIT", "params": { "action": "destroy", - "address": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "address": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "asset": "XCP", - "block_index": 193, - "event": "f79c39d2a2896a86ef0bb2370101c664b69f2b9387afcd377d8226b839d419ce", + "block_index": 194, + "event": "da0a0e76bfc982e2bbed2679a71f4e2d3ebc01140b448f430bb01b50f7ceaabb", "quantity": 1, - "tx_index": 59, + "tx_index": 60, "utxo": null, "utxo_address": null, - "block_time": 1726509912, + "block_time": 1727201016, "asset_info": { "divisible": true, "asset_longname": null, @@ -8976,30 +9254,30 @@ }, "quantity_normalized": "0.00000001" }, - "tx_hash": "f79c39d2a2896a86ef0bb2370101c664b69f2b9387afcd377d8226b839d419ce", - "block_index": 193, - "block_time": 1726509912 + "tx_hash": "da0a0e76bfc982e2bbed2679a71f4e2d3ebc01140b448f430bb01b50f7ceaabb", + "block_index": 194, + "block_time": 1727201016 } ], - "next_cursor": 525, + "next_cursor": 532, "result_count": 54 }, "/v2/events/CREDIT": { "result": [ { - "event_index": 526, + "event_index": 533, "event": "CREDIT", "params": { - "address": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "address": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "asset": "XCP", - "block_index": 192, + "block_index": 193, "calling_function": "sweep", - "event": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", + "event": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", "quantity": 74499387833, - "tx_index": 58, + "tx_index": 59, "utxo": null, "utxo_address": null, - "block_time": 1726509908, + "block_time": 1727201012, "asset_info": { "divisible": true, "asset_longname": null, @@ -9009,30 +9287,30 @@ }, "quantity_normalized": "744.99388000" }, - "tx_hash": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", - "block_index": 192, - "block_time": 1726509908 + "tx_hash": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", + "block_index": 193, + "block_time": 1727201012 } ], - "next_cursor": 524, - "result_count": 67 + "next_cursor": 531, + "result_count": 68 }, "/v2/events/ENHANCED_SEND": { "result": [ { - "event_index": 484, + "event_index": 491, "event": "ENHANCED_SEND", "params": { "asset": "XCP", - "block_index": 187, - "destination": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "block_index": 188, + "destination": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "memo": null, "quantity": 10000, - "source": "bcrt1q3ds7n4l97tumdkgcr3vyhe04zaxce8ujr8fmr2", + "source": "bcrt1q9cf2ed4wk37qye08wlppw39l7prxws7afa3krk", "status": "valid", - "tx_hash": "f96235259f9722ca1558a6601a39e235c6a60fa33d67cc9e5039890d0ab2fe03", - "tx_index": 53, - "block_time": 1726509886, + "tx_hash": "e7989369eefaec09cec5770c6128eb548023225e666d57bbed74b3d03240e9c3", + "tx_index": 54, + "block_time": 1727200991, "asset_info": { "divisible": true, "asset_longname": null, @@ -9042,9 +9320,9 @@ }, "quantity_normalized": "0.00010000" }, - "tx_hash": "f96235259f9722ca1558a6601a39e235c6a60fa33d67cc9e5039890d0ab2fe03", - "block_index": 187, - "block_time": 1726509886 + "tx_hash": "e7989369eefaec09cec5770c6128eb548023225e666d57bbed74b3d03240e9c3", + "block_index": 188, + "block_time": 1727200991 } ], "next_cursor": null, @@ -9053,20 +9331,20 @@ "/v2/events/MPMA_SEND": { "result": [ { - "event_index": 496, + "event_index": 503, "event": "MPMA_SEND", "params": { "asset": "XCP", - "block_index": 188, - "destination": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", + "block_index": 189, + "destination": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", "memo": null, "msg_index": 2, "quantity": 10, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "status": "valid", - "tx_hash": "e8fda956958ed7de0a98e42d8d28349b9c7b5e20da375c185c5830526df6594f", - "tx_index": 54, - "block_time": 1726509890, + "tx_hash": "4cd813fae2558e89f2f9411f38daa7d4c10c94a267daa38155cf18fb4d9fd055", + "tx_index": 55, + "block_time": 1727200995, "asset_info": { "divisible": true, "asset_longname": null, @@ -9076,12 +9354,12 @@ }, "quantity_normalized": "0.00000010" }, - "tx_hash": "e8fda956958ed7de0a98e42d8d28349b9c7b5e20da375c185c5830526df6594f", - "block_index": 188, - "block_time": 1726509890 + "tx_hash": "4cd813fae2558e89f2f9411f38daa7d4c10c94a267daa38155cf18fb4d9fd055", + "block_index": 189, + "block_time": 1727200995 } ], - "next_cursor": 495, + "next_cursor": 502, "result_count": 3 }, "/v2/events/SEND": { @@ -9097,24 +9375,24 @@ "/v2/events/SWEEP": { "result": [ { - "event_index": 527, + "event_index": 534, "event": "SWEEP", "params": { - "block_index": 192, - "destination": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "block_index": 193, + "destination": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "fee_paid": 600000, "flags": 1, "memo": "sweep my assets", - "source": "bcrt1q3ds7n4l97tumdkgcr3vyhe04zaxce8ujr8fmr2", + "source": "bcrt1q9cf2ed4wk37qye08wlppw39l7prxws7afa3krk", "status": "valid", - "tx_hash": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", - "tx_index": 58, - "block_time": 1726509908, + "tx_hash": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", + "tx_index": 59, + "block_time": 1727201012, "fee_paid_normalized": "0.00600000" }, - "tx_hash": "dba7a5e5bcc1d3d892483a82eeafb64e004cd90c0a18224efca4444c0d5e2d2b", - "block_index": 192, - "block_time": 1726509908 + "tx_hash": "ef57fe404a275352ef8de6701efaf60dd0225ba63f29cfa502ceed9e51804774", + "block_index": 193, + "block_time": 1727201012 } ], "next_cursor": null, @@ -9123,23 +9401,23 @@ "/v2/events/ASSET_DIVIDEND": { "result": [ { - "event_index": 330, + "event_index": 337, "event": "ASSET_DIVIDEND", "params": { "asset": "MYASSETA", - "block_index": 153, + "block_index": 154, "dividend_asset": "XCP", "fee_paid": 40000, "quantity_per_unit": 100000000, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "status": "valid", - "tx_hash": "65e4ec441796883270c7bb0f18ca610e54b1ad0b3ae8a33e572bca985f65ee00", - "tx_index": 40, - "block_time": 1726509732, + "tx_hash": "1b9303b3959067c0857fe1abb4fdd4b3684c7534c12691382004cc31a9afcca4", + "tx_index": 41, + "block_time": 1727200857, "asset_info": { "asset_longname": null, "description": "My super asset A", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, @@ -9153,9 +9431,9 @@ "quantity_per_unit_normalized": "1.00000000", "fee_paid_normalized": "0.00040000" }, - "tx_hash": "65e4ec441796883270c7bb0f18ca610e54b1ad0b3ae8a33e572bca985f65ee00", - "block_index": 153, - "block_time": 1726509732 + "tx_hash": "1b9303b3959067c0857fe1abb4fdd4b3684c7534c12691382004cc31a9afcca4", + "block_index": 154, + "block_time": 1727200857 } ], "next_cursor": null, @@ -9169,33 +9447,33 @@ "/v2/events/ASSET_CREATION": { "result": [ { - "event_index": 380, + "event_index": 387, "event": "ASSET_CREATION", "params": { "asset_id": "95428956980101314", "asset_longname": "A95428959745315388.SUBNUMERIC", "asset_name": "A95428956980101314", - "block_index": 159, - "block_time": 1726509780 + "block_index": 160, + "block_time": 1727200884 }, - "tx_hash": "3f80ba6dc66be4e5b604bbf8e1e2007161960069d871f7cb00b1d24f9f090491", - "block_index": 159, - "block_time": 1726509780 + "tx_hash": "efd20bb15eb6a7ce22645a0fb33b1873d00dc0cdeb9533d37037e0fd6a63f512", + "block_index": 160, + "block_time": 1727200884 } ], - "next_cursor": 367, + "next_cursor": 374, "result_count": 9 }, "/v2/events/ASSET_ISSUANCE": { "result": [ { - "event_index": 381, + "event_index": 388, "event": "ASSET_ISSUANCE", "params": { "asset": "A95428956980101314", "asset_events": "creation", "asset_longname": "A95428959745315388.SUBNUMERIC", - "block_index": 159, + "block_index": 160, "call_date": 0, "call_price": 0.0, "callable": false, @@ -9203,42 +9481,42 @@ "description_locked": false, "divisible": true, "fee_paid": 0, - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "locked": false, "quantity": 100000000000, "reset": false, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "status": "valid", "transfer": false, - "tx_hash": "3f80ba6dc66be4e5b604bbf8e1e2007161960069d871f7cb00b1d24f9f090491", - "tx_index": 46, - "block_time": 1726509780, + "tx_hash": "efd20bb15eb6a7ce22645a0fb33b1873d00dc0cdeb9533d37037e0fd6a63f512", + "tx_index": 47, + "block_time": 1727200884, "quantity_normalized": "1000.00000000", "fee_paid_normalized": "0.00000000" }, - "tx_hash": "3f80ba6dc66be4e5b604bbf8e1e2007161960069d871f7cb00b1d24f9f090491", - "block_index": 159, - "block_time": 1726509780 + "tx_hash": "efd20bb15eb6a7ce22645a0fb33b1873d00dc0cdeb9533d37037e0fd6a63f512", + "block_index": 160, + "block_time": 1727200884 } ], - "next_cursor": 374, + "next_cursor": 381, "result_count": 21 }, "/v2/events/ASSET_DESTRUCTION": { "result": [ { - "event_index": 533, + "event_index": 540, "event": "ASSET_DESTRUCTION", "params": { "asset": "XCP", - "block_index": 193, + "block_index": 194, "quantity": 1, - "source": "bcrt1q4c4scyy4h00jxarlw6ey90n3dqthqxmc065u30", + "source": "bcrt1qd3zmq3esxuxu0emca5sqcx0j9gyvqe9ftwxxct", "status": "valid", "tag": "64657374726f79", - "tx_hash": "f79c39d2a2896a86ef0bb2370101c664b69f2b9387afcd377d8226b839d419ce", - "tx_index": 59, - "block_time": 1726509912, + "tx_hash": "da0a0e76bfc982e2bbed2679a71f4e2d3ebc01140b448f430bb01b50f7ceaabb", + "tx_index": 60, + "block_time": 1727201016, "asset_info": { "divisible": true, "asset_longname": null, @@ -9248,9 +9526,9 @@ }, "quantity_normalized": "0.00000001" }, - "tx_hash": "f79c39d2a2896a86ef0bb2370101c664b69f2b9387afcd377d8226b839d419ce", - "block_index": 193, - "block_time": 1726509912 + "tx_hash": "da0a0e76bfc982e2bbed2679a71f4e2d3ebc01140b448f430bb01b50f7ceaabb", + "block_index": 194, + "block_time": 1727201016 } ], "next_cursor": 157, @@ -9259,12 +9537,12 @@ "/v2/events/OPEN_ORDER": { "result": [ { - "event_index": 515, + "event_index": 522, "event": "OPEN_ORDER", "params": { - "block_index": 191, + "block_index": 192, "expiration": 21, - "expire_index": 212, + "expire_index": 213, "fee_provided": 10000, "fee_provided_remaining": 10000, "fee_required": 0, @@ -9275,11 +9553,11 @@ "give_asset": "XCP", "give_quantity": 1000, "give_remaining": 1000, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "status": "open", - "tx_hash": "7b7048040c893c69892bd088ce48db79b96b9c1d7221b50d903064ff5a1ed232", - "tx_index": 57, - "block_time": 1726509903, + "tx_hash": "132d67269995e3bc9e40d83bc0badefad56d85f0229eedfb0e2ccdf829d03d28", + "tx_index": 58, + "block_time": 1727201008, "give_asset_info": { "divisible": true, "asset_longname": null, @@ -9303,40 +9581,40 @@ "fee_required_remaining_normalized": "0.00000000", "fee_provided_remaining_normalized": "0.00010000" }, - "tx_hash": "7b7048040c893c69892bd088ce48db79b96b9c1d7221b50d903064ff5a1ed232", - "block_index": 191, - "block_time": 1726509903 + "tx_hash": "132d67269995e3bc9e40d83bc0badefad56d85f0229eedfb0e2ccdf829d03d28", + "block_index": 192, + "block_time": 1727201008 } ], - "next_cursor": 502, + "next_cursor": 509, "result_count": 7 }, "/v2/events/ORDER_MATCH": { "result": [ { - "event_index": 477, + "event_index": 484, "event": "ORDER_MATCH", "params": { "backward_asset": "BTC", "backward_quantity": 3000, - "block_index": 186, + "block_index": 187, "fee_paid": 0, "forward_asset": "XCP", "forward_quantity": 3000, - "id": "675f8dccad4bdcf4b54ce5aca7ddc442f642d63e518d64ad6068a264fb9894e1_d87f4afa605375256bce3dab7d014314a751d0d998cdc0842ac2dfc8c2fa2b21", - "match_expire_index": 206, + "id": "4844c5f31805a95e25af849d3e888b41d4cba82846300010c82895f4072e57f6_467f7e82754021f4a8a7e07800c1785d2619004c75fd9200884f7aa4def7caa7", + "match_expire_index": 207, "status": "pending", - "tx0_address": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "tx0_block_index": 184, + "tx0_address": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "tx0_block_index": 185, "tx0_expiration": 21, - "tx0_hash": "675f8dccad4bdcf4b54ce5aca7ddc442f642d63e518d64ad6068a264fb9894e1", - "tx0_index": 49, - "tx1_address": "bcrt1q3ds7n4l97tumdkgcr3vyhe04zaxce8ujr8fmr2", - "tx1_block_index": 186, + "tx0_hash": "4844c5f31805a95e25af849d3e888b41d4cba82846300010c82895f4072e57f6", + "tx0_index": 50, + "tx1_address": "bcrt1q9cf2ed4wk37qye08wlppw39l7prxws7afa3krk", + "tx1_block_index": 187, "tx1_expiration": 21, - "tx1_hash": "d87f4afa605375256bce3dab7d014314a751d0d998cdc0842ac2dfc8c2fa2b21", - "tx1_index": 52, - "block_time": 1726509871, + "tx1_hash": "467f7e82754021f4a8a7e07800c1785d2619004c75fd9200884f7aa4def7caa7", + "tx1_index": 53, + "block_time": 1727200986, "forward_asset_info": { "divisible": true, "asset_longname": null, @@ -9355,43 +9633,43 @@ "backward_quantity_normalized": "0.00003000", "fee_paid_normalized": "0.00000000" }, - "tx_hash": "d87f4afa605375256bce3dab7d014314a751d0d998cdc0842ac2dfc8c2fa2b21", - "block_index": 186, - "block_time": 1726509871 + "tx_hash": "467f7e82754021f4a8a7e07800c1785d2619004c75fd9200884f7aa4def7caa7", + "block_index": 187, + "block_time": 1727200986 } ], - "next_cursor": 461, + "next_cursor": 468, "result_count": 3 }, "/v2/events/ORDER_UPDATE": { "result": [ { - "event_index": 507, + "event_index": 514, "event": "ORDER_UPDATE", "params": { "status": "cancelled", - "tx_hash": "5e324d551a694d3f6ffc9c67b3db8817d470ba32257047ddee237d3d07c1a1e2" + "tx_hash": "83919cf82dd5eb1e2e1f6d3f3f752d34d41636ed00ab8ff78369eb81475b8e57" }, - "tx_hash": "18a9b72fc9e67470cff556297fa5f3dd95ea7d472693f42d597db7ad598c05ec", - "block_index": 190, - "block_time": 1726509899 + "tx_hash": "1d314894d90254c43598647c4ebca9b8f3f0d20a522eb8130d9955e95ea1c197", + "block_index": 191, + "block_time": 1727201003 } ], - "next_cursor": 476, + "next_cursor": 483, "result_count": 11 }, "/v2/events/ORDER_FILLED": { "result": [ { - "event_index": 468, + "event_index": 475, "event": "ORDER_FILLED", "params": { "status": "filled", - "tx_hash": "ebe20caac209f665277d0ac456ab451b4934a7d86529e24fd43b97535e62746a" + "tx_hash": "e2f9612faf4a7e6249958ba9d24aaf9e3d7a70b0dafaa5fb94dc51a088e6cf63" }, - "tx_hash": "d749fed653092a4854ac8c9773d9610edfb2b12db4c962aa3795cc653e8a624d", - "block_index": 185, - "block_time": 1726509867 + "tx_hash": "c78a916b13975e32514ea6fac0324481adfcc972f1db2cbabb96677db4d026cb", + "block_index": 186, + "block_time": 1727200982 } ], "next_cursor": null, @@ -9400,41 +9678,41 @@ "/v2/events/ORDER_MATCH_UPDATE": { "result": [ { - "event_index": 467, + "event_index": 474, "event": "ORDER_MATCH_UPDATE", "params": { - "id": "675f8dccad4bdcf4b54ce5aca7ddc442f642d63e518d64ad6068a264fb9894e1_ebe20caac209f665277d0ac456ab451b4934a7d86529e24fd43b97535e62746a", - "order_match_id": "675f8dccad4bdcf4b54ce5aca7ddc442f642d63e518d64ad6068a264fb9894e1_ebe20caac209f665277d0ac456ab451b4934a7d86529e24fd43b97535e62746a", + "id": "4844c5f31805a95e25af849d3e888b41d4cba82846300010c82895f4072e57f6_e2f9612faf4a7e6249958ba9d24aaf9e3d7a70b0dafaa5fb94dc51a088e6cf63", + "order_match_id": "4844c5f31805a95e25af849d3e888b41d4cba82846300010c82895f4072e57f6_e2f9612faf4a7e6249958ba9d24aaf9e3d7a70b0dafaa5fb94dc51a088e6cf63", "status": "completed" }, - "tx_hash": "d749fed653092a4854ac8c9773d9610edfb2b12db4c962aa3795cc653e8a624d", - "block_index": 185, - "block_time": 1726509867 + "tx_hash": "c78a916b13975e32514ea6fac0324481adfcc972f1db2cbabb96677db4d026cb", + "block_index": 186, + "block_time": 1727200982 } ], - "next_cursor": 440, + "next_cursor": 447, "result_count": 2 }, "/v2/events/BTC_PAY": { "result": [ { - "event_index": 469, + "event_index": 476, "event": "BTC_PAY", "params": { - "block_index": 185, + "block_index": 186, "btc_amount": 2000, - "destination": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "order_match_id": "675f8dccad4bdcf4b54ce5aca7ddc442f642d63e518d64ad6068a264fb9894e1_ebe20caac209f665277d0ac456ab451b4934a7d86529e24fd43b97535e62746a", - "source": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", + "destination": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "order_match_id": "4844c5f31805a95e25af849d3e888b41d4cba82846300010c82895f4072e57f6_e2f9612faf4a7e6249958ba9d24aaf9e3d7a70b0dafaa5fb94dc51a088e6cf63", + "source": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", "status": "valid", - "tx_hash": "d749fed653092a4854ac8c9773d9610edfb2b12db4c962aa3795cc653e8a624d", - "tx_index": 51, - "block_time": 1726509867, + "tx_hash": "c78a916b13975e32514ea6fac0324481adfcc972f1db2cbabb96677db4d026cb", + "tx_index": 52, + "block_time": 1727200982, "btc_amount_normalized": "0.00002000" }, - "tx_hash": "d749fed653092a4854ac8c9773d9610edfb2b12db4c962aa3795cc653e8a624d", - "block_index": 185, - "block_time": 1726509867 + "tx_hash": "c78a916b13975e32514ea6fac0324481adfcc972f1db2cbabb96677db4d026cb", + "block_index": 186, + "block_time": 1727200982 } ], "next_cursor": null, @@ -9443,20 +9721,20 @@ "/v2/events/CANCEL_ORDER": { "result": [ { - "event_index": 509, + "event_index": 516, "event": "CANCEL_ORDER", "params": { - "block_index": 190, - "offer_hash": "5e324d551a694d3f6ffc9c67b3db8817d470ba32257047ddee237d3d07c1a1e2", - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "block_index": 191, + "offer_hash": "83919cf82dd5eb1e2e1f6d3f3f752d34d41636ed00ab8ff78369eb81475b8e57", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "status": "valid", - "tx_hash": "18a9b72fc9e67470cff556297fa5f3dd95ea7d472693f42d597db7ad598c05ec", - "tx_index": 56, - "block_time": 1726509899 + "tx_hash": "1d314894d90254c43598647c4ebca9b8f3f0d20a522eb8130d9955e95ea1c197", + "tx_index": 57, + "block_time": 1727201003 }, - "tx_hash": "18a9b72fc9e67470cff556297fa5f3dd95ea7d472693f42d597db7ad598c05ec", - "block_index": 190, - "block_time": 1726509899 + "tx_hash": "1d314894d90254c43598647c4ebca9b8f3f0d20a522eb8130d9955e95ea1c197", + "block_index": 191, + "block_time": 1727201003 } ], "next_cursor": null, @@ -9465,37 +9743,37 @@ "/v2/events/ORDER_EXPIRATION": { "result": [ { - "event_index": 448, + "event_index": 455, "event": "ORDER_EXPIRATION", "params": { - "block_index": 182, - "order_hash": "afd6eab5bb50283dc170ad276157e78db2dc90cb330d559320b9adc3721a1fbc", - "source": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", - "block_time": 1726509796 + "block_index": 183, + "order_hash": "3a7ea4dc466a608d47050ca02aa94f8d84ae9ea60b94dcf727b3e6eb8728e8d8", + "source": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", + "block_time": 1727200899 }, "tx_hash": null, - "block_index": 182, - "block_time": 1726509796 + "block_index": 183, + "block_time": 1727200899 } ], - "next_cursor": 446, + "next_cursor": 453, "result_count": 2 }, "/v2/events/ORDER_MATCH_EXPIRATION": { "result": [ { - "event_index": 443, + "event_index": 450, "event": "ORDER_MATCH_EXPIRATION", "params": { - "block_index": 182, - "order_match_id": "e2263719273ed7cbb5496ae9daff21e24a2899e76feea1abbd4e91fa72766b5d_afd6eab5bb50283dc170ad276157e78db2dc90cb330d559320b9adc3721a1fbc", - "tx0_address": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "tx1_address": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", - "block_time": 1726509796 + "block_index": 183, + "order_match_id": "f90bb3520b4cd8e8f43ae4a416ea102f6a45a4cfd10b4620066271057abde926_3a7ea4dc466a608d47050ca02aa94f8d84ae9ea60b94dcf727b3e6eb8728e8d8", + "tx0_address": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "tx1_address": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", + "block_time": 1727200899 }, "tx_hash": null, - "block_index": 182, - "block_time": 1726509796 + "block_index": 183, + "block_time": 1727200899 } ], "next_cursor": null, @@ -9504,23 +9782,23 @@ "/v2/events/OPEN_DISPENSER": { "result": [ { - "event_index": 267, + "event_index": 272, "event": "OPEN_DISPENSER", "params": { "asset": "XCP", - "block_index": 145, + "block_index": 146, "dispense_count": 0, "escrow_quantity": 10000, "give_quantity": 1, "give_remaining": 10000, - "oracle_address": "bcrt1qlm44vh2ynrtqwh8j2mptwrzzfd04czsya4wxcd", - "origin": "bcrt1qlm44vh2ynrtqwh8j2mptwrzzfd04czsya4wxcd", + "oracle_address": "bcrt1qeshrsce6vyx833j2p85aesnx0aj9sxjtt79jak", + "origin": "bcrt1qeshrsce6vyx833j2p85aesnx0aj9sxjtt79jak", "satoshirate": 1, - "source": "bcrt1qlm44vh2ynrtqwh8j2mptwrzzfd04czsya4wxcd", + "source": "bcrt1qeshrsce6vyx833j2p85aesnx0aj9sxjtt79jak", "status": 0, - "tx_hash": "5c8374a3882f222038bbf9a0cce7589e84b790915b9228d66af1a5b0eb61ea2d", - "tx_index": 32, - "block_time": 1726509697, + "tx_hash": "1e7bea513de78cabf444b974fdb0efb4304b18bd990a889d7a0f8b0e3d21b6ea", + "tx_index": 33, + "block_time": 1727200823, "asset_info": { "divisible": true, "asset_longname": null, @@ -9533,9 +9811,9 @@ "escrow_quantity_normalized": "0.00010000", "satoshirate_normalized": "0.00000001" }, - "tx_hash": "5c8374a3882f222038bbf9a0cce7589e84b790915b9228d66af1a5b0eb61ea2d", - "block_index": 145, - "block_time": 1726509697 + "tx_hash": "1e7bea513de78cabf444b974fdb0efb4304b18bd990a889d7a0f8b0e3d21b6ea", + "block_index": 146, + "block_time": 1727200823 } ], "next_cursor": 254, @@ -9544,15 +9822,14 @@ "/v2/events/DISPENSER_UPDATE": { "result": [ { - "event_index": 274, + "event_index": 302, "event": "DISPENSER_UPDATE", "params": { "asset": "XCP", - "dispense_count": 1, - "give_remaining": 9334, - "source": "bcrt1qlm44vh2ynrtqwh8j2mptwrzzfd04czsya4wxcd", - "status": 0, - "tx_hash": "5c8374a3882f222038bbf9a0cce7589e84b790915b9228d66af1a5b0eb61ea2d", + "give_remaining": 0, + "source": "mtFzzdWHLZqWVVMGKENQscisyMTejQamk6", + "status": 10, + "tx_hash": "e6a18e565cab14aec4ba641f48a311c8643793f8fa84b25141ced517eaefc6f9", "asset_info": { "divisible": true, "asset_longname": null, @@ -9560,15 +9837,15 @@ "locked": true, "issuer": null }, - "give_remaining_normalized": "0.00009334" + "give_remaining_normalized": "0.00000000" }, - "tx_hash": "516159be9547a87a0ab0ce652ce9daebb10796eb67509fa50780dca28d813535", - "block_index": 146, - "block_time": 1726509701 + "tx_hash": "664b33a2858e0961f08c6a45f5ec6b98042d62a4f4e98faf6862f374be802724", + "block_index": 150, + "block_time": 1727200840 } ], - "next_cursor": 260, - "result_count": 4 + "next_cursor": 279, + "result_count": 6 }, "/v2/events/REFILL_DISPENSER": { "result": [ @@ -9578,13 +9855,13 @@ "params": { "asset": "XCP", "block_index": 144, - "destination": "mnLwb4LAYvLe6gesyGs1d34NnRaSRpScfq", + "destination": "mtFzzdWHLZqWVVMGKENQscisyMTejQamk6", "dispense_quantity": 10, - "dispenser_tx_hash": "d3713f7f4355cf95ddb00030d4c53655897b901d6827b640ee27cc83efaba2e6", - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", - "tx_hash": "962792bfe558b1042295417f1b88d03dfa7547cb82ab870bbd57854561acf3b5", + "dispenser_tx_hash": "e6a18e565cab14aec4ba641f48a311c8643793f8fa84b25141ced517eaefc6f9", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", + "tx_hash": "b1e16747a30649a1850561f22204365ba5a8721325f1509544a91cbd364ea876", "tx_index": 31, - "block_time": 1726509693, + "block_time": 1727200815, "asset_info": { "divisible": true, "asset_longname": null, @@ -9594,9 +9871,9 @@ }, "dispense_quantity_normalized": "0.00000010" }, - "tx_hash": "962792bfe558b1042295417f1b88d03dfa7547cb82ab870bbd57854561acf3b5", + "tx_hash": "b1e16747a30649a1850561f22204365ba5a8721325f1509544a91cbd364ea876", "block_index": 144, - "block_time": 1726509693 + "block_time": 1727200815 } ], "next_cursor": null, @@ -9605,20 +9882,20 @@ "/v2/events/DISPENSE": { "result": [ { - "event_index": 275, + "event_index": 280, "event": "DISPENSE", "params": { "asset": "XCP", - "block_index": 146, + "block_index": 147, "btc_amount": 10000, - "destination": "bcrt1qlqcrlvw5t7cnj8r9hjl0qq67c2fyk5kvfra90p", + "destination": "bcrt1qfvucymcd7u04hpd7eafsmxwnashcmaqs54q79p", "dispense_index": 0, "dispense_quantity": 666, - "dispenser_tx_hash": "5c8374a3882f222038bbf9a0cce7589e84b790915b9228d66af1a5b0eb61ea2d", - "source": "bcrt1qlm44vh2ynrtqwh8j2mptwrzzfd04czsya4wxcd", - "tx_hash": "516159be9547a87a0ab0ce652ce9daebb10796eb67509fa50780dca28d813535", - "tx_index": 33, - "block_time": 1726509701, + "dispenser_tx_hash": "1e7bea513de78cabf444b974fdb0efb4304b18bd990a889d7a0f8b0e3d21b6ea", + "source": "bcrt1qeshrsce6vyx833j2p85aesnx0aj9sxjtt79jak", + "tx_hash": "6b21482e6e461d42ded8e74826ff88a8b23621baaa45e714c7c2a20457bd6c12", + "tx_index": 34, + "block_time": 1727200827, "asset_info": { "divisible": true, "asset_longname": null, @@ -9629,9 +9906,9 @@ "dispense_quantity_normalized": "0.00000666", "btc_amount_normalized": "0.00010000" }, - "tx_hash": "516159be9547a87a0ab0ce652ce9daebb10796eb67509fa50780dca28d813535", - "block_index": 146, - "block_time": 1726509701 + "tx_hash": "6b21482e6e461d42ded8e74826ff88a8b23621baaa45e714c7c2a20457bd6c12", + "block_index": 147, + "block_time": 1727200827 } ], "next_cursor": 240, @@ -9646,19 +9923,19 @@ "block_index": 138, "fee_fraction_int": 0, "locked": false, - "source": "bcrt1qlm44vh2ynrtqwh8j2mptwrzzfd04czsya4wxcd", + "source": "bcrt1qeshrsce6vyx833j2p85aesnx0aj9sxjtt79jak", "status": "valid", "text": "price-USD", "timestamp": 4003903983, - "tx_hash": "0b3452fcb5ee0a881ba450a768e89de4e0c89e297785e478dd6fc844975bec3a", + "tx_hash": "28499c6a50363ce063ee5e7f5de4d43ea5bf86a19dc05ea650443b343c00e258", "tx_index": 25, "value": 66600.0, - "block_time": 1726509656, + "block_time": 1727200790, "fee_fraction_int_normalized": "0.00000000" }, - "tx_hash": "0b3452fcb5ee0a881ba450a768e89de4e0c89e297785e478dd6fc844975bec3a", + "tx_hash": "28499c6a50363ce063ee5e7f5de4d43ea5bf86a19dc05ea650443b343c00e258", "block_index": 138, - "block_time": 1726509656 + "block_time": 1727200790 } ], "next_cursor": 213, @@ -9689,16 +9966,16 @@ "quantity_by_price": 60, "soft_cap": 0, "soft_cap_deadline_block": 0, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "start_block": 0, "status": "open", - "tx_hash": "d91c1e127adf6010f11ee5d04a4cd804ece0ff8087b450f307ae85b6f5f83137", + "tx_hash": "5f1bb112a42ace59fa09d6a6fc1916eec2a940d44682b160c97bbae14494b127", "tx_index": 22, - "block_time": 1726509644 + "block_time": 1727200777 }, - "tx_hash": "d91c1e127adf6010f11ee5d04a4cd804ece0ff8087b450f307ae85b6f5f83137", + "tx_hash": "5f1bb112a42ace59fa09d6a6fc1916eec2a940d44682b160c97bbae14494b127", "block_index": 135, - "block_time": 1726509644 + "block_time": 1727200777 } ], "next_cursor": 161, @@ -9711,11 +9988,11 @@ "event": "FAIRMINTER_UPDATE", "params": { "status": "closed", - "tx_hash": "536537382f35f3fc4bf3bcb4f6957228528eaa802dc49361f6339cd575de0a16" + "tx_hash": "ef8994a7c4750636583ff8d92fe09ac8c38d280813f2e2e923e07c9b9a3d9cda" }, "tx_hash": null, "block_index": 130, - "block_time": 1726509613 + "block_time": 1727200756 } ], "next_cursor": 110, @@ -9731,24 +10008,24 @@ "block_index": 136, "commission": 0, "earn_quantity": 40, - "fairminter_tx_hash": "d91c1e127adf6010f11ee5d04a4cd804ece0ff8087b450f307ae85b6f5f83137", + "fairminter_tx_hash": "5f1bb112a42ace59fa09d6a6fc1916eec2a940d44682b160c97bbae14494b127", "paid_quantity": 34, - "source": "bcrt1q27zp64q9t2gw6vdy06vzrlf3rrnw0pvja32j8t", + "source": "bcrt1q2nqm5v62ryf0jc6n7ygf8zf8cezllyryfdfnk9", "status": "valid", - "tx_hash": "a899b1a361e0514262442a4a300d7571606a3462d50819092e649c490fbcb1e6", + "tx_hash": "bccbb42deef048209e07d9fb0f7340bb2b1e8f10c5e54f1cfa55accb8ac66283", "tx_index": 23, - "block_time": 1726509648, + "block_time": 1727200781, "asset_info": { "asset_longname": "", "description": "", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false } }, - "tx_hash": "a899b1a361e0514262442a4a300d7571606a3462d50819092e649c490fbcb1e6", + "tx_hash": "bccbb42deef048209e07d9fb0f7340bb2b1e8f10c5e54f1cfa55accb8ac66283", "block_index": 136, - "block_time": 1726509648 + "block_time": 1727200781 } ], "next_cursor": 190, @@ -9757,68 +10034,68 @@ "/v2/events/ATTACH_TO_UTXO": { "result": [ { - "event_index": 312, + "event_index": 319, "event": "ATTACH_TO_UTXO", "params": { "asset": "MYASSETA", - "block_index": 151, - "destination": "a79ea4de3cb6cae0d2b3bbf427028357f9dca64f8d599c93511be263bfda8c8a:1", + "block_index": 152, + "destination": "10c98431b6929b14e27a040b17f2d22aafc7813478587e2bbaca26c1c6197538:1", "fee_paid": 0, "msg_index": 0, "quantity": 1000000000, - "source": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "source": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "status": "valid", - "tx_hash": "a79ea4de3cb6cae0d2b3bbf427028357f9dca64f8d599c93511be263bfda8c8a", - "tx_index": 38, - "block_time": 1726509724, + "tx_hash": "10c98431b6929b14e27a040b17f2d22aafc7813478587e2bbaca26c1c6197538", + "tx_index": 39, + "block_time": 1727200849, "asset_info": { "asset_longname": null, "description": "My super asset A", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, "quantity_normalized": "10.00000000", "fee_paid_normalized": "0.00000000" }, - "tx_hash": "a79ea4de3cb6cae0d2b3bbf427028357f9dca64f8d599c93511be263bfda8c8a", - "block_index": 151, - "block_time": 1726509724 + "tx_hash": "10c98431b6929b14e27a040b17f2d22aafc7813478587e2bbaca26c1c6197538", + "block_index": 152, + "block_time": 1727200849 } ], - "next_cursor": 291, + "next_cursor": 296, "result_count": 2 }, "/v2/events/DETACH_FROM_UTXO": { "result": [ { - "event_index": 304, + "event_index": 311, "event": "DETACH_FROM_UTXO", "params": { "asset": "MYASSETA", - "block_index": 150, - "destination": "bcrt1qghqkpk28xhsruvxjphq0ecx2ec35v90uksf2j0", + "block_index": 151, + "destination": "bcrt1qe4v63z8qa2kvy5yzt4ssr8zhwxgqw84j8nmhvg", "fee_paid": 0, "msg_index": 0, "quantity": 500000000, - "source": "9d48ae21a1caed318e44591060a2d5873ed0ef5b403a5447046052a111c7dd88:0", + "source": "664b33a2858e0961f08c6a45f5ec6b98042d62a4f4e98faf6862f374be802724:0", "status": "valid", - "tx_hash": "05a57c8eb387d6f5e5f5a0ae90eb2873a7750c2f87e65b21b176c88da3be21ba", - "tx_index": 37, - "block_time": 1726509719, + "tx_hash": "f409e618a14bf7943a7027f7f66f55aaf0604d8c0cafc7c0062f5c6bdf82d7b6", + "tx_index": 38, + "block_time": 1727200844, "asset_info": { "asset_longname": null, "description": "My super asset A", - "issuer": "bcrt1q0mfg7g243m5we4u2xwgstem4vgfeqxmwzstddj", + "issuer": "bcrt1q0kfl7h5k624gxq4sn5mxz2zaa3lf6fatfnkfhs", "divisible": true, "locked": false }, "quantity_normalized": "5.00000000", "fee_paid_normalized": "0.00000000" }, - "tx_hash": "05a57c8eb387d6f5e5f5a0ae90eb2873a7750c2f87e65b21b176c88da3be21ba", - "block_index": 150, - "block_time": 1726509719 + "tx_hash": "f409e618a14bf7943a7027f7f66f55aaf0604d8c0cafc7c0062f5c6bdf82d7b6", + "block_index": 151, + "block_time": 1727200844 } ], "next_cursor": null, @@ -9827,19 +10104,19 @@ "/v2/events/UTXO_MOVE": { "result": [ { - "event_index": 349, + "event_index": 356, "event": "UTXO_MOVE", "params": { "asset": "XCP", - "block_index": 155, - "destination": "f48f32cde583a1233260e9d07c858726031b0aadb7550a061602ad6cffd5f3a7:1", + "block_index": 156, + "destination": "ca11a87b6b09143626cafffbc32be68d26d43df5facbb48aa919ce857c1aa739:1", "msg_index": 1, "quantity": 1500000000, - "source": "3f0027dbe860c95e4cea6d1c83db0d8ea3acf7adbeacefd7e8eb56e9399d879b:0", + "source": "9d347b5453e8bf2608768d2b109367ce3aaf5a12d4bc63526fa6fb59eab1901d:0", "status": "valid", - "tx_hash": "f48f32cde583a1233260e9d07c858726031b0aadb7550a061602ad6cffd5f3a7", - "tx_index": 42, - "block_time": 1726509741, + "tx_hash": "ca11a87b6b09143626cafffbc32be68d26d43df5facbb48aa919ce857c1aa739", + "tx_index": 43, + "block_time": 1727200867, "asset_info": { "divisible": true, "asset_longname": null, @@ -9849,12 +10126,12 @@ }, "quantity_normalized": "15.00000000" }, - "tx_hash": "f48f32cde583a1233260e9d07c858726031b0aadb7550a061602ad6cffd5f3a7", - "block_index": 155, - "block_time": 1726509741 + "tx_hash": "ca11a87b6b09143626cafffbc32be68d26d43df5facbb48aa919ce857c1aa739", + "block_index": 156, + "block_time": 1727200867 } ], - "next_cursor": 346, + "next_cursor": 353, "result_count": 7 }, "/v2/events/BURN": { @@ -9866,17 +10143,17 @@ "block_index": 121, "burned": 50000000, "earned": 74999996667, - "source": "bcrt1qyzyw25seaw22494hrmtlwsm3d5mqyp93fd25da", + "source": "bcrt1quygvuzd7gsxym55nf7w85agucgajyp9p5jduqp", "status": "valid", - "tx_hash": "2504c4bdafa1c2cab23605685e6a8040748f7d6df91f857b42f1cb259d3a91e0", + "tx_hash": "bb35e686d434cae9951da80cf904917280d38b8251f1626625123d1a058d4a6d", "tx_index": 9, - "block_time": 1726509573, + "block_time": 1727200719, "burned_normalized": "0.50000000", "earned_normalized": "749.99997000" }, - "tx_hash": "2504c4bdafa1c2cab23605685e6a8040748f7d6df91f857b42f1cb259d3a91e0", + "tx_hash": "bb35e686d434cae9951da80cf904917280d38b8251f1626625123d1a058d4a6d", "block_index": 121, - "block_time": 1726509573 + "block_time": 1727200719 } ], "next_cursor": 65, diff --git a/counterparty-core/counterpartycore/test/regtest/apidoc/blueprint-template.md b/counterparty-core/counterpartycore/test/regtest/apidoc/blueprint-template.md index 9b6ad49d65..4a50dd6bf4 100644 --- a/counterparty-core/counterpartycore/test/regtest/apidoc/blueprint-template.md +++ b/counterparty-core/counterpartycore/test/regtest/apidoc/blueprint-template.md @@ -158,7 +158,7 @@ Returns server information and the list of documented routes in JSON format. "result": { "server_ready": true, "network": "mainnet", - "version": "10.4.0", + "version": "10.4.1", "backend_height": 850214, "counterparty_height": 850214, "documentation": "https://counterpartycore.docs.apiary.io/", diff --git a/counterparty-core/counterpartycore/test/regtest/regtestnode.py b/counterparty-core/counterpartycore/test/regtest/regtestnode.py index fa1a29af92..38a31ff250 100644 --- a/counterparty-core/counterpartycore/test/regtest/regtestnode.py +++ b/counterparty-core/counterpartycore/test/regtest/regtestnode.py @@ -78,7 +78,7 @@ def send_transaction( self.wait_for_counterparty_server() if return_only_data: params["return_only_data"] = True - params["fee"] = 10000 # fixed fee + params["exact_fee"] = 10000 # fixed fee query_string = urllib.parse.urlencode(params) if tx_name in ["detach", "movetoutxo"]: compose_url = f"utxos/{source}/compose/{tx_name}?{query_string}" @@ -117,7 +117,7 @@ def send_transaction( else: raise e print(f"Transaction sent: {tx_name} {params} ({tx_hash})") - return tx_hash, block_hash, block_time + return tx_hash, block_hash, block_time, result["result"]["data"] def wait_for_counterparty_server(self, block=None): while True: diff --git a/counterparty-core/counterpartycore/test/regtest/scenarios/scenario_6_dispenser.py b/counterparty-core/counterpartycore/test/regtest/scenarios/scenario_6_dispenser.py index 212bd689d2..d17a82d5bb 100644 --- a/counterparty-core/counterpartycore/test/regtest/scenarios/scenario_6_dispenser.py +++ b/counterparty-core/counterpartycore/test/regtest/scenarios/scenario_6_dispenser.py @@ -187,7 +187,7 @@ "asset": "XCP", "dispense_count": 0, "give_remaining": 20, - "source": "$ADDRESS_1", + "source": "$ADDRESS_11", "status": 0, "tx_hash": "$DISPENSER_4_TX_HASH", }, @@ -213,6 +213,43 @@ }, ], }, + { + "title": "Close Dispenser 4 with different source", + "transaction": "dispenser", + "source": "$ADDRESS_1", + "params": { + "asset": "XCP", + "give_quantity": 1, + "escrow_quantity": 10, + "mainchainrate": 1, # 1 BTC for 1 XCP + "status": 10, + "open_address": "$ADDRESS_11", + }, + "set_variables": { + "DISPENSER_4_CLOSE_TX_HASH": "$TX_HASH", + }, + "controls": [ + { + "url": "blocks/$BLOCK_INDEX/events?event_name=DISPENSER_UPDATE", + "result": [ + { + "event": "DISPENSER_UPDATE", + "event_index": 266, + "params": { + "asset": "XCP", + "close_block_index": 150, + "last_status_tx_hash": "$TX_HASH", + "last_status_tx_source": "$ADDRESS_1", + "source": "$ADDRESS_1", + "status": 11, + "tx_hash": "$DISPENSER_4_TX_HASH", + }, + "tx_hash": "$TX_HASH", + } + ], + }, + ], + }, { "title": "Create Dispenser 5 with oracle address", "transaction": "dispenser", diff --git a/counterparty-core/counterpartycore/test/regtest/scenarios/scenario_7_utxo.py b/counterparty-core/counterpartycore/test/regtest/scenarios/scenario_7_utxo.py index 1bf5984bac..6a1af52a1c 100644 --- a/counterparty-core/counterpartycore/test/regtest/scenarios/scenario_7_utxo.py +++ b/counterparty-core/counterpartycore/test/regtest/scenarios/scenario_7_utxo.py @@ -175,11 +175,11 @@ }, "controls": [ { - "url": "blocks/$BLOCK_INDEX/events?event_name=UTXO_MOVE,CREDIT,DEBIT,NEW_TRANSACTION", + "url": "blocks/$BLOCK_INDEX/events?event_name=UTXO_MOVE,CREDIT,DEBIT,DISPENSER_UPDATE,NEW_TRANSACTION", "result": [ { "event": "UTXO_MOVE", - "event_index": "$EVENT_INDEX_5", + "event_index": "$EVENT_INDEX_7", "params": { "asset": "MYASSETA", "block_index": "$BLOCK_INDEX", @@ -195,7 +195,7 @@ }, { "event": "CREDIT", - "event_index": "$EVENT_INDEX_4", + "event_index": "$EVENT_INDEX_6", "params": { "address": None, "asset": "MYASSETA", @@ -211,7 +211,7 @@ }, { "event": "DEBIT", - "event_index": "$EVENT_INDEX_3", + "event_index": "$EVENT_INDEX_5", "params": { "action": "utxo move", "address": None, @@ -225,6 +225,34 @@ }, "tx_hash": "$TX_HASH", }, + { + "event": "DISPENSER_UPDATE", + "event_index": "$EVENT_INDEX_4", + "params": { + "asset": "XCP", + "give_remaining": 0, + "source": "$ADDRESS_11", + "status": 10, + "tx_hash": "$DISPENSER_4_TX_HASH", + }, + "tx_hash": "$TX_HASH", + }, + { + "event": "CREDIT", + "event_index": "$EVENT_INDEX_3", + "params": { + "address": "$ADDRESS_1", + "asset": "XCP", + "block_index": 150, + "calling_function": "close dispenser", + "event": "$DISPENSER_4_CLOSE_TX_HASH", + "quantity": 20, + "tx_index": 0, + "utxo": None, + "utxo_address": None, + }, + "tx_hash": "$TX_HASH", + }, { "event": "NEW_TRANSACTION", "event_index": "$EVENT_INDEX_2", @@ -599,7 +627,7 @@ "addresses": [ { "address": "$ADDRESS_1", - "quantity": 84749988186, + "quantity": 84749988206, "utxo": None, "utxo_address": None, }, @@ -617,7 +645,7 @@ }, ], "asset": "XCP", - "total": 234749973019, + "total": 234749973039, }, ], }, diff --git a/counterparty-core/counterpartycore/test/regtest/scenarios/scenario_last_mempool.py b/counterparty-core/counterpartycore/test/regtest/scenarios/scenario_last_mempool.py index ed5b97cb8f..1ce9067f32 100644 --- a/counterparty-core/counterpartycore/test/regtest/scenarios/scenario_last_mempool.py +++ b/counterparty-core/counterpartycore/test/regtest/scenarios/scenario_last_mempool.py @@ -64,6 +64,57 @@ }, ], }, + { + "url": "transactions/$TX_HASH/info", + "result": { + "btc_amount": 0, + "data": "$TX_DATA", + "decoded_tx": { + "coinbase": False, + "lock_time": 0, + "segwit": True, + "tx_hash": "$TX_HASH", + "tx_id": "$TX_HASH", + "version": 2, + "vin": [ + { + "coinbase": False, + "hash": "$DESTROY_1_TX_HASH", + "n": 1, + "script_sig": "", + "sequence": 4294967295, + } + ], + "vout": [ + { + "script_pub_key": "6a2e547ea24ed06a615893c16ff8e59a84444825e1af612ae2be0a26b09d39295552fef91497fd4146e8613d6be321c7", + "value": 0, + }, + { + "script_pub_key": "0014dde33a51e649066e7add6dcf0963892c4fe5d653", + "value": 4999955000, + }, + ], + "vtxinwit": [ + "304402206145e076eabf0de3e5b4edfea8be33c9b22f47d258d7d4c5682b3d0f6e3c648e022037f3e5451f4257e4ecfaa7c34016e00e5fb73cacb81eff875017d24a62b0a5bc01", + "0355f42b0e4c7b6e73addef75deab673b9727225a3d529511ef28f5df36472826c", + ], + }, + "destination": None, + "fee": 10000, + "source": "$ADDRESS_4", + "unpacked_data": { + "message_data": { + "address": "$ADDRESS_3", + "asset": "XCP", + "memo": None, + "quantity": 10000, + }, + "message_type": "enhanced_send", + "message_type_id": 2, + }, + }, + }, ], }, ] diff --git a/counterparty-core/counterpartycore/test/regtest/testscenarios.py b/counterparty-core/counterpartycore/test/regtest/testscenarios.py index a4473f38d3..9c5898406a 100644 --- a/counterparty-core/counterpartycore/test/regtest/testscenarios.py +++ b/counterparty-core/counterpartycore/test/regtest/testscenarios.py @@ -78,7 +78,7 @@ def prepare_item(item, node, context): return item -def control_result(item, node, context, block_hash, block_time, tx_hash, retry=0): +def control_result(item, node, context, block_hash, block_time, tx_hash, data, retry=0): block_index = node.block_count events = node.api_call(f"blocks/{block_index}/events")["result"] event_indexes = sorted([event["event_index"] for event in events]) @@ -99,7 +99,7 @@ def control_result(item, node, context, block_hash, block_time, tx_hash, retry=0 ): time.sleep(2) return control_result( - item, node, context, block_hash, block_time, tx_hash, retry=retry + 1 + item, node, context, block_hash, block_time, tx_hash, data, retry=retry + 1 ) expected_result = control["result"] @@ -111,6 +111,8 @@ def control_result(item, node, context, block_hash, block_time, tx_hash, retry=0 .replace('"$TX_INDEX"', str(node.tx_index)) .replace('"$BLOCK_TIME"', str(block_time)) ) + if data: + expected_result = expected_result.replace("$TX_DATA", data[16:]) # strip the prefix for i in reversed(range(len(event_indexes))): event_index = event_indexes[i] expected_result = expected_result.replace(f'"$EVENT_INDEX_{i + 1}"', str(event_index)) @@ -122,8 +124,16 @@ def control_result(item, node, context, block_hash, block_time, tx_hash, retry=0 expected_result = expected_result.replace(f'"${name}"', value) else: expected_result = expected_result.replace(f"${name}", value) + # print(f"Expected result: {expected_result}") expected_result = json.loads(expected_result) + if isinstance(expected_result, dict) and "decoded_tx" in expected_result: + del expected_result["decoded_tx"] + if "decoded_tx" not in result["result"]: + raise AssertionError("decoded_tx not in result") + if isinstance(result["result"], dict) and "decoded_tx" in result["result"]: + del result["result"]["decoded_tx"] + try: assert result["result"] == expected_result print(f"{item['title']}: " + colored("Success", "green")) @@ -139,6 +149,7 @@ def control_result(item, node, context, block_hash, block_time, tx_hash, retry=0 def run_item(node, item, context): print(f"Running: {item['title']}") + tx_data = None if "disable_protocol_changes" in item: node.disable_protocol_changes(item["disable_protocol_changes"]) @@ -171,7 +182,7 @@ def run_item(node, item, context): ) tx_hash, block_hash, block_time = node.broadcast_transaction(signed_transaction) else: - tx_hash, block_hash, block_time = node.send_transaction( + tx_hash, block_hash, block_time, tx_data = node.send_transaction( item["source"], item["transaction"], item["params"], @@ -208,7 +219,7 @@ def run_item(node, item, context): ) if "controls" in item: - control_result(item, node, context, block_hash, block_time, tx_hash) + control_result(item, node, context, block_hash, block_time, tx_hash, tx_data) return context @@ -235,7 +246,8 @@ def run_scenarios(serve=False): ) time.sleep(1) else: - os.unlink(os.path.join(CURR_DIR, "apidoc/apicache.json")) + if os.path.exists(os.path.join(CURR_DIR, "apidoc/apicache.json")): + os.unlink(os.path.join(CURR_DIR, "apidoc/apicache.json")) sh.python3( os.path.join(CURR_DIR, "genapidoc.py"), os.path.abspath("regtestnode"), @@ -247,7 +259,7 @@ def run_scenarios(serve=False): except KeyboardInterrupt: pass except Exception as e: - # print(regtest_node_thread.node.server_out.getvalue()) + print(regtest_node_thread.node.server_out.getvalue()) raise e finally: # print(regtest_node_thread.node.server_out.getvalue()) diff --git a/counterparty-core/counterpartycore/test/util_test.py b/counterparty-core/counterpartycore/test/util_test.py index db085d4343..5523f5c634 100644 --- a/counterparty-core/counterpartycore/test/util_test.py +++ b/counterparty-core/counterpartycore/test/util_test.py @@ -43,6 +43,7 @@ transaction, util, ) +from counterpartycore.lib.api.util import to_json # noqa: E402 from counterpartycore.lib.messages import fairminter, utxo # noqa from counterpartycore.test.fixtures.params import DEFAULT_PARAMS as DP # noqa: E402 from counterpartycore.test.fixtures.scenarios import ( # noqa: E402 @@ -633,8 +634,6 @@ def run_scenario(scenario): raw_transactions = [] - transaction.initialise(force=True) - for tx in scenario: if tx[0] != "create_next_block": mock_protocol_changes = tx[3] if len(tx) == 4 else {} @@ -644,6 +643,7 @@ def run_scenario(scenario): unsigned_tx_hex = transaction.construct( db=db, tx_info=compose(db, *tx[1]), regular_dust_size=5430, **tx[2] ) + unsigned_tx_hex = unsigned_tx_hex["unsigned_tx_hex"] raw_transactions.append({tx[0]: unsigned_tx_hex}) insert_raw_transaction(unsigned_tx_hex, db) else: @@ -814,7 +814,8 @@ def exec_tested_method(tx_name, method, tested_method, inputs, server_db): in [ "script", "transaction", - "transaction_helper.serializer", + "transaction_helper.common_serializer", + "transaction_helper.transaction_outputs", "backend", "message_type", "address", @@ -912,9 +913,7 @@ def check_outputs( ) else: msg = f"expected outputs don't match test_outputs: expected_outputs={outputs} test_outputs={test_outputs}" - import json - - print(json.dumps(test_outputs, indent=4)) + print(to_json(test_outputs)) raise Exception(msg) # noqa: B904 if records is not None: for record in records: diff --git a/counterparty-core/counterpartycore/test/utxolocks_test.py b/counterparty-core/counterpartycore/test/utxolocks_test.py index ccc4b256e8..1bf04ee089 100644 --- a/counterparty-core/counterpartycore/test/utxolocks_test.py +++ b/counterparty-core/counterpartycore/test/utxolocks_test.py @@ -7,6 +7,7 @@ from counterpartycore.lib import transaction from counterpartycore.lib.messages import send +from counterpartycore.lib.transaction_helper import transaction_inputs from counterpartycore.test import ( conftest, # noqa: F401 ) @@ -19,15 +20,15 @@ FIXTURE_OPTIONS = {"utxo_locks_max_addresses": 2000} -def construct_tx(db, source, destination, disable_utxo_locks=False, custom_inputs=None): +def construct_tx(db, source, destination, disable_utxo_locks=False, inputs_set=None): tx_info = send.compose(db, source, destination, "XCP", 1) return transaction.construct( - db, tx_info, disable_utxo_locks=disable_utxo_locks, custom_inputs=custom_inputs + db, tx_info, disable_utxo_locks=disable_utxo_locks, inputs_set=inputs_set ) def test_utxolocks(server_db): - transaction.initialise(force=True) # reset UTXO_LOCKS + transaction_inputs.UTXOLocks().init(utxo_locks_max_addresses=10) # reset UTXO_LOCKS """it shouldn't use the same UTXO""" tx1hex = construct_tx( @@ -37,10 +38,10 @@ def test_utxolocks(server_db): server_db, "mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns", "mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns" ) - tx1f = BytesIO(binascii.unhexlify(tx1hex)) + tx1f = BytesIO(binascii.unhexlify(tx1hex["unsigned_tx_hex"])) tx1 = bitcoin.core.CTransaction.stream_deserialize(tx1f) - tx2f = BytesIO(binascii.unhexlify(tx2hex)) + tx2f = BytesIO(binascii.unhexlify(tx2hex["unsigned_tx_hex"])) tx2 = bitcoin.core.CTransaction.stream_deserialize(tx2f) assert (tx1.vin[0].prevout.hash, tx1.vin[0].prevout.n) != ( @@ -50,10 +51,10 @@ def test_utxolocks(server_db): def test_utxolocks_custom_input(server_db): - transaction.initialise(force=True) # reset UTXO_LOCKS + transaction_inputs.UTXOLocks().init(utxo_locks_max_addresses=10) # reset UTXO_LOCKS """it should use the same UTXO""" - custom_inputs = [ + inputs_set = [ { "txid": "b9fc3aa355b77ecb63282fc96e63912a253e98bf9cf441fbfbecc3fb277c4985", "txhex": "0100000003114bbc2ce4f18490cd33fa17ad747f2cbb932fe4bd628e7729f18e73caa9c824000000006b4830450220170594244dacb99013340f07ca7da05c91d2f235094481213abf3b3648ff12ab022100ea612f4326e074daeb3f3b92bce7862c7377d16e66930415cb33930e773d8600012103bdd82e7398e604438316511b7be56925256b5b1f64b508432f4b4e3e728db637ffffffff22fcc4468552b950781e3facbf75a27b8d633cb7299f02b4bcc3615d9923bcfb000000006b483045022051ed13a5bf5e9ea753f0b2e4e76d1bea73de912e214314ed96e043ad21f53dee022100f6556d547c5012fcbd3348f71da8fe03eb101f73b7b1b366e3937119cc87a90c01210282b886c087eb37dc8182f14ba6cc3e9485ed618b95804d44aecc17c300b585b0ffffffffe5237334401359af1cc80b3b4af969fab42e92e636ef0523df6b68122f23d952000000006b483045022100cd74fe9ca13e44607521f410468979ed9e0b3addef2a9d48e08bf608d72c446c022058753f930f2d394410c3e6e950788e6b0371d4403ef5a9dc194980218de5ac76012102ab7a70956655c4d4cc44b73587ae70a21ab0db9ba8d704b97d911ea3bf1e5d67ffffffff02ffb3a900000000001976a9148d6ae8a3b381663118b4e1eff4cfc7d0954dd6ec88ac0065cd1d000000001976a914d1ba3ba3d6f5ad06b148bcc04151ecab84fc397988ac00000000", @@ -69,19 +70,19 @@ def test_utxolocks_custom_input(server_db): server_db, "mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns", "mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns", - custom_inputs=custom_inputs, + inputs_set=inputs_set, ) tx2hex = construct_tx( server_db, "mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns", "mtQheFaSfWELRB2MyMBaiWjdDm6ux9Ezns", - custom_inputs=custom_inputs, + inputs_set=inputs_set, ) - tx1f = BytesIO(binascii.unhexlify(tx1hex)) + tx1f = BytesIO(binascii.unhexlify(tx1hex["unsigned_tx_hex"])) tx1 = bitcoin.core.CTransaction.stream_deserialize(tx1f) - tx2f = BytesIO(binascii.unhexlify(tx2hex)) + tx2f = BytesIO(binascii.unhexlify(tx2hex["unsigned_tx_hex"])) tx2 = bitcoin.core.CTransaction.stream_deserialize(tx2f) assert (tx1.vin[0].prevout.hash, tx1.vin[0].prevout.n) == ( @@ -91,7 +92,7 @@ def test_utxolocks_custom_input(server_db): def test_disable_utxolocks(server_db): - transaction.initialise(force=True) # reset UTXO_LOCKS + transaction_inputs.UTXOLocks().init(utxo_locks_max_addresses=10) # reset UTXO_LOCKS """with `disable_utxo_locks=True` it should use the same UTXO""" tx1hex = construct_tx( @@ -107,10 +108,10 @@ def test_disable_utxolocks(server_db): disable_utxo_locks=True, ) - tx1f = BytesIO(binascii.unhexlify(tx1hex)) + tx1f = BytesIO(binascii.unhexlify(tx1hex["unsigned_tx_hex"])) tx1 = bitcoin.core.CTransaction.stream_deserialize(tx1f) - tx2f = BytesIO(binascii.unhexlify(tx2hex)) + tx2f = BytesIO(binascii.unhexlify(tx2hex["unsigned_tx_hex"])) tx2 = bitcoin.core.CTransaction.stream_deserialize(tx2f) assert (tx1.vin[0].prevout.hash, tx1.vin[0].prevout.n) == ( diff --git a/counterparty-core/pyproject.toml b/counterparty-core/pyproject.toml index c8a6d2f58a..e513b96296 100644 --- a/counterparty-core/pyproject.toml +++ b/counterparty-core/pyproject.toml @@ -4,7 +4,7 @@ build-backend = "hatchling.build" [project] name = "counterparty-core" -requires-python = ">= 3.10" +requires-python = ">= 3.10, != 3.12" dynamic = ["version", "dependencies"] description = "Counterparty Protocol Reference Implementation" readme = "../README.md" diff --git a/counterparty-core/requirements.txt b/counterparty-core/requirements.txt index f28f343b4e..5cdaee9200 100644 --- a/counterparty-core/requirements.txt +++ b/counterparty-core/requirements.txt @@ -32,4 +32,4 @@ python-gnupg==0.5.2 pyzmq==26.0.3 JSON-log-formatter==1.0 yoyo-migrations==8.2.0 -counterparty-rs==10.4.0 +counterparty-rs==10.4.1 diff --git a/counterparty-core/tools/compareledger.py b/counterparty-core/tools/compareledger.py index 0a1e3539a8..bc82984aaf 100644 --- a/counterparty-core/tools/compareledger.py +++ b/counterparty-core/tools/compareledger.py @@ -149,7 +149,7 @@ def get_last_block(database_file_1, database_file_2): database_file_1 = sys.argv[1] database_file_2 = sys.argv[2] -LAST_BLOCK = 700000 +LAST_BLOCK = 650000 # compare_ledger(database_file_1, database_file_2) check_hashes(database_file_1, database_file_2, "ledger_hash") # get_checkpoints(database_file_1) diff --git a/counterparty-rs/Cargo.lock b/counterparty-rs/Cargo.lock index 37a2635d79..7a5b5980a6 100644 --- a/counterparty-rs/Cargo.lock +++ b/counterparty-rs/Cargo.lock @@ -382,7 +382,7 @@ checksum = "06ea2b9bc92be3c2baa9334a323ebca2d6f074ff852cd1d7b11064035cd3868f" [[package]] name = "counterparty-rs" -version = "10.4.0" +version = "10.4.1" dependencies = [ "bip32", "bitcoin 0.29.2", diff --git a/counterparty-rs/Cargo.toml b/counterparty-rs/Cargo.toml index 40cb22dfd1..39fb02dda9 100644 --- a/counterparty-rs/Cargo.toml +++ b/counterparty-rs/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "counterparty-rs" -version = "10.4.0" +version = "10.4.1" edition = "2021" # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html diff --git a/counterparty-wallet/requirements.txt b/counterparty-wallet/requirements.txt index 6893dc127f..e7c0aef068 100644 --- a/counterparty-wallet/requirements.txt +++ b/counterparty-wallet/requirements.txt @@ -5,4 +5,4 @@ colorlog==6.8.0 python-dateutil==2.8.2 requests==2.32.0 termcolor==2.4.0 -counterparty-core==10.4.0 +counterparty-core==10.4.1 diff --git a/docker-compose.yml b/docker-compose.yml index 3f774162c1..d1a2a46775 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -15,7 +15,7 @@ x-addrindexrs-common: &addrindexrs-common restart: unless-stopped x-counterparty-common: &counterparty-common - image: counterparty/counterparty:v10.4.0 + image: counterparty/counterparty:v10.4.1 stop_grace_period: 1m volumes: - data:/root/.bitcoin diff --git a/dredd.yml b/dredd.yml index c5e69cf13e..0294f30407 100644 --- a/dredd.yml +++ b/dredd.yml @@ -21,6 +21,7 @@ only: - Blocks > Get Sweeps By Block > Get Sweeps By Block - Transactions > Get Transactions > Get Transactions - Transactions > Info > Info +- Transactions > Info By Tx Hash > Info By Tx Hash - Transactions > Unpack > Unpack - Transactions > Get Transaction By Tx Index > Get Transaction By Tx Index - Transactions > Get Transaction By Hash > Get Transaction By Hash @@ -85,7 +86,7 @@ only: - Assets > Get Valid Assets > Get Valid Assets - Assets > Get Asset > Get Asset - Assets > Get Asset Balances > Get Asset Balances -- Assets > Get Balance By Address And Asset > Get Balance By Address And Asset +- Assets > Get Balance By Asset And Address > Get Balance By Asset And Address - Assets > Get Orders By Asset > Get Orders By Asset - Assets > Get Order Matches By Asset > Get Order Matches By Asset - Assets > Get Credits By Asset > Get Credits By Asset diff --git a/release-notes/release-notes-v10.3.2.md b/release-notes/release-notes-v10.3.2.md index 9ffedc1950..e8f62af8c3 100644 --- a/release-notes/release-notes-v10.3.2.md +++ b/release-notes/release-notes-v10.3.2.md @@ -4,7 +4,7 @@ This release is a minor update with some bugfixes. # Upgrading -This release is not a protocol change and does not require any reparsing. +This release is not a protocol change and does not require any reparsing. # ChangeLog diff --git a/release-notes/release-notes-v10.4.1.md b/release-notes/release-notes-v10.4.1.md new file mode 100644 index 0000000000..14a819c7de --- /dev/null +++ b/release-notes/release-notes-v10.4.1.md @@ -0,0 +1,45 @@ +# Release Notes - Counterparty Core v10.4.1 (2024-09-24) + +This release is a minor update with miscellaneous bugfixes. + +# Upgrading + +This release fixes an old bug leading to potential undefined behavior for dispenser refills. No database reparse is required. + +# ChangeLog + +## Protocol Changes + +## Bugfixes + +* Fix order cache: update cache when an order is filled +* Fix typo in `protocol_changes.json` +* Fix division by zero in `api.util.divide()` +* Catch invalid raw transaction in `/v2/transactions/info` endpoint +* Fix duplicate command in `xcpcli.py` +* Fix `source` field when refilling a dispenser created by a different source + +## Codebase + +* Don't report expected errors to Sentry in API v1 +* Use `trace` instead of `warning` for "Prefetch queue is empty." message +* Use debug for expected and handled `yoyo` migration error +* Support Python 3.10 and 3.11 only +* Refactor and clean up `transaction.py`. The contents of this file are now distributed across `lib/api/compose.py`, `lib/transaction_helper/transaction_outputs.py`, and `lib/transaction_helper/transaction_inputs.py`. + +## API + +* Add support for `inputs_set` parameter +* Rename the `fee` argument to `exact_fee` (the `fee` argument is still available in API v1) +* Have the composition API return, in addition to a `rawtransaction` or a `psbt`, the following fields: `data`, `btc_in`, `btc_out`, `btc_change`, and `btc_fee` +* Add `sort` argument for `orders`, `order_matches` and `dispenser` +* Add the following route: + - `/v2/transactions//info` (This route works if the tx is in the mempool of the queried node) + +## CLI + +# Credits + +* Ouziel Slama +* Warren Puffett +* Adam Krellenstein