Skip to content
TraceFast Docs

Transactions of one block

Open this block in TraceFast →

The transactions of one block, in their order within the block, each with sender, recipient, value, gas, the fee fields of its type and the receipt's outcome. Pages follow an opaque cursor; txCount is the block's whole count, so you know how many pages to expect.

GET https://tracefast.xyz/api/v1/chains/1/blocks/{number}/transactions
ParameterInTypeNotes
numberpathintegerblock height, 0 or more
limitqueryinteger, optional1..100, default 25
cursorquerystring, optionalnextCursor of the previous page, unchanged

Access — an API key on the Enriched Data plan or higher (plans), or no key at all: pay per call with x402 at the same path on https://mpp.tracefast.xyz/api/v1, at the price its 402 states. As a tool for AI agents: get_block_transactions on the MCP server. Stable — see stability.

chains/1 is a literal: the method serves Ethereum mainnet data. Other chain ids answer 404 chain_not_supported. There are no other parameters — an unknown one is refused rather than ignored.

What it covers, and what it does not

  • Top-level transactions only. Internal calls are in the execution trace; emitted events in event logs of a transaction.
  • A block this API cannot see is refused, never answered empty. A height past the newest block answers 404 not_found; a block inside a coverage gap answers 422 block_not_available with reason: coverage_gap — the same verdict as one block. An empty list only ever means a block with no transactions.

Response

200 application/json, here with ?limit=2:

{
  "data": {
    "blockNumber": 25920000,
    "txCount": 411,
    "transactions": [
      {
        "chainId": 1,
        "hash": "0xbde113f9fa6fc2b0355ba9067a56b58e9c1fc6621b908a3efe809ad7c2185059",
        "blockNumber": 25920000,
        "txIndex": 0,
        "timestamp": 1788718079,
        "from": "0xc917c3fa468f2c4b9c84c72caa46420eb9825249",
        "to": "0x0000000aa232009084bd71a5797d089aa4edfad4",
        "valueWei": "0",
        "methodId": "0x1828e0e7",
        "inputSize": 196,
        "nonce": 108848,
        "txType": 2,
        "gasLimit": "100000",
        "gasUsed": "34681",
        "maxFeePerGas": "190356350",
        "maxPriorityFeePerGas": "0",
        "effectiveGasPrice": "92963002",
        "status": 1,
        "logCount": 0
      },
      {
        "chainId": 1,
        "hash": "0x9c0bce2399468e1ceeaa3f780237db2550a65804a84524017ea950f1d6a61b94",
        "blockNumber": 25920000,
        "txIndex": 1,
        "timestamp": 1788718079,
        "from": "0xf874e3f8fa13dd2fde9b7d0c9f4a7b9352afbc1e",
        "to": "0x66a9893cc07d91d95644aedd05d03f95e1dba8af",
        "valueWei": "0",
        "methodId": "0x3593564c",
        "inputSize": 1669,
        "nonce": 2344,
        "txType": 2,
        "gasLimit": "500000",
        "gasUsed": "222383",
        "maxFeePerGas": "318718136",
        "maxPriorityFeePerGas": "100000000",
        "effectiveGasPrice": "192963002",
        "status": 1,
        "logCount": 4
      }
    ],
    "nextCursor": "AVsyNTkyMDAwMCwxXdYbYDmDIx058H5sxG39VoA"
  },
  "meta": {
    "chain": "ethereum",
    "timestamp": 1789063614466,
    "cached": false,
    "asOfBlock": 25920000,
    "docs": "https://docs.tracefast.xyz/api/block-transactions"
  }
}

data

FieldMeaning
blockNumberthe block these transactions belong to
txCounthow many transactions the block holds in total, not on this page
transactions[]this page, in transaction-index order
nextCursorcursor for the next page. Absent on the last page

Each row has the same fields as one transaction — sender, recipient, value, nonce, type, gas, the fee fields (gasPrice, maxFeePerGas, maxPriorityFeePerGas, effectiveGasPrice, each absent where the type does not carry it), status and logCount.

Pagination

Keyset pagination: pass nextCursor back as cursor, with the same number, until the response carries no nextCursor. A cursor is valid only for this method and this block; anything else answers 400 invalid_cursor, and the recovery is to start again from the first page. See pagination.

Errors

StatuscodeWhendetails
400bad_requestnumber is not a non-negative integerreason: block_number_invalid
400bad_requestlimit outside 1..100reason: limit_out_of_range, limit, maxLimit
400invalid_cursorthe cursor was not issued for this request—
404not_foundno block at that height yet — past the newest block the API serves—
422block_not_availablethe block exists on chain but sits in a coverage gap; ask again laterreason: coverage_gap, coverageGapFromBlock, coverageGapToBlock, maxAvailableBlock

The 422 for a block inside a coverage gap reads, for example:

{
  "error": {
    "code": "block_not_available",
    "details": {
      "coverageGapFromBlock": 25925129,
      "coverageGapToBlock": 25948372,
      "maxAvailableBlock": 25925128,
      "reason": "coverage_gap"
    },
    "message": "block 25930000 falls in a range that is temporarily unavailable (a coverage gap): blocks 25925129-25948372. They exist on chain; this is not a statement that they do not. Retry later, or ask about a block at or below 25925128.",
    "requestId": "01a08c80-4d21-74c1-b528-2f39a262c99a"
  }
}

Malformed input, unknown parameters and the key check's 401/403/429 are the same for every method — see conventions and API keys.


Last updated 22 Oct 2026, 08:06 UTC · verified against TraceFast v1.0.261 · Markdown