Home

Simulates a raw transaction or transaction group as it would be evaluated on the network. The simulation will use blockchain state from the latest committed round.

POST
https://algo.nownodes.io/v2/transactions/simulate

Authorizations

ApiKeyAuthApiKeyAuth

api-key string

NOWNodes API key passed in the api-key header.

Body

application/json

The transactions to simulate, along with any other inputs.

application/jsonSimulateRequest

Request type for simulation endpoint.

allow-empty-signaturesboolean

Allows transactions without signatures to be simulated as if they had correct signatures.

allow-more-loggingboolean

Lifts limits on log opcode usage during simulation.

allow-unnamed-resourcesboolean

Allows access to unnamed resources during simulation.

exec-trace-configSimulateTraceConfig

An object that configures simulation execution trace.

Show child attributes
enableboolean

A boolean option for opting in execution trace features simulation endpoint.

scratch-changeboolean

A boolean option enabling returning scratch slot changes together with execution trace during simulation.

stack-changeboolean

A boolean option enabling returning stack changes together with execution trace during simulation.

state-changeboolean

A boolean option enabling returning application state changes (global, local, and box changes) with the execution trace during simulation.

extra-opcode-budgetinteger

Applies extra opcode budget during simulation for each transaction group.

roundinteger

If provided, specifies the round preceding the simulation. State changes through this round will be used to run this simulation. Usually only the 4 most recent rounds will be available (controlled by the node config value MaxAcctLookback). If not specified, defaults to the latest available round.

txn-groupsArray<SimulateRequestTransactionGroup>required

The transaction groups to simulate.

Show child attributes
txnsArray<string>required

An atomic transaction group.

application/msgpackSimulateRequest

Request type for simulation endpoint.

allow-empty-signaturesboolean

Allows transactions without signatures to be simulated as if they had correct signatures.

allow-more-loggingboolean

Lifts limits on log opcode usage during simulation.

allow-unnamed-resourcesboolean

Allows access to unnamed resources during simulation.

exec-trace-configSimulateTraceConfig

An object that configures simulation execution trace.

Show child attributes
enableboolean

A boolean option for opting in execution trace features simulation endpoint.

scratch-changeboolean

A boolean option enabling returning scratch slot changes together with execution trace during simulation.

stack-changeboolean

A boolean option enabling returning stack changes together with execution trace during simulation.

state-changeboolean

A boolean option enabling returning application state changes (global, local, and box changes) with the execution trace during simulation.

extra-opcode-budgetinteger

Applies extra opcode budget during simulation for each transaction group.

roundinteger

If provided, specifies the round preceding the simulation. State changes through this round will be used to run this simulation. Usually only the 4 most recent rounds will be available (controlled by the node config value MaxAcctLookback). If not specified, defaults to the latest available round.

txn-groupsArray<SimulateRequestTransactionGroup>required

The transaction groups to simulate.

Show child attributes
txnsArray<string>required

An atomic transaction group.

Parameters

formatstringjsonmsgpackquery

Configures whether the response object is JSON or MessagePack encoded. If not provided, defaults to JSON.

Response

200OK

Result of a transaction group simulation.

400Bad Request

Bad Request

401Unauthorized

Invalid API Token

500Internal Server Error

Internal Error

503Service Unavailable

Service Temporarily Unavailable

default

Unknown Error