---
title: "Get transaction by hash"
method: GET
path: "/transactions/by_hash/{txn_hash}"
tags: ["Transactions"]
---

# Get transaction by hash

`GET /transactions/by_hash/{txn_hash}`

Look up a transaction by its hash. This is the same hash that is returned
by the API when submitting a transaction (see PendingTransaction).

When given a transaction hash, the server first looks for the transaction
in storage (on-chain, committed). If no on-chain transaction is found, it
looks the transaction up by hash in the mempool (pending, not yet committed).

To create a transaction hash by yourself, do the following:
1. Hash message bytes: "RawTransaction" bytes + BCS bytes of [Transaction](https://lumio-labs.github.io/lumio-core/lumio_types/transaction/enum.Transaction.html).
2. Apply hash algorithm `SHA3-256` to the hash message bytes.
3. Hex-encode the hash bytes with `0x` prefix.

## Path parameters

- `txn_hash` string, required

## Response `200`

- Transaction — unresolved $ref

## Other responses

- `400`
- `403`
- `404`
- `410`
- `500`
- `503`

## Changes

- **2025-10-09** `5bfbbc5f3ce7` — 7 breaking, 50 warning
  - the mandatory response header `X-APTOS-BLOCK-HEIGHT` removed for the status `200`
  - the mandatory response header `X-APTOS-CHAIN-ID` removed for the status `200`
  - the mandatory response header `X-APTOS-EPOCH` removed for the status `200`
  - the mandatory response header `X-APTOS-LEDGER-OLDEST-VERSION` removed for the status `200`
  - …53 more
- …earlier changes not shown

[Full history](https://skmtc.dev/pontem-network/apis/lumio-node-api/changes/transactions/by_hash/:txn_hash/get.md)

---

[API](https://skmtc.dev/pontem-network/apis/lumio-node-api.md) · [All operations](https://skmtc.dev/pontem-network/apis/lumio-node-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/pontem-network/lumio-node-api/revisions/385d1aaf056f/schema)
