---
title: "Get an indexed block by its header ID."
method: GET
path: "/blockchain/block/byHeaderId/{headerId}"
tags: ["blockchain"]
---

# Get an indexed block by its header ID.

`GET /blockchain/block/byHeaderId/{headerId}`

## Path parameters

- `headerId` string, base16, required — Base16-encoded 32 byte modifier id

## Response `200`

The requested indexed block.

- IndexedFullBlock — Block with header and transactions
  - `header` BlockHeader, required — Header of a block. It authenticates link to a previous block, other block sections (transactions, UTXO set transformation proofs, extension), UTXO set, votes for blockchain parameters to be changed and proof-of-work related data.
    - `id` string, base16, required — Base16-encoded 32 byte modifier id
    - `timestamp` integer, required — Basic timestamp definition
    - `version` integer, required — Ergo blockchain protocol version
    - `adProofsRoot` string, base16, required — Base16-encoded 32 byte digest
    - `stateRoot` string, base16, required — Base16-encoded 33 byte digest - digest with extra byte with tree height
    - `transactionsRoot` string, base16, required — Base16-encoded 32 byte digest
    - `nBits` integer, required — Proof-of-work target (difficulty encoded)
    - `extensionHash` string, base16, required — Base16-encoded 32 byte digest
    - `powSolutions` PowSolutions, required — An object containing all components of pow solution
      - `pk` string, required — Base16-encoded public key
      - `w` string, required
      - `n` string, required
      - `d` number, required
    - `height` integer, required — Height of the block (genesis block height == 1)
    - `difficulty` string, required
    - `parentId` string, base16, required — Base16-encoded 32 byte modifier id
    - `votes` string, base16, required — Base16-encoded votes for a soft-fork and parameters
    - `size` integer — Size of the header in bytes
    - `extensionId` string, base16 — Base16-encoded 32 byte modifier id
    - `transactionsId` string, base16 — Base16-encoded 32 byte modifier id
    - `adProofsId` string, base16 — Base16-encoded 32 byte modifier id
  - `blockTransactions` IndexedBlockTransactions, required — Section of a block which contains indexed transactions.
    - `headerId` string, base16, required — Base16-encoded 32 byte modifier id
    - `transactions` IndexedErgoTransaction[], required — List of IndexedErgoTransaction objects
      - `id` string, base16, required — Base16-encoded transaction id bytes
      - `inputs` IndexedErgoBox[], required — Transaction inputs
        - `boxId` string, base16 — Base16-encoded transaction box id bytes. Should be 32 bytes long
        - `value` integer, required — Amount of Ergo token
        - `ergoTree` string, base16, required — Base16-encoded ergo tree bytes
        - `creationHeight` integer, required — Height the output was created at
        - `assets` Asset[] — Assets list in the transaction
          - `tokenId` string, base16, required — Base16-encoded 32 byte digest
          - `amount` integer, required — Amount of the token
        - `additionalRegisters` Registers, required — Ergo box registers
        - `transactionId` string, base16 — Base16-encoded transaction id bytes
        - `index` integer — Index in the transaction outputs
        - `address` string, required — Encoded Ergo Address
        - `spentTransactionId` string, base16, required — Base16-encoded 32 byte modifier id
        - `spendingHeight` integer, nullable, required — The height the box was spent at
        - `inclusionHeight` integer, required — The height the transaction containing the box was included in a block at
        - `spendingProof` SpendingProof — Spending proof for transaction input
          - `proofBytes` string, base16, required — Base16-encoded spending proofs
          - `extension` object, required — Variables to be put into context
        - `globalIndex` integer, required — Global index of the output in the blockchain
      - `dataInputs` ErgoTransactionDataInput[], required — Transaction data inputs
        - `boxId` string, base16, required — Base16-encoded transaction box id bytes. Should be 32 bytes long
      - `outputs` IndexedErgoBox[], required — Transaction outputs
        - `boxId` string, base16 — Base16-encoded transaction box id bytes. Should be 32 bytes long
        - `value` integer, required — Amount of Ergo token
        - `ergoTree` string, base16, required — Base16-encoded ergo tree bytes
        - `creationHeight` integer, required — Height the output was created at
        - `assets` Asset[] — Assets list in the transaction
          - `tokenId` string, base16, required — Base16-encoded 32 byte digest
          - `amount` integer, required — Amount of the token
        - `additionalRegisters` Registers, required — Ergo box registers
        - `transactionId` string, base16 — Base16-encoded transaction id bytes
        - `index` integer — Index in the transaction outputs
        - `address` string, required — Encoded Ergo Address
        - `spentTransactionId` string, base16, required — Base16-encoded 32 byte modifier id
        - `spendingHeight` integer, nullable, required — The height the box was spent at
        - `inclusionHeight` integer, required — The height the transaction containing the box was included in a block at
        - `spendingProof` SpendingProof — Spending proof for transaction input
          - `proofBytes` string, base16, required — Base16-encoded spending proofs
          - `extension` object, required — Variables to be put into context
        - `globalIndex` integer, required — Global index of the output in the blockchain
      - `inclusionHeight` integer, required — Height of a block the transaction was included in
      - `numConfirmations` integer, required — Number of transaction confirmations
      - `blockId` string, base16, required — Base16-encoded 32 byte modifier id
      - `timestamp` integer, required — Basic timestamp definition
      - `index` integer, required — index of the transaction in the block it was included in
      - `globalIndex` integer, required — Global index of the transaction in the blockchain
      - `size` integer, required — Size in bytes
    - `size` integer, required — Size in bytes of all block transactions
  - `adProofs` BlockADProofs, required
    - `headerId` string, base16, required — Base16-encoded 32 byte modifier id
    - `proofBytes` string, base16, required — Base16-encoded ad proofs
    - `digest` string, base16, required — Base16-encoded 32 byte digest
    - `size` integer, required — Size in bytes
  - `extension` Extension, required — Section of a block which contains extension data.
    - `headerId` string, base16, required — Base16-encoded 32 byte modifier id
    - `digest` string, base16, required — Base16-encoded 32 byte digest
    - `fields` KeyValueItem[], nullable, required — List of key-value records
      - HexString[] — Key-value record represented as a pair of hex strings in an array.
  - `size` integer, required — Size in bytes

## Other responses

- `404` — A block with the specified header ID was not found.
- `default` — Error

---

[API](https://skmtc.net/ergoplatform/apis/ergo-node-api.md) · [All operations](https://skmtc.net/ergoplatform/apis/ergo-node-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/ergoplatform/ergo-node-api/versions/ef97e678f020/schema)
