Home

[INDEXER] Search for Transactions

POST
https://ada.nownodes.io/search/transactions

Authorizations

ApiKeyAuthApiKeyAuth

api-key string

NOWNodes API key passed in the api-key header.

CHANGELOG — Cardano Rosetta Java 2.3.3 → 2.4.0 Breaking response content: omit zero-value script-withdrawal reward operations; transactions[].transaction.operations may have fewer entries and shifted indexes. Describe operations in the response schema, previously missing from this page.


/search/transactions allows the caller to search for transactions that meet certain conditions. Some conditions include matching a transaction hash, containing an operation with a certain status, or containing an operation that affects a certain account. /search/transactions is considered an "indexer" endpoint and Rosetta implementations are not required to complete it to adhere to the Rosetta spec. However, any Rosetta "indexer" MUST support this endpoint.

Version 2.4.0 (breaking response-content change): Cardano Rosetta Java 2.4.0: zero-value script withdrawals are omitted from the transaction operations array (no reward-withdrawal operation is emitted for them). The array may therefore contain fewer operations than in 2.3.3, and subsequent operation_identifier.index values may shift. Non-zero withdrawals remain represented.

Body

application/json

Request value.

network_identifierNetworkIdentifierrequired

Rosetta network identifier object.

Show child attributes
blockchainstringrequired

Blockchain value.

networkstringrequired

If a blockchain has a specific chain-id or network identifier, it should go in this field. It is up to the client to determine which network-specific identifier is mainnet, preprod, or preview.

sub_network_identifierSubNetworkIdentifier

Sub Network Identifier value.

Show child attributes
networkstringrequired

Network value.

metadataobject

Additional metadata object.

operatorOperatororand

Operator value.

max_blockinteger<int64>>= 0

max_block is the largest block index to consider when searching for transactions. If this field is not populated, the current block is considered the max_block. If you do not specify a max_block, it is possible a newly synced block will interfere with paginated transaction queries (as the offset could become invalid with newly added rows).

offsetinteger<int64>>= 0

offset is the offset into the query result to start returning transactions. If any search conditions are changed, the query offset will change and you must restart your search iteration.

limitinteger<int64>>= 0

limit is the maximum number of transactions to return in one call. The implementation may return <= limit transactions.

transaction_identifierTransactionIdentifier

Rosetta transaction identifier object.

Show child attributes
hashstringrequired

Any transactions that are attributable only to a block (ex: a block event) should use the hash of the block as the identifier.

account_identifierAccountIdentifier

Rosetta account identifier object.

Show child attributes
addressstringrequired

The address may be a cryptographic public key (or some encoding of it) or a provided username.

sub_accountSubAccountIdentifier

Sub Account value.

Show child attributes
addressstringrequired

The SubAccount address may be a cryptographic value or some other identifier (ex: bonded) that uniquely specifies a SubAccount.

metadataobject

If the SubAccount address is not sufficient to uniquely specify a SubAccount, any other identifying information can be stored here. It is important to note that two SubAccounts with identical addresses but differing metadata will not be considered equal by clients.

metadataobject

Blockchains that utilize a username model (where the address is not a derivative of a cryptographic public key) should specify the public key(s) owned by the address in metadata.

Show child attributes
chain_codestring

Hex string encoded extension of bip32 private and public keys with an extra 256 bits of entropy that consists of 32 bytes

coin_identifierCoinIdentifier

Rosetta coin identifier object.

Show child attributes
identifierstringrequired

Identifier should be populated with a globally unique identifier of a Coin. In Bitcoin, this identifier would be transaction_hash:index.

currencyCurrency

Rosetta currency object.

Show child attributes
symbolstringrequired

Canonical symbol associated with a currency.

decimalsinteger<int32>>= 0required

Number of decimal places in the standard unit representation of the amount. For example, BTC has 8 decimals. Note that it is not possible to represent the value of some currency in atomic units that is not base 10.

metadataany

Additional metadata object.

statusstring

status is the network-specific operation type.

typestring

type is the network-specific operation type.

addressstring

address is AccountIdentifier.Address. This is used to get all transactions related to an AccountIdentifier.Address, regardless of SubAccountIdentifier.

successboolean

success is a synthetic condition populated by parsing network-specific operation statuses (using the mapping provided in /network/options).

Response

200OK

HTTP 200 response for searchTransactions.

400Bad Request

Bad Request. The request is malformed or contains invalid parameters.

401Unauthorized

Unauthorized: API key is present but rejected by the NOWNodes gateway.

422Unprocessable Entity

Missing API key. The NOWNodes gateway returns plain text for this error.

500Internal Server Error

Internal Server Error. The gateway or backend failed while processing the request.