Transactions

Easily retrieve all historical transactions of a wallet or smart contract address with 1 API call.

The Covalent transactions endpoints allow you to easily fetch all historical transactions of a wallet or smart contract address in near real-time. There are 5 endpoints in this package, each offering a different segmentation of data returned.

  1. Get recent transactions for address (v3)
  • Returns the last 100 transactions for an address
  • Good for quickly displaying recent transactions.
  1. Get paginated transactions for address (v3)
  • Same as Get recent transactions for address, but allows you to comb through transactions by pages of 100 items each.
  • Good for populating the pages of a transactions history display
  1. Get all transactions in a block (v3)
  • Returns all the transactions within a block or a range of blocks.
  • Good for building block explorers, or block level analytics sites.
  1. Get all transactions in a block by page (v3)
  • Same as Get all transactions in a block, but allows you to quickly retrieve the next page of responses.
  • Good for combing through blocks for transactions.
  1. Get bulk time bucket transactions for address (v3)
  • Used for heavy volume wallets - allows you to get all transactions in bulk by specifying a time bucket. Read this guide for more details.
  • Good for processing addresses with millions of transactions.

Get recent transactions for address (v3)

API Endpoint

https://open-platform.nodereal.io/{{apiKey}}/covalenthqtx/v1/{{chainName}}/address/{{walletAddress}}/transactions_v3/

Path Parameters:

