---
title: "POST /tendermint.abci.ABCI/PrepareProposal"
method: POST
path: "/tendermint.abci.ABCI/PrepareProposal"
tags: ["ABCI"]
---

# POST /tendermint.abci.ABCI/PrepareProposal

`POST /tendermint.abci.ABCI/PrepareProposal`

## Request body

- TendermintAbciRequestPrepareProposal
  - `height` string, int64
  - `local_last_commit` TendermintAbciExtendedCommitInfo — ExtendedCommitInfo is similar to CommitInfo except that it is only used in the PrepareProposal request such that CometBFT can provide vote extensions to the application.
    - `round` integer — The round at which the block proposer decided in the previous height.
    - `votes` TendermintAbciExtendedVoteInfo[] — List of validators' addresses in the last validator set with their voting information, including vote extensions.
      - `block_id_flag` 'BLOCK_ID_FLAG_UNKNOWN' | 'BLOCK_ID_FLAG_ABSENT' | 'BLOCK_ID_FLAG_COMMIT' | 'BLOCK_ID_FLAG_NIL' — - BLOCK_ID_FLAG_UNKNOWN: indicates an error condition - BLOCK_ID_FLAG_ABSENT: the vote was not received - BLOCK_ID_FLAG_COMMIT: voted for the block that received the majority - BLOCK_ID_FLAG_NIL: voted for nil
      - `extension_signature` string, byte
      - `validator` TendermintAbciValidator
        - `address` string, byte
        - `power` string, int64 — The voting power
      - `vote_extension` string, byte — Non-deterministic extension provided by the sending validator's application.
  - `max_tx_bytes` string, int64 — the modified transactions cannot exceed this size.
  - `misbehavior` TendermintAbciMisbehavior[]
    - `height` string, int64
    - `time` string, date-time
    - `total_voting_power` string, int64
    - `type` 'UNKNOWN' | 'DUPLICATE_VOTE' | 'LIGHT_CLIENT_ATTACK'
    - `validator` TendermintAbciValidator
      - `address` string, byte
      - `power` string, int64 — The voting power
  - `next_validators_hash` string, byte
  - `proposer_address` string, byte — address of the public key of the validator proposing the block.
  - `time` string, date-time
  - `txs` string[] — txs is an array of transactions that will be included in a block, sent to the app for possible modifications.

## Response `200`

A successful response.

- TendermintAbciResponsePrepareProposal
  - `txs` string[]

## Other responses

- `default` — An unexpected error response.

## Changes

- **2025-05-21** `3874a03b0e7b` — 1 info
  - api operation id `UpgradeABCI_PrepareProposal` removed and replaced with `EvidenceABCI_PrepareProposal`
- **2025-05-09** `8dbfaa2bebb2` — 1 info
  - api operation id `CircuitABCI_PrepareProposal` removed and replaced with `UpgradeABCI_PrepareProposal`
- **2025-04-08** `21a675703a05` — 1 info
  - api operation id `AuthABCI_PrepareProposal` removed and replaced with `CircuitABCI_PrepareProposal`
- **2025-03-27** `4f349536c8f3` — 1 info
  - api operation id `FeegrantABCI_PrepareProposal` removed and replaced with `AuthABCI_PrepareProposal`
- **2025-02-24** `2ab9d24288c2` — 1 info
  - api operation id `CircuitABCI_PrepareProposal` removed and replaced with `FeegrantABCI_PrepareProposal`

[Full history](https://skmtc.dev/pokt-network/apis/http-api-console/changes/tendermint.abci.ABCI/PrepareProposal/post.md)

---

[API](https://skmtc.dev/pokt-network/apis/http-api-console.md) · [All operations](https://skmtc.dev/pokt-network/apis/http-api-console/llms.txt) · [OpenAPI document](https://skmtc.dev/pokt-network/apis/http-api-console/revisions/671fab54b729?raw)
