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.

Get the policy settings

get

This endpoint returns the policy settings.

Authorizations
Responses
200
Success
application/json
Responseall of
and
get
GET /v1/policy HTTP/1.1
Host: arc.taal.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
  "timestamp": "2025-07-07T20:04:24.495Z",
  "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.

Submit a transaction.

post

This endpoint is used to send a raw transaction to a miner for inclusion in the next block that the miner creates.

Authorizations
Header parameters
X-CallbackUrlstringOptional

Default double spend and merkle proof notification callback endpoint.

X-FullStatusUpdatesbooleanOptional

Whether we should have full status updates in callback or not (including SEEN_IN_ORPHAN_MEMPOOL and SEEN_ON_NETWORK statuses).

X-MaxTimeoutintegerOptional

Timeout in seconds to wait for new transaction status before request expires (max 30 seconds, default 5)

X-SkipFeeValidationbooleanOptional

Whether we should skip fee validation or not.

X-ForceValidationbooleanOptional

Whether we should force submitted tx validation in any case.

X-SkipScriptValidationbooleanOptional

Whether we should skip script validation or not.

X-SkipTxValidationbooleanOptional

Whether we should skip overall tx validation or not.

X-CumulativeFeeValidationbooleanOptional

Whether we should perform cumulative fee validation for fee consolidation txs or not.

X-CallbackTokenstringOptional

Access token for notification callback endpoint. It will be used as a Authorization header for the http callback

X-CallbackBatchbooleanOptional

Callback will be send in a batch

X-WaitForstringOptional

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')

Body
stringOptionalExample: <transaction hex string>
Responses
200
Success
application/json
Responseall of
and
and
and
post
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:

Get transaction status.

get

This endpoint is used to get the current status of a previously submitted transaction.

Authorizations
Path parameters
txidstringRequired

The transaction ID (32 byte hash) hex string

Responses
200
Success
application/json
Responseall of
and
and
get
GET /v1/tx/{txid} HTTP/1.1
Host: arc.taal.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
  "timestamp": "2025-07-07T20:04:24.495Z",
  "blockHash": "00000000000000000854749b3c125d52c6943677544c8a6a885247935ba8d17d",
  "blockHeight": 782318,
  "txid": "6bdbcfab0526d30e8d68279f79dff61fb4026ace8b7b32789af016336e54f2f0",
  "merklePath": "0000",
  "txStatus": "ACCEPTED_BY_NETWORK",
  "extraInfo": "Transaction is not valid",
  "competingTxs": [
    [
      "c0d6fce714e4225614f000c6a5addaaa1341acbb9c87115114dcf84f37b945a6"
    ]
  ]
}

Last updated

Was this helpful?