{"id":15778,"date":"2023-01-23T05:00:00","date_gmt":"2023-01-23T05:00:00","guid":{"rendered":"https:\/\/hederav2stg.wpenginepowered.com\/blog\/how-to-inspect-smart-contract-transactions-on-hedera-using-mirror-nodes\/"},"modified":"2025-12-08T18:47:10","modified_gmt":"2025-12-08T18:47:10","slug":"how-to-inspect-smart-contract-transactions-on-hedera-using-mirror-nodes","status":"publish","type":"post","link":"https:\/\/hedera.com\/blog\/how-to-inspect-smart-contract-transactions-on-hedera-using-mirror-nodes\/","title":{"rendered":"How to Inspect Smart Contract Transactions on Hedera Using Mirror Nodes"},"content":{"rendered":"<div class=\"body-text BodyCopy mb-40 style-1\">\n<p>The goal of this tutorial is to help smart contract developers understand the traceability information for contract transactions that is provided by the mirror nodes. Specifically, you will learn how to view contract<strong><em><br \/>\nactions<\/em><\/strong>, <strong><em>state changes<\/em><\/strong>, and <strong><em>logs<\/em><\/strong>. Understanding this information and knowing where to get it can simplify the process of inspecting and debugging smart contracts on Hedera.<\/p>\n<p>For detailed information about the development and implementation of this traceability information, check out <a href=\"https:\/\/hips.hedera.com\/hip\/hip-513\" target=\"_blank\">HIP-513: Smart Contract Traceability Extension<\/a> and <a href=\"https:\/\/hips.hedera.com\/hip\/hip-435\" target=\"_blank\">HIP-435: Record Stream V6<\/a>.<\/p>\n<h4 class=\"color-ultraviolet\"><strong>Try It Yourself<\/strong><\/h4>\n<ul>\n<li>Get a <a href=\"https:\/\/portal.hedera.com\/register\" target=\"_blank\">Hedera testnet account<\/a>\n<ul>\n<li>This portal acts like a faucet, giving you 10,000 test HBAR every 24 hours<\/li>\n<li>If you\u2019re new to Hedera, check out <a href=\"https:\/\/docs.hedera.com\/hedera\/getting-started\/environment-set-up\" target=\"_blank\">these steps to setup your development environment<\/a><\/li>\n<\/ul>\n<\/li>\n<li>Use <a href=\"https:\/\/codesandbox.io\/s\/hedera-example-contract-traceability-uofsn1?file=\/index.js\" target=\"_blank\">this Codesandbox<\/a> to try the example\n<ul>\n<li>Fork the sandbox<\/li>\n<li>Remember to provide testnet account credentials in the .env file<\/li>\n<li>Open a new terminal to execute index.js<\/li>\n<\/ul>\n<\/li>\n<li>Get the <a href=\"https:\/\/github.com\/ed-marquez\/hedera-example-contract-traceability\/blob\/master\/index.js\" target=\"_blank\">example code from GitHub<\/a><\/li>\n<\/ul>\n<h4 class=\"color-ultraviolet\"><strong>You Will Use These Tools<\/strong><\/h4>\n<ul>\n<li>Hedera JavaScript SDK (<a href=\"https:\/\/docs.hedera.com\/hedera\/sdks-and-apis\/sdks\" target=\"_blank\">Documentation<\/a>)<\/li>\n<li>Solidity (<a href=\"https:\/\/docs.soliditylang.org\/en\/v0.8.11\/index.html\" target=\"_blank\">Documentation<\/a>)<\/li>\n<li>Mirror node REST API (<a href=\"https:\/\/hedera.com\/blog\/how-to-look-up-transaction-history-on-hedera-using-mirror-nodes-back-to-the-basics\" target=\"_blank\">Learn More<\/a>)<\/li>\n<li>Mirror node explorer (<a href=\"https:\/\/hashscan.io\/#\/mainnet\/dashboard\" target=\"_blank\">HashScan<\/a>)<\/li>\n<\/ul>\n<h4 class=\"color-ultraviolet\"><strong>Let\u2019s Inspect an Example: The Client Calls a Contract that Calls Another Contract<\/strong><\/h4>\n<p>There are three entities in this scenario: Operator and two smart contracts. <\/p>\n<p>Your testnet credentials from the <a href=\"https:\/\/portal.hedera.com\/register\" target=\"_blank\">Hedera portal<\/a> should be used for the operator variables, which are used to initialize the Hedera client that submits transactions to the network and gets confirmations. <\/p>\n<ul>\n<li>The code in <strong><em>index.js <\/em><\/strong>initializes a Hedera client (<strong><em>Operator<\/em><\/strong>). It also deploys and executes the two contracts<\/li>\n<li>The contract <strong><em>Counter.sol<\/em><\/strong> has a function named <strong><em>increment()<\/em><\/strong> that increases the state variable <strong><em>count<\/em><\/strong><br \/>\nand emits an event when called<\/li>\n<li>The contract <strong><em>CallCounter.sol<\/em><\/strong> has a state variable that stores the address of the counter contract (<strong><em>counterAddr<\/em><\/strong>). It also has the functions, <strong><em>counterIncrement()<\/em><\/strong> and <strong><em>getCount()<\/em><\/strong>. These functions use an interface (<strong><em>ICounter.sol<\/em><\/strong>) to call <strong><em>increment()<\/em><\/strong><br \/>\nand read the value of <strong><em>count<\/em><\/strong> in <strong><em>Counter.sol<\/em><\/strong><\/li>\n<\/ul>\n<p>The expected behavior with this setup is that <strong><em>Operator<\/em><\/strong><br \/>\nexecutes the <strong><em>counterIncrement()<\/em><\/strong> function in <strong><em>CallCounter.sol<\/em><\/strong>, which in turn executes the <strong><em>increment()<\/em><\/strong> function in <strong><em>Counter.sol<\/em><\/strong>, which in turn increases the state variable <strong><em>count<\/em><\/strong> and emits an event. You will then view information related to all those activities from the mirror nodes. <\/p>\n<p>A <strong><em>for<\/em><\/strong> loop is used to make this chain of calls occur three times every time <strong><em>index.js<\/em><\/strong> executes.<\/p>\n<\/div>\n<div class=\"body-text BodyCopy mb-40 style-1\">\n<p>This is the console output of <strong><em>index.js<\/em><\/strong>:<\/p>\n<pre>STEP 1 ===================================\n- Deploying contracts...\n\n- Contract ID: 0.0.2505\n- Contract ID in Solidity address format: 00000000000000000000000000000000000009c9<\/pre>\n<pre>- Contract ID: 0.0.2507\n- Contract ID in Solidity address format: 00000000000000000000000000000000000009cb\n\nSTEP 2 ===================================\n- Executing the caller contract...\n- Contract execution: SUCCESS\n- Contract execution: SUCCESS\n- Contract execution: SUCCESS\n\n- See details in mirror node explorer:\nhttps:\/\/hashscan.io\/previewnet\/transaction\/1674246551.782213192?tid=0.0.1132-1674246540-672254772\n\n====================================================\n  THE END - NOW JOIN: https:\/\/hedera.com\/discord \n====================================================<\/pre>\n<p><\/p>\n<p>Each tab below shows the helper functions used to deploy and execute the contracts (<strong><em>contracts.deployContractFcn<\/em><\/strong> and <strong><em>contracts.executeContractFcn<\/em><\/strong>) and to query the information about the 3<sup>rd<\/sup> transaction from the mirror nodes (<strong><em>queries.mirrorTxQueryFcn<\/em><\/strong>). These functions are reusable in case you need to perform those activities in the future.<\/p>\n<\/div>\n<div class=\"body-text BodyCopy mb-40 style-1\">\n<p>After deployment and execution, we can see information for all these entities and transactions in <a href=\"https:\/\/hashscan.io\/#\/mainnet\/dashboard\" target=\"_blank\">HashScan<\/a>. Keep in mind that <a href=\"https:\/\/docs.hedera.com\/hedera\/networks\/testnet#test-network-resets\" target=\"_blank\">previewnet and testnet are periodically reset<\/a> for maintenance purposes, so you may not see these same exact entries in the future \u2013 screenshots are included for reference.<\/p>\n<ul>\n<li><strong><em>Counter Contract<\/em><\/strong>: <a href=\"https:\/\/hashscan.io\/previewnet\/contract\/0.0.2505\" target=\"_blank\">https:\/\/hashscan.io\/previewnet\/contract\/0.0.2505<\/a><\/li>\n<li><strong><em>Caller Contract<\/em><\/strong>: <a href=\"https:\/\/hashscan.io\/previewnet\/contract\/0.0.2507\" target=\"_blank\">https:\/\/hashscan.io\/previewnet\/contract\/0.0.2507<\/a><\/li>\n<li><strong><em>Operator<\/em><\/strong>: <a href=\"https:\/\/hashscan.io\/previewnet\/account\/0.0.1132\" target=\"_blank\">https:\/\/hashscan.io\/previewnet\/account\/0.0.1132<\/a><\/li>\n<li><strong><em>Last Transaction (out of three contract executions)<\/em><\/strong>: <a href=\"https:\/\/hashscan.io\/previewnet\/transaction\/1674246551.782213192?tid=0.0.1132-1674246540-672254772\" target=\"_blank\">https:\/\/hashscan.io\/previewnet\/transaction\/1674246551.782213192?tid=0.0.1132-1674246540-672254772<\/a><\/li>\n<\/ul>\n<\/div>\n<figure class=\"blog-image mb-40\"><img decoding=\"async\" src=\"https:\/\/hedera.com\/wp-content\/uploads\/2025\/12\/Contract-Traceability-Image-1_2023-01-24-015233_exbz.png\" alt=\"\"\/><\/figure>\n<div class=\"body-text BodyCopy mb-40 style-1\">\n<h4 class=\"color-ultraviolet\"><strong>Contract Results <\/strong><\/h4>\n<p>The contract results section provides summary information of whether the transaction completed successfully or not, the entities involved, gas values, and more. <\/p>\n<p><strong>Contract Results in HashScan<\/strong>:<\/p>\n<\/div>\n<figure class=\"blog-image mb-40\"><img decoding=\"async\" src=\"https:\/\/hedera.com\/wp-content\/uploads\/2025\/12\/Contract-Traceability-Image-2_2023-01-24-015301_tohq.png\" alt=\"\"\/><\/figure>\n<div class=\"body-text BodyCopy mb-40 style-1\">\n<p><strong>Mirror Node REST API for Results: <\/strong><\/p>\n<p><a href=\"https:\/\/previewnet.mirrornode.hedera.com\/api\/v1\/contracts\/0.0.2507\/results\" target=\"_blank\">https:\/\/previewnet.mirrornode.hedera.com\/api\/v1\/contracts\/0.0.2507\/results<\/a><\/p>\n<h4 class=\"color-ultraviolet\"><strong>Contract Actions<\/strong><\/h4>\n<p>The <em><strong>Actions <\/strong><\/em>section\u00a0(Call Trace in HashScan)\u00a0highlights all the interactions from entity to entity (account calls contract, contract calls contract, etc.) This can help you understand the sequence of calls and operations in your application. In HashScan, you can expand all the calls involved in a transaction to see details like entity IDs, gas values, HBAR transferred, and more. <\/p>\n<p>In our example, you can see that the account 0.0.1132 calls the contract 0.0.2507 (<strong><em>CallCounter.sol<\/em><\/strong>), which then calls the contract 0.0.2505 (<strong><em>Counter.sol<\/em><\/strong>)<\/p>\n<p><strong>Contract Actions in HashScan<\/strong>:<\/p>\n<\/div>\n<figure class=\"blog-image mb-40\"><img decoding=\"async\" src=\"https:\/\/hedera.com\/wp-content\/uploads\/2025\/12\/Contract-Traceability-Image-3_2023-01-24-015331_fzdt.png\" alt=\"\"\/><\/figure>\n<div class=\"body-text BodyCopy mb-40 style-1\">\n<p><strong>Mirror Node REST API for Actions: <\/strong><a href=\"https:\/\/previewnet.mirrornode.hedera.com\/api\/v1\/contracts\/results\/0xb739e3c90b8cf9dcc823aff3175bd61efa2167c7072c1103cde0aad3f2295815\/actions\" target=\"_blank\">https:\/\/previewnet.mirrornode.hedera.com\/api\/v1\/contracts\/results\/0xb739e3c90b8cf9dcc823aff3175bd61efa2167c7072c1103cde0aad3f2295815\/actions<\/a><\/p>\n<h4 class=\"color-ultraviolet\"><strong>State Changes<\/strong><\/h4>\n<p>State changes can also be inspected with\u00a0mirror nodes. In HashScan, you can see the values read and written to state for a given address. <\/p>\n<p>In our example, for the third contract execution, you see that the value of 3 is written to the state of contract 0.0.2505 (<strong><em>Counter.sol<\/em><\/strong>) and the contract 0.0.2507 reads the address of the counter contract.<\/p>\n<p><strong>Contract State in HashScan<\/strong>:<\/p>\n<\/div>\n<figure class=\"blog-image mb-40\"><img decoding=\"async\" src=\"https:\/\/hedera.com\/wp-content\/uploads\/2025\/12\/Contract-Traceability-Image-4_2023-01-24-015346_fghz.png\" alt=\"\"\/><\/figure>\n<div class=\"body-text BodyCopy mb-40 style-1\">\n<p><strong>Mirror Node REST API for State:<\/strong><\/p>\n<p><a href=\"https:\/\/previewnet.mirrornode.hedera.com\/api\/v1\/contracts\/0.0.2505\/state\" target=\"_blank\">https:\/\/previewnet.mirrornode.hedera.com\/api\/v1\/contracts\/0.0.2505\/state<\/a><\/p>\n<p><a href=\"https:\/\/previewnet.mirrornode.hedera.com\/api\/v1\/contracts\/0.0.2507\/state\" target=\"_blank\">https:\/\/previewnet.mirrornode.hedera.com\/api\/v1\/contracts\/0.0.2507\/state<\/a><\/p>\n<h4 class=\"color-ultraviolet\"><strong>Logs<\/strong><\/h4>\n<p>Mirror nodes also provide information about events, which is captured in the logs section.<\/p>\n<p>As a refresher, when an event is emitted, it stores the arguments in a special on-chain data structure called the transaction log. Logs are composed of <strong><em>topics<\/em><\/strong> and <strong><em>data<\/em><\/strong>.<\/p>\n<p>For a detailed explanation of how to access event information from smart contracts, be sure to read the tutorial <a href=\"https:\/\/hedera.com\/blog\/how-to-get-event-information-from-hedera-smart-contracts\" target=\"_blank\">How to Get Event Information from Hedera Smart Contracts<\/a>.<\/p>\n<p><strong>Contract Logs on HashScan<\/strong>:<\/p>\n<\/div>\n<figure class=\"blog-image mb-40\"><img decoding=\"async\" src=\"https:\/\/hedera.com\/wp-content\/uploads\/2025\/12\/Contract-Traceability-Image-5_2023-01-24-015414_hjgi.png\" alt=\"\"\/><\/figure>\n<div class=\"body-text BodyCopy mb-40 style-1\">\n<p><strong>Mirror Node REST API for Logs:<\/strong><\/p>\n<p><a href=\"https:\/\/previewnet.mirrornode.hedera.com\/api\/v1\/contracts\/0.0.2505\/results\/logs\" target=\"_blank\">https:\/\/previewnet.mirrornode.hedera.com\/api\/v1\/contracts\/0.0.2505\/results\/logs<\/a><\/p>\n<h4 class=\"color-ultraviolet\">Summary<\/h4>\n<p>Now you know how to inspect smart contract transactions using the traceability information provided by the mirror nodes. You can try this example with the other officially supported SDKs for Java, Go, and Swift.<\/p>\n<h4 class=\"color-ultraviolet\">Continue Learning<\/h4>\n<ul>\n<li><a href=\"https:\/\/portal.hedera.com\/register\" target=\"_blank\">Open a Testnet Account<\/a><\/li>\n<li><a href=\"https:\/\/docs.hedera.com\/hedera\/tutorials\" target=\"_blank\">Try Examples<\/a><br \/>\nand <a href=\"https:\/\/docs.hedera.com\/hedera\/tutorials\" target=\"_blank\">Tutorials<\/a><\/li>\n<li><a href=\"http:\/\/hedera.com\/discord\" target=\"_blank\">Join the Developer Discord<\/a><\/li>\n<li><a href=\"https:\/\/hedera.com\/learning\" target=\"_blank\">Read the Learning Center<\/a><\/li>\n<\/ul>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>This tutorial helps smart contract developers understand the traceability information for contract transactions that is provided by the mirror nodes. Specifically, you will learn how to view contract<strong><em> actions<\/em><\/strong>, <strong><em>state changes<\/em><\/strong>, and <strong><em>logs<\/em><\/strong>.<\/p>\n","protected":false},"author":10,"featured_media":16887,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"content-type":"","footnotes":""},"categories":[1],"tags":[45],"ppma_author":[43],"class_list":["post-15778","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-uncategorized","tag-technical"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v26.9 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>How to Inspect Smart Contract Transactions on Hedera Using Mirror Nodes | Hedera<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/hedera.com\/blog\/how-to-inspect-smart-contract-transactions-on-hedera-using-mirror-nodes\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"How to Inspect Smart Contract Transactions on Hedera Using Mirror Nodes | Hedera\" \/>\n<meta property=\"og:description\" content=\"This tutorial helps smart contract developers understand the traceability information for contract transactions that is provided by the mirror nodes. Specifically, you will learn how to view contract actions, state changes, and logs.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/hedera.com\/blog\/how-to-inspect-smart-contract-transactions-on-hedera-using-mirror-nodes\/\" \/>\n<meta property=\"og:site_name\" content=\"Hedera\" \/>\n<meta property=\"article:published_time\" content=\"2023-01-23T05:00:00+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-12-08T18:47:10+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/hedera.com\/wp-content\/uploads\/2025\/12\/How-to-Inspect-Smart-Contract-Transactions-on-Hedera-Using-Mirror-Nodes-Blog-Banner.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1200\" \/>\n\t<meta property=\"og:image:height\" content=\"670\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Hedera Team\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/hedera.com\/blog\/how-to-inspect-smart-contract-transactions-on-hedera-using-mirror-nodes\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/hedera.com\/blog\/how-to-inspect-smart-contract-transactions-on-hedera-using-mirror-nodes\/\"},\"author\":{\"name\":\"Hedera Team\",\"@id\":\"https:\/\/hedera.com\/#\/schema\/person\/2dc6146f9f20a44d3de58c834d52e9f4\"},\"headline\":\"How to Inspect Smart Contract Transactions on Hedera Using Mirror Nodes\",\"datePublished\":\"2023-01-23T05:00:00+00:00\",\"dateModified\":\"2025-12-08T18:47:10+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/hedera.com\/blog\/how-to-inspect-smart-contract-transactions-on-hedera-using-mirror-nodes\/\"},\"wordCount\":926,\"publisher\":{\"@id\":\"https:\/\/hedera.com\/#organization\"},\"image\":{\"@id\":\"https:\/\/hedera.com\/blog\/how-to-inspect-smart-contract-transactions-on-hedera-using-mirror-nodes\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/hedera.com\/wp-content\/uploads\/2025\/12\/How-to-Inspect-Smart-Contract-Transactions-on-Hedera-Using-Mirror-Nodes-Blog-Banner.png\",\"keywords\":[\"technical\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/hedera.com\/blog\/how-to-inspect-smart-contract-transactions-on-hedera-using-mirror-nodes\/\",\"url\":\"https:\/\/hedera.com\/blog\/how-to-inspect-smart-contract-transactions-on-hedera-using-mirror-nodes\/\",\"name\":\"How to Inspect Smart Contract Transactions on Hedera Using Mirror Nodes | Hedera\",\"isPartOf\":{\"@id\":\"https:\/\/hedera.com\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/hedera.com\/blog\/how-to-inspect-smart-contract-transactions-on-hedera-using-mirror-nodes\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/hedera.com\/blog\/how-to-inspect-smart-contract-transactions-on-hedera-using-mirror-nodes\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/hedera.com\/wp-content\/uploads\/2025\/12\/How-to-Inspect-Smart-Contract-Transactions-on-Hedera-Using-Mirror-Nodes-Blog-Banner.png\",\"datePublished\":\"2023-01-23T05:00:00+00:00\",\"dateModified\":\"2025-12-08T18:47:10+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/hedera.com\/blog\/how-to-inspect-smart-contract-transactions-on-hedera-using-mirror-nodes\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/hedera.com\/blog\/how-to-inspect-smart-contract-transactions-on-hedera-using-mirror-nodes\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/hedera.com\/blog\/how-to-inspect-smart-contract-transactions-on-hedera-using-mirror-nodes\/#primaryimage\",\"url\":\"https:\/\/hedera.com\/wp-content\/uploads\/2025\/12\/How-to-Inspect-Smart-Contract-Transactions-on-Hedera-Using-Mirror-Nodes-Blog-Banner.png\",\"contentUrl\":\"https:\/\/hedera.com\/wp-content\/uploads\/2025\/12\/How-to-Inspect-Smart-Contract-Transactions-on-Hedera-Using-Mirror-Nodes-Blog-Banner.png\",\"width\":1200,\"height\":670},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/hedera.com\/blog\/how-to-inspect-smart-contract-transactions-on-hedera-using-mirror-nodes\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/hedera.com\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"How to Inspect Smart Contract Transactions on Hedera Using Mirror Nodes\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/hedera.com\/#website\",\"url\":\"https:\/\/hedera.com\/\",\"name\":\"Hedera\",\"description\":\"Hello future\",\"publisher\":{\"@id\":\"https:\/\/hedera.com\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/hedera.com\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/hedera.com\/#organization\",\"name\":\"Hedera\",\"url\":\"https:\/\/hedera.com\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/hedera.com\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/hedera.com\/wp-content\/uploads\/2025\/09\/hedera_logo.png\",\"contentUrl\":\"https:\/\/hedera.com\/wp-content\/uploads\/2025\/09\/hedera_logo.png\",\"width\":500,\"height\":375,\"caption\":\"Hedera\"},\"image\":{\"@id\":\"https:\/\/hedera.com\/#\/schema\/logo\/image\/\"}}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"How to Inspect Smart Contract Transactions on Hedera Using Mirror Nodes | Hedera","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/hedera.com\/blog\/how-to-inspect-smart-contract-transactions-on-hedera-using-mirror-nodes\/","og_locale":"en_US","og_type":"article","og_title":"How to Inspect Smart Contract Transactions on Hedera Using Mirror Nodes | Hedera","og_description":"This tutorial helps smart contract developers understand the traceability information for contract transactions that is provided by the mirror nodes. Specifically, you will learn how to view contract actions, state changes, and logs.","og_url":"https:\/\/hedera.com\/blog\/how-to-inspect-smart-contract-transactions-on-hedera-using-mirror-nodes\/","og_site_name":"Hedera","article_published_time":"2023-01-23T05:00:00+00:00","article_modified_time":"2025-12-08T18:47:10+00:00","og_image":[{"width":1200,"height":670,"url":"https:\/\/hedera.com\/wp-content\/uploads\/2025\/12\/How-to-Inspect-Smart-Contract-Transactions-on-Hedera-Using-Mirror-Nodes-Blog-Banner.png","type":"image\/png"}],"author":"Hedera Team","twitter_card":"summary_large_image","schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/hedera.com\/blog\/how-to-inspect-smart-contract-transactions-on-hedera-using-mirror-nodes\/#article","isPartOf":{"@id":"https:\/\/hedera.com\/blog\/how-to-inspect-smart-contract-transactions-on-hedera-using-mirror-nodes\/"},"author":{"name":"Hedera Team","@id":"https:\/\/hedera.com\/#\/schema\/person\/2dc6146f9f20a44d3de58c834d52e9f4"},"headline":"How to Inspect Smart Contract Transactions on Hedera Using Mirror Nodes","datePublished":"2023-01-23T05:00:00+00:00","dateModified":"2025-12-08T18:47:10+00:00","mainEntityOfPage":{"@id":"https:\/\/hedera.com\/blog\/how-to-inspect-smart-contract-transactions-on-hedera-using-mirror-nodes\/"},"wordCount":926,"publisher":{"@id":"https:\/\/hedera.com\/#organization"},"image":{"@id":"https:\/\/hedera.com\/blog\/how-to-inspect-smart-contract-transactions-on-hedera-using-mirror-nodes\/#primaryimage"},"thumbnailUrl":"https:\/\/hedera.com\/wp-content\/uploads\/2025\/12\/How-to-Inspect-Smart-Contract-Transactions-on-Hedera-Using-Mirror-Nodes-Blog-Banner.png","keywords":["technical"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/hedera.com\/blog\/how-to-inspect-smart-contract-transactions-on-hedera-using-mirror-nodes\/","url":"https:\/\/hedera.com\/blog\/how-to-inspect-smart-contract-transactions-on-hedera-using-mirror-nodes\/","name":"How to Inspect Smart Contract Transactions on Hedera Using Mirror Nodes | Hedera","isPartOf":{"@id":"https:\/\/hedera.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/hedera.com\/blog\/how-to-inspect-smart-contract-transactions-on-hedera-using-mirror-nodes\/#primaryimage"},"image":{"@id":"https:\/\/hedera.com\/blog\/how-to-inspect-smart-contract-transactions-on-hedera-using-mirror-nodes\/#primaryimage"},"thumbnailUrl":"https:\/\/hedera.com\/wp-content\/uploads\/2025\/12\/How-to-Inspect-Smart-Contract-Transactions-on-Hedera-Using-Mirror-Nodes-Blog-Banner.png","datePublished":"2023-01-23T05:00:00+00:00","dateModified":"2025-12-08T18:47:10+00:00","breadcrumb":{"@id":"https:\/\/hedera.com\/blog\/how-to-inspect-smart-contract-transactions-on-hedera-using-mirror-nodes\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/hedera.com\/blog\/how-to-inspect-smart-contract-transactions-on-hedera-using-mirror-nodes\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/hedera.com\/blog\/how-to-inspect-smart-contract-transactions-on-hedera-using-mirror-nodes\/#primaryimage","url":"https:\/\/hedera.com\/wp-content\/uploads\/2025\/12\/How-to-Inspect-Smart-Contract-Transactions-on-Hedera-Using-Mirror-Nodes-Blog-Banner.png","contentUrl":"https:\/\/hedera.com\/wp-content\/uploads\/2025\/12\/How-to-Inspect-Smart-Contract-Transactions-on-Hedera-Using-Mirror-Nodes-Blog-Banner.png","width":1200,"height":670},{"@type":"BreadcrumbList","@id":"https:\/\/hedera.com\/blog\/how-to-inspect-smart-contract-transactions-on-hedera-using-mirror-nodes\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/hedera.com\/"},{"@type":"ListItem","position":2,"name":"How to Inspect Smart Contract Transactions on Hedera Using Mirror Nodes"}]},{"@type":"WebSite","@id":"https:\/\/hedera.com\/#website","url":"https:\/\/hedera.com\/","name":"Hedera","description":"Hello future","publisher":{"@id":"https:\/\/hedera.com\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/hedera.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/hedera.com\/#organization","name":"Hedera","url":"https:\/\/hedera.com\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/hedera.com\/#\/schema\/logo\/image\/","url":"https:\/\/hedera.com\/wp-content\/uploads\/2025\/09\/hedera_logo.png","contentUrl":"https:\/\/hedera.com\/wp-content\/uploads\/2025\/09\/hedera_logo.png","width":500,"height":375,"caption":"Hedera"},"image":{"@id":"https:\/\/hedera.com\/#\/schema\/logo\/image\/"}}]}},"featured_image_src":"https:\/\/hedera.com\/wp-content\/uploads\/2025\/12\/How-to-Inspect-Smart-Contract-Transactions-on-Hedera-Using-Mirror-Nodes-Blog-Banner-600x400.png","featured_image_src_square":"https:\/\/hedera.com\/wp-content\/uploads\/2025\/12\/How-to-Inspect-Smart-Contract-Transactions-on-Hedera-Using-Mirror-Nodes-Blog-Banner-600x600.png","author_info":{"display_name":"Hedera Team","author_link":"https:\/\/hedera.com\/blog\/author\/hedera-team\/"},"authors":[{"term_id":43,"user_id":10,"is_guest":0,"slug":"hedera-team","display_name":"Hedera Team","avatar_url":"https:\/\/secure.gravatar.com\/avatar\/7ed01931dc9498365746508c4ca49ed0507ef65e04e0b82ffe88c50ef9242b1d?s=96&d=mm&r=g","0":null,"1":"","2":"","3":"","4":"","5":"","6":""}],"_links":{"self":[{"href":"https:\/\/hedera.com\/wp-json\/wp\/v2\/posts\/15778","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/hedera.com\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/hedera.com\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/hedera.com\/wp-json\/wp\/v2\/users\/10"}],"replies":[{"embeddable":true,"href":"https:\/\/hedera.com\/wp-json\/wp\/v2\/comments?post=15778"}],"version-history":[{"count":0,"href":"https:\/\/hedera.com\/wp-json\/wp\/v2\/posts\/15778\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/hedera.com\/wp-json\/wp\/v2\/media\/16887"}],"wp:attachment":[{"href":"https:\/\/hedera.com\/wp-json\/wp\/v2\/media?parent=15778"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/hedera.com\/wp-json\/wp\/v2\/categories?post=15778"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/hedera.com\/wp-json\/wp\/v2\/tags?post=15778"},{"taxonomy":"author","embeddable":true,"href":"https:\/\/hedera.com\/wp-json\/wp\/v2\/ppma_author?post=15778"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}