NameDescription
apiKeyString - your NodeReal API Key, consisting of 32 characters. E.g. 4c0a1c23661a4e26bcbcwed461e34ea9
chainNameString - Name of the chain you’re querying. List of supported values: eth-mainnet, bsc-mainnet, arbitrum-mainnet, arbitrum-nova-mainnet (See Covalent’s supported networks: https://www.covalenthq.com/docs/networks/)
walletAddressString: Wallet or contract address (can be in ENS format). (e.g. 0xe33b778665a1C1e9f6318abF11eF4889C0911FD7)

Query Parameters:

NameDescription
(optional) quote-currencyString - Defaults to USD. Returns values denominated in the quote-currency. You can change it by selecting one of the 12 currencies supported: (ARS, AUD, USD, CAD, KRW, SGD, RUB, EUR, JPY, NGN, CHF, GBP).
(optional) no-logsBoolean - Omit log events.

Request

curl --location --request GET 'https://open-platform.nodereal.io/{{apiKey}}/covalenthqtx/v1/eth-mainnet/address/0x0110A04Fe49534249F87971192989E00D5d3715d/transactions_v3/' \

Result

{
  "data": {
    "address": "0x0110a04fe49534249f87971192989e00d5d3715d",
    "updated_at": "2023-03-23T00:15:11.259370529Z",
    "next_update_at": "2023-03-23T00:20:11.259371141Z",
    "quote_currency": "USD",
    "chain_id": 1,
    "chain_name": "eth-mainnet",
    "links": {
      "prev": "https://api.covalenthq.com/v1/eth-mainnet/address/0x0110a04fe49534249f87971192989e00d5d3715d/transactions_v3/page/0/",
      "next": null
    },
    "items": [
      {
        "block_signed_at": "2023-03-21T23:21:59Z",
        "block_height": 16879239,
        "tx_hash": "0xf8ca67221d64a7b6566169f1a729e776b73e0f7a09279ecc2fbb0e90eb16a605",
        "tx_offset": 29,
        "successful": true,
        "from_address": "0x0110a04fe49534249f87971192989e00d5d3715d",
        "from_address_label": null,
        "to_address": "0xae0ee0a63a2ce6baeeffe56e7714fb4efe48d419",
        "to_address_label": null,
        "value": "18000000000000000",
        "value_quote": 32.64240384738698,
        "gas_offered": 165298,
        "gas_spent": 108931,
        "gas_price": 19607298436,
        "fees_paid": "2135842625931916",
        "gas_quote": 3.873279863896282,
        "gas_quote_rate": 1813.4668804103878,
        "log_events": [...more items]
      },
      {...18 items},
      {...18 items},
      {...18 items},
      {...18 items}
    ]
  },
  "error": false,
  "error_message": null,
  "error_code": null
}

Get paginated transactions for address (v3):

API Endpoint

https://open-platform.nodereal.io/{{apiKey}}/covalenthqtx/v1/{{chainName}}/address/{{walletAddress}}/transactions_v3/page/{{page}}

Path Parameters:

NameDescription
apiKeyString - your NodeReal API Key, consisting of 32 characters. E.g. 4c0a1c23661a4e26bcbcwed461e34ea9
chainNameString - Name of the chain you’re querying. List of supported values: eth-mainnet, bsc-mainnet, arbitrum-mainnet, arbitrum-nova-mainnet (See Covalent’s supported networks: https://www.covalenthq.com/docs/networks/)
walletAddressString: Wallet or contract address (can be in ENS format). (e.g. 0xe33b778665a1C1e9f6318abF11eF4889C0911FD7)
pageInteger - the requested page, 0-indexed

Query Parameters:

NameDescription
(optional) quote-currencyString - Defaults to USD. Returns values denominated in the quote-currency. You can change it by selecting one of the 12 currencies supported: (ARS, AUD, USD, CAD, KRW, SGD, RUB, EUR, JPY, NGN, CHF, GBP).
(optional) no-logsBoolean - Omit log events.

Request

curl --location --request GET 'https://open-platform.nodereal.io/{{apiKey}}/covalenthqtx/v1/eth-mainnet/address/0x0110A04Fe49534249F87971192989E00D5d3715d/transactions_v3/page/1/' \

Result

Same as Get recent transactions for address (v3) endpoint


Get all transactions in a block (v3):

API Endpoint

https://open-platform.nodereal.io/{{apiKey}}/covalenthqtx/v1/{{chainName}}/block/{{blockHeignt}}/transactions_v3/

Path Parameters:

NameDescription
apiKeyString - your NodeReal API Key, consisting of 32 characters. E.g. 4c0a1c23661a4e26bcbcwed461e34ea9
chainNameString - Name of the chain you’re querying. List of supported values: eth-mainnet, bsc-mainnet, arbitrum-mainnet, arbitrum-nova-mainnet (See Covalent’s supported networks: https://www.covalenthq.com/docs/networks/)
blockHeightInteger - the block height. Can also be ‘latest’.

Query Parameters:

NameDescription
(optional) no-logsBoolean - Omit log events.

Request

curl --location --request GET 'https://open-platform.nodereal.io/{{apiKey}}/covalenthqtx/v1/eth-mainnet/block/latest/transactions_v3/' \

Result

{
  "data": {
    "updated_at": "2023-01-19T04:15:43.477125413Z",
    "items": [
      {
        "block_signed_at": "2023-01-17T20:49:35Z",
        "block_height": 16429017,
        "tx_hash": "0x38f98a90716a9d3d5b43908c8dfd27f5db07cd81e4dc2cc234254600288da5f6",
        "tx_offset": 0,
        "successful": true,
        "from_address": "0x953b239b656f611b65f86e0e6a99e6b500f6bc9a",
        "from_address_label": null,
        "to_address": "0x0000a42df58060230d7f1aefe47da338078244e8",
        "to_address_label": null,
        "value": "5968955874",
        "value_quote": 0.000009407811104688234,
        "gas_offered": 2535898,
        "gas_spent": 1267949,
        "gas_price": 25309574640,
        "fees_paid": "32091249855213360",
        "gas_quote": 50.57977025199248,
        "gas_quote_rate": 1576.1234130859375,
        "log_events": [...more items, see below]
      },
      {
        "block_signed_at": "2023-01-17T20:49:35Z",
        "block_height": 16429017,
        "tx_hash": "0x3f63c7b2466aa73b9ed08d1831585ed69897326de996d45b34f91dd0952b8491",
        "tx_offset": 1,
        "successful": true,
        "from_address": "0xf04c905f22c7e34d9b58303eb614c3acd070175f",
        "from_address_label": null,
        "to_address": "0x7a250d5630b4cf539739df2c5dacb4c659f2488d",
        "to_address_label": null,
        "value": "19522735180045662",
        "value_quote": 30.77024000474648,
        "gas_offered": 2000000,
        "gas_spent": 155308,
        "gas_price": 35509574640,
        "fees_paid": "5514921018189120",
        "gas_quote": 8.69219613808761,
        "gas_quote_rate": 1576.1234130859375,
        "log_events": [...]
      }
    ]
  }
}

Expanded log_events field:

...
log_events: [{
  "block_signed_at": "2023-01-19T22:44:47Z",
  "block_height": 16443913,
  "tx_offset": 0,
  "log_offset": 0,
  "tx_hash": "0x1121ecf9300846df8d6952ba99ad3012b209d4f54289b4d0e2b95ee5e7ed3f92",
  "raw_log_topics": [
    "0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef",
    "0x00000000000000000000000094484f0353c37feb11da98985bd965cff7b68830",
    "0x000000000000000000000000b2f708f09beb7e5aa2052380188cfeaab91449c1"
  ],
  "sender_contract_decimals": 18,
  "sender_name": "Wrapped Ether",
  "sender_contract_ticker_symbol": "WETH",
  "sender_address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2",
  "sender_address_label": null,
  "sender_logo_url": "<https://logos.covalenthq.com/tokens/0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2.png>",
  "raw_log_data": "0x000000000000000000000000000000000000000000000000007265bab9c48000",
  "decoded": {
    "name": "Transfer",
    "signature": "Transfer(indexed address from, indexed address to, uint256 value)",
    "params": [
      {
        "name": "from",
        "type": "address",
        "indexed": true,
        "decoded": true,
        "value": "0x94484f0353c37feb11da98985bd965cff7b68830"
      },
      {
        "name": "to",
        "type": "address",
        "indexed": true,
        "decoded": true,
        "value": "0xb2f708f09beb7e5aa2052380188cfeaab91449c1"
      },
      {
        "name": "value",
        "type": "uint256",
        "indexed": false,
        "decoded": true,
        "value": "32200000000000000"
      }
    ]
  }
},
...

Get all transactions in a block by page (v3):

API Endpoint

https://open-platform.nodereal.io/{{apiKey}}/covalenthqtx/v1/{{chainName}}/block/{{blockHeignt}}/transactions_v3/page/{page}/

Path Parameters:

NameDescription
apiKeyString - your NodeReal API Key, consisting of 32 characters. E.g. 4c0a1c23661a4e26bcbcwed461e34ea9
chainNameString - Name of the chain you’re querying. List of supported values: eth-mainnet, bsc-mainnet, arbitrum-mainnet, arbitrum-nova-mainnet (See Covalent’s supported networks: https://www.covalenthq.com/docs/networks/)
blockHeightInteger - the block height. Can also be ‘latest’.
pageInteger - the requested page, 0-indexed

Query Parameters:

NameDescription
(optional) no-logsBoolean - Omit log events.

Request

curl --location --request GET 'https://open-platform.nodereal.io/{{apiKey}}/covalenthqtx/v1/eth-mainnet/block/latest/transactions_v3/page/1/' \

Result

Same as Get all transactions in a block (v3)


Get bulk time bucket transactions for address (v3):

API Endpoint

https://open-platform.nodereal.io/{{apiKey}}/covalenthqtx/v1/{{chainName}}/bulk/transactions/{{walletAddress}}/{{timeBucket}}/

Path Parameters:

NameDescription
apiKeyString - your NodeReal API Key, consisting of 32 characters. E.g. 4c0a1c23661a4e26bcbcwed461e34ea9
chainNameString - Name of the chain you’re querying. List of supported values: eth-mainnet, bsc-mainnet, arbitrum-mainnet, arbitrum-nova-mainnet (See Covalent’s supported networks: https://www.covalenthq.com/docs/networks/)
walletAddressInteger - the block height. Can also be ‘latest’.
timeBucketThe 0-indexed 15-minute time bucket. E.g. 27 Feb 2023 05:23 GMT = 1677475383 (Unix time). 1677475383/900=1863861 timeBucket. Refer to https://www.covalenthq.com/docs/unified-api/guides/scaling-transactions-time-buckets/ for further breakdown.

Query Parameters:

NameDescription
(optional) no-logsBoolean - Omit log events.

Request

curl --location --request GET 'https://open-platform.nodereal.io/{{apiKey}}/covalenthqtx/v1/eth-mainnet/bulk/transactions/0x95222290dd7278aa3ddd389cc1e1d165cc4bafe5/1864685/' \

Result

{
  "data": {
    "address": "0x95222290dd7278aa3ddd389cc1e1d165cc4bafe5",
    "updated_at": "2023-03-08T05:48:33.744864117Z",
    "next_update_at": "2023-03-08T05:53:33.744893744Z",
    "quote_currency": "USD",
    "chain_id": 1,
    "chain_name": "eth-mainnet",
    "complete": true,
    "links": {
      "prev": "https://api.covalenthq.com/v1/eth-mainnet/bulk/transactions/0x95222290dd7278aa3ddd389cc1e1d165cc4bafe5/1864714/",
      "next": "https://api.covalenthq.com/v1/eth-mainnet/bulk/transactions/0x95222290dd7278aa3ddd389cc1e1d165cc4bafe5/1864716/"
    },
    "items": [
      {...18 items},
      {...18 items},
      {...18 items},
      {...18 items},
      {...18 items}
    ]
  },
  "error": false,
  "error_message": null,
  "error_code": null
}

The most important keys in the response are:

  • links.prev - the link to the previous non-empty time bucket
  • links.next - the link to the next non-empty time bucket so that you don't have to crawl every single time bucket exhaustively
  • complete - boolean if the time bucket is in the past and you can be sure that the bucket has been fully filled. If complete is false, it means that the bucket is still being filled and you can fetch this bucket again to get the latest transactions (if any.)

More Developer Resources

  • API Docs - Use the Covalent API directly from the browser with our API docs
  • Use case templates - Build off our ready-to-ship Web3 use case templates for wallets, NFT collections, DEXs and price trackers
  • Knowledge Base - check out our developer support resources and details on every supported blockchain network.
  • Covalent Postman Collection - Quickly sample all of Covalent’s endpoints from the comforts of your Postman workspace.