Protocol primitives
These show up across multiple methods.
| Field | Type | Notes |
|---|---|---|
| Address | 32-byte hex (64 chars) | An address is a script hash. The same string is accepted as the script_hex parameter in get_script_utxos. |
| Hash256 | 32-byte hex (64 chars) | Transaction IDs, block IDs, merkle roots — all 32-byte SHA-256. |
| Amount | unsigned integer | Denominated in exfers (base units). 1 EXFER = 100_000_000 exfers. |
| Height | unsigned 64-bit | Genesis is height 0. |
| OutPoint | {tx_id, output_index} | output_index is a 32-bit unsigned int. |
Coinbase maturity
Coinbase outputs are unspendable until 360 blocks (approximately one hour at
the 10 s target block time) have elapsed. get_address_utxos and
get_script_utxos expose is_coinbase: true on each output so that callers
can filter unmatured ones explicitly.
Block cadence
Target 10 s per block. Use this when reasoning about confirmation depth — see Confirmation depth & reorg semantics.