Home

Kaspa REST API 2.3.0 to 2.4.1 - modified methods

v2.4.1
Base URL
https://kas.nownodes.io

This page lists the Kaspa REST API methods whose behaviour changed between kaspa-rest-server 2.3.0 and 2.4.1. Each method is documented as it exists in 2.4.1, with a note at the top describing what changed.

Changed

  • v1 (Toccata) transactions. POST /transactions and POST /transactions/mass accept v1 transactions (computeBudget, covenant, gas) and a hex payload for both v0 and v1.
  • Transaction mass. POST /transactions/mass now also accounts for the normalized transient mass, so the returned mass can be higher than before.

Affected methods:

  • POST /transactions
  • POST /transactions/mass

Authentication

api-keyAuthapiKey

API Key: api-key in header

REST API changelog 2.3.0 to 2.4.1 / Modified methods

Transactions

Submit A New Transaction

POST
https://kas.nownodes.io/transactions

Authorizations

ApiKeyAuthApiKeyAuth

api-key string

NOWNodes API key passed in the api-key header.

Changed. Both v0 and v1 (Toccata) transactions are supported. For v1, inputs use computeBudget (with sigOpCount 0) and outputs can carry a covenant binding; the transaction can set gas. Both versions accept a hex payload. For v0 transactions the v1-only fields are ignored.

Submit a signed transaction to the Kaspa network and return its transaction id. Both v0 and v1 (Toccata) transactions are supported. For v1, inputs use computeBudget (with sigOpCount 0) and outputs can carry a covenant binding; the transaction can set gas. Both versions accept a hex payload. For v0 transactions the v1-only fields are ignored.

Body

application/json
transactionSubmitTxModelrequired
Show child attributes
versionintegerrequired
inputsArray<SubmitTxInput>required
Show child attributes
previousOutpointSubmitTxOutpointrequired
Show child attributes
transactionIdstringrequired
indexintegerrequired
signatureScriptstringrequired
sequenceintegerrequired
sigOpCountintegerrequired
computeBudgetinteger0

Compute budget of the input (v1 transactions). For v1, sigOpCount must be 0. Ignored for v0.

outputsArray<SubmitTxOutput>required
Show child attributes
amountintegerrequired
scriptPublicKeySubmitTxScriptPublicKeyrequired
Show child attributes
versionintegerrequired
scriptPublicKeystringrequired
covenantSubmitTxCovenantBinding

Covenant binding of an output (v1 transactions).

Show child attributes
authorizingInputintegerrequired
covenantIdstringrequired
lockTimeinteger0
subnetworkIdstring
gasinteger0

Gas (v1 transactions). Forced to 0 for v0.

payloadstring

Hex-encoded transaction payload. Supported for both v0 and v1 transactions.

allowOrphanbooleanfalse

Parameters

replaceByFeebooleanfalsequery

Replace an existing transaction in the mempool

Response

200OK

Successful Response

400Bad Request

Bad Request

422Unprocessable Entity

Validation Error

Calculate Transaction Mass

POST
https://kas.nownodes.io/transactions/mass

Authorizations

ApiKeyAuthApiKeyAuth

api-key string

NOWNodes API key passed in the api-key header.

Changed. The returned mass is the largest of the compute mass, the storage mass (KIP-0009) and the normalized transient mass, for both v0 and v1 transactions; previously the transient mass was not taken into account, so mass could be lower. The request accepts the v1 fields (computeBudget, covenant, gas, payload).

This function calculates and returns the mass of a transaction, which is essential for determining the minimum fee. The returned mass is the largest of the compute mass, the storage mass as defined in KIP-0009 and the normalized transient mass, for both v0 and v1 transactions.

Note: Be aware that if the transaction has a very low output amount or a high number of outputs, the mass can become significantly large.

Body

application/json
versionintegerrequired
inputsArray<SubmitTxInput>required
Show child attributes
previousOutpointSubmitTxOutpointrequired
Show child attributes
transactionIdstringrequired
indexintegerrequired
signatureScriptstringrequired
sequenceintegerrequired
sigOpCountintegerrequired
computeBudgetinteger0

Compute budget of the input (v1 transactions). For v1, sigOpCount must be 0. Ignored for v0.

outputsArray<SubmitTxOutput>required
Show child attributes
amountintegerrequired
scriptPublicKeySubmitTxScriptPublicKeyrequired
Show child attributes
versionintegerrequired
scriptPublicKeystringrequired
covenantSubmitTxCovenantBinding

Covenant binding of an output (v1 transactions).

Show child attributes
authorizingInputintegerrequired
covenantIdstringrequired
lockTimeinteger0
subnetworkIdstring
gasinteger0

Gas (v1 transactions). Forced to 0 for v0.

payloadstring

Hex-encoded transaction payload. Supported for both v0 and v1 transactions.

Response

200OK

Successful Response

422Unprocessable Entity

Validation Error