Changelog
Site — 2026-11-03
- First public release of the stxer docs: guide, API reference, SDK reference, limits and security pages.
SDK 0.12.0
Execution traces are readable from the SDK, for on-chain and simulated transactions.
- Added
getTransactionTrace({ blockHeight, blockHash, txid })andgetSimulationTrace({ simulationId, txid }), which fetch and decode a trace into a tree ofTraceNodes. Ids may carry a0xprefix.getTransactionTracethrowsTraceFetchError;getSimulationTracethrowsSimulationError. Both reportstatus === 404when there is no trace. - Added
decodeTrace(data, { decompress? }): pure JavaScript, bounds-checked; bad input raisesTraceDecodeErrorwith the byte offset. - Added
flattenTrace,traceContractIds,traceNodeCostandtraceNodeSelfCost. - Added
indexExpressions,parseSpanandsliceSpanto map a node back to source viagetContractASTorparseContract. - Added
txidonCallContractResult. - New dependency
fzstd;@noble/hashesbumped to^2.4.0.
SDK 0.11.0
Epoch 4.0 is live on mainnet (burn height 960,230).
- Changed:
addContractDeployandaddSetContractCodedefault to Clarity 6 (was Clarity 5). - Added:
post_condition_modeandpost_conditionsonaddContractCallandaddContractDeploy, andpostConditionsonbuildUnsignedContractCallHex/callContract. The default staysAllow.addSTXTransfertakes neither: consensus rejects a token transfer carrying post conditions. - Fixed: the published package no longer includes test files.
SDK 0.10.0
- Breaking (types): removed
'Epoch35'fromClarityEpoch. That epoch never activated (the chain went from 3.4 to 4.0) and the API rejects it.
SDK 0.9.0
Adopts Epoch 4.0 and Clarity 6.
- Added
'Epoch40'toClarityEpochand'Clarity6'toClarityVersionName;parseContractacceptsclarityVersion: '6'. ClarityVersion.Clarity6accepted byaddContractDeploy/addSetContractCode.@stacks/transactionsbumped to 7.5.0.
SDK 0.8.0
Pairs with the API release that added AdvanceBlocks, the session tip endpoint and typed 409 / 410 errors.
- Added:
addAdvanceBlocks(request)and theAdvanceBlocksstep;getSimulationTip(id). - Added:
SimulationErrorwith.status,.marker('simulation_busy' | 'simulation_outdated' | null) and.body, thrown by every session call. - Added: session helpers
callContract,getStxBalance,getFtBalance,getNonce,readDataVar. - Added: transaction builders
setSender,buildUnsignedContractCallHex,ftPrincipal. - Added: Bitcoin SPV primitives for bridge scenarios (
forgeBitcoinTx,buildBitcoinHeader,merkleProof, …). - Added:
addTenureExtend(cause?)accepts a SIP-034 cause. - Changed (breaking):
addTenureExtend()emits{ TenureExtend: { cause: 'Extended' } }. - Changed (breaking): the API now returns real 4xx status codes for busy, outdated and invalid requests instead of 200.
- Changed (breaking):
BatchReadsResult.tiprenamed toindex_block_hash. - Changed (breaking): u64 / u128 fields typed as
number | string; useBigIntbefore arithmetic. - Changed (breaking): the string type
ClarityVersionrenamed toClarityVersionName. - Sessions created before this release answer
410 simulation_outdated:; start a new session.
SDK 0.7.0 and earlier
See the SDK repository history.