Skip to Content
APITransactions and TransfersGet Transaction Details by Hash

Get Transaction Details by Hash

1. Overview & Typical Use

Query complete information for a single transaction by its hash, including contract data, resource consumption, and SR confirmation list.

  • Typical use: transaction detail page display, transaction status tracking, resource consumption analysis.
  • When not to use: for batch transaction queries use “Get Transaction List”; for transfer records use the corresponding transfer list endpoint.

2. Endpoint & Authentication

GET /api/transaction-info

For Base URL and authentication, see Common Network & Authentication.

3. Request

ParameterTypeRequiredDefaultDescription
hashstringYes—Transaction hash
sourcestringNo—Data source; when provided, records the query count for this hash in Redis

4. Response

Top-level

FieldTypeRequiredDescriptionUnit/Precision
blockintegerRequiredBlock height—
hashstringRequiredTransaction hash—
timestampintegerRequiredBlock timems timestamp
ownerAddressstringRequiredInitiator address (Base58, starts with T)—
toAddressstringRequiredRecipient address—
contractTypeintegerRequiredContract type number—
contract_typestringRequiredContract type description (e.g. trc20)—
confirmedbooleanRequiredWhether confirmed—
revertbooleanRequiredWhether reverted—
confirmationsintegerRequiredNumber of confirmed blocks—
contractRetstringRequiredContract execution result (e.g. SUCCESS)—
contractDataobjectRequiredContract call data; sub-fields see the contractData object table below—
costobjectRequiredResource consumption details; see below—
datastringRequiredRaw transaction data (empty string for non-contract calls)—
riskTransactionbooleanRequiredRisk transaction flag—
noteLevelintegerRequiredRisk level annotation—
infoobjectRequiredAdditional information (usually empty object)—
contract_mapobjectRequiredAddress → whether it is a contract mapping (note: key is contract_map, not contractMap)—
normalAddressInfoobjectRequiredAddress → risk information—
addressTagobjectRequiredAddress tag mapping (may be empty object)—
hashTagarrayRequiredTransaction hash tag list (may be empty array)—
signature_addressesarrayRequiredSigning address list (may be empty array)—
trigger_infoobjectOptionalContract call method and parameters (only present for smart contract calls); sub-fields see the trigger_info object table below—
trc20TransferInfoarrayOptionalTRC20 transfer information list (only present when TRC20 transfers are involved); element schema see the trc20TransferInfo[] element table below—
transfersAllListarrayOptionalUnified list of all token transfers (includes TRC20/TRC10, etc.); element schema same as trc20TransferInfo[]—
tokenTransferInfoobjectOptionalPrimary token transfer information (present for single transfers); schema same as trc20TransferInfo[] element—
internal_transactionsobjectRequiredInternal transactions; empty object {} when no internal calls, otherwise contains internal transaction data—
event_countintegerOptionalEvent count (present for smart contract calls)—
triggerContractTypeintegerOptionalTrigger contract sub-type number—
projectstringOptionalAssociated project name (present when the contract belongs to a known project)—
srConfirmListarrayOptionalSR confirmation list; element schema see the srConfirmList[] element table below—
contractInfoobjectOptionalContract address → label information mapping (value schema below)—
toAddressTagstringOptionalRecipient address label—
cheat_statusintegerOptionalFraud status flag (observed value 0)—
fee_limitintegerOptionalFee limit (present for smart contract calls)sun
revertReasonstringOptionalContract revert reason (only present when contractRet == "REVERT")—
trc20ApprovalInfoarrayOptionalTRC20 approval information list (only present for approval events)—

contractInfo[<addr>] object schema (8 fields):

