Broadcasting
Transaction Broadcasting from SPV Wallet
The SPV Wallet broadcasts all valid transactions it receives or creates to ARC.
ARC Endpoints
We use the first endpoint to determine the correct fee model to use when creating a transaction.
This endpoint returns the policy settings.
Bearer authentication as defined in RFC 6750
Success
Security requirements failed
GET /v1/policy HTTP/1.1
Host: arc.taal.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
"timestamp": "2026-01-01T00:00:00.000Z",
"policy": {
"maxscriptsizepolicy": 500000,
"maxtxsigopscountspolicy": 4294967295,
"maxtxsizepolicy": 10000000,
"miningFee": {
"satoshis": 1,
"bytes": 1000
},
"standardFormatSupported": true
}
}Thereafter we simply broadcast to ARC and expect a SEEN_ON_NETWORK txStatus response in most cases.
This endpoint is used to send a raw transaction to a miner for inclusion in the next block that the miner creates.
Bearer authentication as defined in RFC 6750
Default double spend and merkle proof notification callback endpoint.
Whether we should have full status updates in callback or not (including SEEN_IN_ORPHAN_MEMPOOL and SEEN_ON_NETWORK statuses).
Timeout in seconds to wait for new transaction status before request expires (max 30 seconds, default 5)
Whether we should skip fee validation or not.
Whether we should force submitted tx validation in any case.
Whether we should skip script validation or not.
Whether we should skip overall tx validation or not.
Whether we should perform cumulative fee validation for fee consolidation txs or not.
Access token for notification callback endpoint. It will be used as a Authorization header for the http callback
Callback will be send in a batch
Which status to wait for from the server before returning ('QUEUED', 'RECEIVED', 'STORED', 'ANNOUNCED_TO_NETWORK', 'REQUESTED_BY_NETWORK', 'SENT_TO_NETWORK', 'ACCEPTED_BY_NETWORK', 'SEEN_ON_NETWORK')
<transaction hex string>Success
Transaction submit status
Block hash
00000000000000000854749b3c125d52c6943677544c8a6a885247935ba8d17dBlock height
782318Transaction ID in hex
6bdbcfab0526d30e8d68279f79dff61fb4026ace8b7b32789af016336e54f2f0Transaction Merkle path as a hex string in BUMP format BRC-74
0000Transaction status
ACCEPTED_BY_NETWORKPossible values: Extra information about the transaction
Transaction is not valid["c0d6fce714e4225614f000c6a5addaaa1341acbb9c87115114dcf84f37b945a6"]Status
201Title
Added to mempoolBad request
Security requirements failed
Generic error
Unprocessable entity - with IETF RFC 7807 Error object
Not extended format
Malformed transaction
Invalid inputs
Malformed transaction
Invalid outputs
Fee too low
Mined ancestors not found in BEEF
Invalid BUMPs in BEEF
Invalid Merkle Roots
Cumulative Fee validation failed
POST /v1/tx HTTP/1.1
Host: arc.taal.com
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: text/plain
Accept: */*
Content-Length: 26
"<transaction hex string>"{
"blockHash": "0000000000000aac89fbed163ed60061ba33bc0ab9de8e7fd8b34ad94c2414cd",
"blockHeight": 736228,
"extraInfo": "",
"merklePath": "fe54251800020400028d97f9ebeddd9f9aa8e0e953b3a76f316298ab05e9834aa811716e9d397564e501025f64aa8e012e26a5c5803c9f94d1c2c8ea68ecef1415011e1c2e26b9c966b6ad02021f5fa39607ca3b48d53c902bd5bb4bbf6a7ac99cf9fda45cc21b71e6e2f7889603024a2bb116e86325c9b8512f10b22c228ab3272fe3f373b1bd4a9a6b334b068bb602000061793b278303101a1390ceae5a713de0eabd9cda63702fe84c928970acf7c45e0100a567e3d066e38638b27897559302eabc85eb69b202c2e86d4338bab73008f460",
"status": 200,
"timestamp": "2023-03-09T12:03:48.382910514Z",
"title": "OK",
"txStatus": "MINED",
"txid": "b68b064b336b9a4abdb173f3e32f27b38a222cb2102f51b8c92563e816b12b4a"
}Usually a callbackUrl would be set for async status updates - but if you'd like to manually check the most recent state of a given transaction, you can use this:
This endpoint is used to get the current status of a previously submitted transaction.
Bearer authentication as defined in RFC 6750
The transaction ID (32 byte hash) hex string
Success
Transaction details
Block hash
00000000000000000854749b3c125d52c6943677544c8a6a885247935ba8d17dBlock height
782318Transaction ID in hex
6bdbcfab0526d30e8d68279f79dff61fb4026ace8b7b32789af016336e54f2f0Transaction Merkle path as a hex string in BUMP format BRC-74
0000Transaction status
ACCEPTED_BY_NETWORKPossible values: Extra information about the transaction
Transaction is not valid["c0d6fce714e4225614f000c6a5addaaa1341acbb9c87115114dcf84f37b945a6"]Security requirements failed
Not found
Generic error
GET /v1/tx/{txid} HTTP/1.1
Host: arc.taal.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
"timestamp": "2026-01-01T00:00:00.000Z",
"blockHash": "00000000000000000854749b3c125d52c6943677544c8a6a885247935ba8d17d",
"blockHeight": 782318,
"txid": "6bdbcfab0526d30e8d68279f79dff61fb4026ace8b7b32789af016336e54f2f0",
"merklePath": "0000",
"txStatus": "ACCEPTED_BY_NETWORK",
"extraInfo": "Transaction is not valid",
"competingTxs": [
[
"c0d6fce714e4225614f000c6a5addaaa1341acbb9c87115114dcf84f37b945a6"
]
]
}Last updated
