---
title: "Get proposal by hash"
method: GET
path: "/v1/operations/proposals/{hash}"
tags: ["Operations"]
---

# Get proposal by hash

`GET /v1/operations/proposals/{hash}`

Returns a proposal operation with specified hash.

## Path parameters

- `hash` string, required

## Query parameters

- `quote` 'None' | 'Btc' | 'Eur' | 'Usd' | 'Cny' | 'Jpy' | 'Krw' | 'Eth' | 'Gbp'

## Response `200`

- ProposalOperation[]
  - `type` string — Type of the operation, `proposal` - is used by bakers (delegates) to submit and/or upvote proposals to amend the protocol
  - `id` integer — Unique ID of the operation, stored in the TzKT indexer database
  - `level` integer — The height of the block from the genesis block, in which the operation was included
  - `timestamp` string, date-time — Datetime of the block, in which the operation was included (ISO 8601, e.g. `2020-02-20T02:40:57Z`)
  - `block` string, required — Hash of the block, in which the operation was included
  - `hash` string, required — Hash of the operation
  - `period` PeriodInfo, required
    - `index` integer — Voting period index, starting from zero
    - `epoch` integer — Voting epoch index, starting from zero
    - `kind` string, required — Kind of the voting period `proposal` - delegates can submit protocol amendment proposals using the proposal operation `exploration` - bakers (delegates) may vote on the top-ranked proposal from the previous Proposal Period using the ballot operation `testing` - If the proposal is approved in the Exploration Period, the testing (or 'cooldown') period begins and bakers start testing the new protocol `promotion` - delegates can cast one vote to promote or not the tested proposal using the ballot operation `adoption` - after the proposal is actually accepted, the ecosystem has some time to prepare to the upgrade
    - `firstLevel` integer — The height of the block in which the period starts
    - `lastLevel` integer — The height of the block in which the period ends
  - `proposal` ProposalAlias, required
    - `alias` string, nullable — Alias of the proposal
    - `hash` string, required — Hash of the proposal, which representing a tarball of concatenated .ml/.mli source files
  - `delegate` Alias, required
    - `alias` string, nullable — Account alias name (off-chain data).
    - `address` string, required — Account address (public key hash).
  - `votingPower` integer — Baker's voting power
  - `duplicated` boolean — Indicates whether proposal upvote has already been pushed. Duplicated proposal operations are not counted when selecting proposal-winner.
  - `quote` QuoteShort
    - `btc` number, double, nullable — XTZ/BTC price
    - `eur` number, double, nullable — XTZ/EUR price
    - `usd` number, double, nullable — XTZ/USD price
    - `cny` number, double, nullable — XTZ/CNY price
    - `jpy` number, double, nullable — XTZ/JPY price
    - `krw` number, double, nullable — XTZ/KRW price
    - `eth` number, double, nullable — XTZ/ETH price
    - `gbp` number, double, nullable — XTZ/GBP price

---

[API](https://skmtc.dev/tzkt/apis/tzkt-api.md) · [All operations](https://skmtc.dev/tzkt/apis/tzkt-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/tzkt/tzkt-api/revisions/a2e2aba5e534/schema)