FieldTypeRequiredDescription
tag1stringRequiredPrimary label (project name / contract name / exchange name)
tag1UrlstringRequiredURL of the primary label (may be an empty string)
namestringRequiredFormal contract / project name
isTokenbooleanRequiredWhether it is a token contract (true / false)
vipbooleanRequiredWhether it is a VIP entity (true / false)
riskboolean | stringRequiredRisk label; most endpoints return boolean, some return a string risk type (blacklist / fraud, etc.)
publicTagDescstringRequiredPublic label description; empty string for most accounts
publicTagstringOptionalPublic label (e.g. "USDT Token" / "Binance"); returned only for well-known entities or certain endpoints

cost object

FieldTypeRequiredDescriptionUnit/Precision
feeintegerRequiredTotal feesun
net_feeintegerRequiredBandwidth feesun
net_usageintegerRequiredBandwidth consumedbytes
energy_feeintegerRequiredEnergy feesun
energy_usageintegerRequiredCaller energy consumed—
energy_usage_totalintegerRequiredTotal energy consumed—
origin_energy_usageintegerRequiredContract owner energy consumed—
energy_penalty_totalintegerRequiredTotal energy penalty—
net_fee_costintegerRequiredBandwidth unit price (sun/byte)sun/byte
energy_fee_costintegerRequiredEnergy unit price (sun/energy)sun/energy
date_createdintegerRequiredTransaction creation times timestamp
multi_sign_feeintegerRequiredMulti-signature feesun
memoFeeintegerRequiredMemo feesun
account_create_feeintegerOptionalAccount creation fee (present for new-account creation transactions)sun

contractData object

FieldTypeRequiredDescriptionUnit/Precision
owner_addressstringRequiredCaller address (Base58 / Hex, depending on contract type)—
contract_addressstringOptionalCalled contract address (present for smart contract calls)—
datastringOptionalCall data (present for smart contract calls)hex
amountintegerOptionalAmount sent with the call; contractType=1 (TRX transfer) → SUN; contractType=2 (TRC10 transfer) → token-smallest-unit, convert using tokenInfo.tokenDecimalsun

trigger_info object (present for smart contract calls)

FieldTypeRequiredDescriptionUnit/Precision
methodstringRequiredMethod signature (e.g. transfer(address _to,uint256 _value))—
methodIdstringRequiredMethod ID (4-byte hex, e.g. a9059cbb)—
parameterobjectRequiredParameter object; keys are parameter names (e.g. _to, _value), values are strings/numbers (depending on parameter type)—
contract_addressstringRequiredCalled contract address—
call_valueintegerRequiredTRX amount sent with the callsun

trc20TransferInfo[] / transfersAllList[] / tokenTransferInfo element

FieldTypeRequiredDescriptionUnit/Precision
from_addressstringRequiredSender address (Base58)—
to_addressstringRequiredReceiver address (Base58)—
contract_addressstringRequiredToken contract address (token id for TRC10)—
amount_strstringRequiredTransfer amount (raw value, not divided by decimals)—
decimalsintegerRequiredToken decimals—
namestringRequiredToken full name (e.g. Tether USD)—
symbolstringRequiredToken symbol (e.g. USDT)—
typestringRequiredTransfer type (e.g. Transfer, Approval)—
statusintegerRequiredStatus code (0 = success)—
tokenTypestringRequiredToken type (trc20/trc10/trc721/trc1155)—
tokenType2stringRequiredToken type (compatibility field, same value as tokenType)—
levelstringRequiredToken level: 0 (UNKNOWN), 1 (NEUTRAL), 2 (OK), 3 (SUSPICIOUS), 4 (UNSAFE)—
icon_urlstringRequiredToken logo URL—
vipbooleanRequiredWhether this is a VIP token—

srConfirmList[] element

FieldTypeRequiredDescriptionUnit/Precision
addressstringRequiredSR address (Base58)—
namestringRequiredSR name—
blockintegerRequiredBlock height that confirmed this transaction—
urlstringRequiredSR official website URL—

5. Errors

For HTTP status codes, see Common Errors. Key points for this endpoint:

  • Invalid hash: an unknown hash returns 200 + empty object {}, not a 4xx error.
Last updated on: