---
title: "POST /broadcast_tx_commit"
method: POST
path: "/broadcast_tx_commit"
---

# POST /broadcast_tx_commit

`POST /broadcast_tx_commit`

[Deprecated] Sends a transaction and waits until transaction is fully complete. (Has a 10 second timeout). Consider using send_tx instead.

## Request body

- JsonRpcRequestForBroadcastTxCommit
  - `id` string — JSON-RPC request id. Auto-populated; can be any string.
  - `jsonrpc` '2.0' — JSON-RPC protocol version. Always `2.0`.
  - `method` 'broadcast_tx_commit', required
  - `params` RpcSendTransactionRequest, required
    - `signed_tx_base64` string, byte, required
    - `wait_until` 'NONE' | 'INCLUDED' | 'EXECUTED_OPTIMISTIC' | 'INCLUDED_FINAL' | 'EXECUTED' | 'FINAL' — How long the RPC should wait before returning a transaction result. Each value waits for a stricter execution milestone than the previous one. Defaults to `EXECUTED_OPTIMISTIC`. - `NONE`: Transaction is waiting to be included into a block. - `INCLUDED`: Transaction is included in a block (block may not be finalized). - `EXECUTED_OPTIMISTIC` (default): Included + all non-refund receipts executed (blocks may not be finalized). - `INCLUDED_FINAL`: Transaction is included in a finalized block. - `EXECUTED`: Included in a finalized block + all non-refund receipts executed. - `FINAL`: Included in a finalized block + all receipts (including refunds) finalized.

## Response `200`

- union
  - object
    - `result` union, required
      - object — Final execution outcome of the transaction and all of subsequent the receipts. Also includes the generated receipt.
        - `receipts` ReceiptView[], required — Receipts generated from the transaction
          - `predecessor_id` string, required — NEAR Account Identifier. This is a unique, syntactically valid, human-readable account identifier on the NEAR network. [See the crate-level docs for information about validation.](index.html#account-id-rules) Also see [Error kind precedence](AccountId#error-kind-precedence). ## Examples ``` use near_account_id::AccountId; let alice: AccountId = "alice.near".parse().unwrap(); assert!("ƒelicia.near".parse::<AccountId>().is_err()); // (ƒ is not f) ```
          - `priority` integer — Deprecated, retained for backward compatibility.
          - `receipt` union, required
            - object
              - …
            - object
              - …
            - object
              - …
          - `receipt_id` string, required
          - `receiver_id` string, required — NEAR Account Identifier. This is a unique, syntactically valid, human-readable account identifier on the NEAR network. [See the crate-level docs for information about validation.](index.html#account-id-rules) Also see [Error kind precedence](AccountId#error-kind-precedence). ## Examples ``` use near_account_id::AccountId; let alice: AccountId = "alice.near".parse().unwrap(); assert!("ƒelicia.near".parse::<AccountId>().is_err()); // (ƒ is not f) ```
        - `receipts_outcome` ExecutionOutcomeWithIdView[], required — The execution outcome of receipts.
          - `block_hash` string, required
          - `id` string, required
          - `outcome` ExecutionOutcomeView, required
            - `executor_id` string, required — NEAR Account Identifier. This is a unique, syntactically valid, human-readable account identifier on the NEAR network. [See the crate-level docs for information about validation.](index.html#account-id-rules) Also see [Error kind precedence](AccountId#error-kind-precedence). ## Examples ``` use near_account_id::AccountId; let alice: AccountId = "alice.near".parse().unwrap(); assert!("ƒelicia.near".parse::<AccountId>().is_err()); // (ƒ is not f) ```
            - `gas_burnt` integer, required
            - `logs` string[], required — Logs from this transaction or receipt.
            - `metadata` ExecutionMetadataView
              - …
            - `receipt_ids` CryptoHash[], required — Receipt IDs generated by this transaction or receipt.
            - `status` union, required
              - …
            - `tokens_burnt` string, required
          - `proof` MerklePathItem[], required
            - `direction` 'Left' | 'Right', required
            - `hash` string, required
        - `status` union, required
          - 'NotStarted' — The execution has not yet started.
          - 'Started' — The execution has started and still going.
          - object — The execution has failed with the given error.
            - `Failure` union, required — Error returned in the ExecutionOutcome in case of failure
              - …
          - object — The execution has succeeded and returned some value or an empty vec encoded in base64.
            - `SuccessValue` string, required
        - `transaction` SignedTransactionView, required
          - `actions` ActionView[], required
            - union
              - …
          - `hash` string, required
          - `nonce` integer, required
          - `nonce_index` integer, nullable
          - `nonce_mode` union
            - union — Controls how the transaction nonce is validated against the access key nonce.
              - …
            - unknown
          - `priority_fee` integer — Deprecated, retained for backward compatibility.
          - `public_key` string, required
          - `receiver_id` string, required — NEAR Account Identifier. This is a unique, syntactically valid, human-readable account identifier on the NEAR network. [See the crate-level docs for information about validation.](index.html#account-id-rules) Also see [Error kind precedence](AccountId#error-kind-precedence). ## Examples ``` use near_account_id::AccountId; let alice: AccountId = "alice.near".parse().unwrap(); assert!("ƒelicia.near".parse::<AccountId>().is_err()); // (ƒ is not f) ```
          - `signature` string, required
          - `signer_id` string, required — NEAR Account Identifier. This is a unique, syntactically valid, human-readable account identifier on the NEAR network. [See the crate-level docs for information about validation.](index.html#account-id-rules) Also see [Error kind precedence](AccountId#error-kind-precedence). ## Examples ``` use near_account_id::AccountId; let alice: AccountId = "alice.near".parse().unwrap(); assert!("ƒelicia.near".parse::<AccountId>().is_err()); // (ƒ is not f) ```
        - `transaction_outcome` ExecutionOutcomeWithIdView, required
          - `block_hash` string, required
          - `id` string, required
          - `outcome` ExecutionOutcomeView, required
            - `executor_id` string, required — NEAR Account Identifier. This is a unique, syntactically valid, human-readable account identifier on the NEAR network. [See the crate-level docs for information about validation.](index.html#account-id-rules) Also see [Error kind precedence](AccountId#error-kind-precedence). ## Examples ``` use near_account_id::AccountId; let alice: AccountId = "alice.near".parse().unwrap(); assert!("ƒelicia.near".parse::<AccountId>().is_err()); // (ƒ is not f) ```
            - `gas_burnt` integer, required
            - `logs` string[], required — Logs from this transaction or receipt.
            - `metadata` ExecutionMetadataView
              - …
            - `receipt_ids` CryptoHash[], required — Receipt IDs generated by this transaction or receipt.
            - `status` union, required
              - …
            - `tokens_burnt` string, required
          - `proof` MerklePathItem[], required
            - `direction` 'Left' | 'Right', required
            - `hash` string, required
        - `final_execution_status` 'NONE' | 'INCLUDED' | 'EXECUTED_OPTIMISTIC' | 'INCLUDED_FINAL' | 'EXECUTED' | 'FINAL', required — How long the RPC should wait before returning a transaction result. Each value waits for a stricter execution milestone than the previous one. Defaults to `EXECUTED_OPTIMISTIC`. - `NONE`: Transaction is waiting to be included into a block. - `INCLUDED`: Transaction is included in a block (block may not be finalized). - `EXECUTED_OPTIMISTIC` (default): Included + all non-refund receipts executed (blocks may not be finalized). - `INCLUDED_FINAL`: Transaction is included in a finalized block. - `EXECUTED`: Included in a finalized block + all non-refund receipts executed. - `FINAL`: Included in a finalized block + all receipts (including refunds) finalized.
      - object — Execution outcome of the transaction and all the subsequent receipts. Could be not finalized yet
        - `receipts_outcome` ExecutionOutcomeWithIdView[], required — The execution outcome of receipts.
          - `block_hash` string, required
          - `id` string, required
          - `outcome` ExecutionOutcomeView, required
            - `executor_id` string, required — NEAR Account Identifier. This is a unique, syntactically valid, human-readable account identifier on the NEAR network. [See the crate-level docs for information about validation.](index.html#account-id-rules) Also see [Error kind precedence](AccountId#error-kind-precedence). ## Examples ``` use near_account_id::AccountId; let alice: AccountId = "alice.near".parse().unwrap(); assert!("ƒelicia.near".parse::<AccountId>().is_err()); // (ƒ is not f) ```
            - `gas_burnt` integer, required
            - `logs` string[], required — Logs from this transaction or receipt.
            - `metadata` ExecutionMetadataView
              - …
            - `receipt_ids` CryptoHash[], required — Receipt IDs generated by this transaction or receipt.
            - `status` union, required
              - …
            - `tokens_burnt` string, required
          - `proof` MerklePathItem[], required
            - `direction` 'Left' | 'Right', required
            - `hash` string, required
        - `status` union, required
          - 'NotStarted' — The execution has not yet started.
          - 'Started' — The execution has started and still going.
          - object — The execution has failed with the given error.
            - `Failure` union, required — Error returned in the ExecutionOutcome in case of failure
              - …
          - object — The execution has succeeded and returned some value or an empty vec encoded in base64.
            - `SuccessValue` string, required
        - `transaction` SignedTransactionView, required
          - `actions` ActionView[], required
            - union
              - …
          - `hash` string, required
          - `nonce` integer, required
          - `nonce_index` integer, nullable
          - `nonce_mode` union
            - union — Controls how the transaction nonce is validated against the access key nonce.
              - …
            - unknown
          - `priority_fee` integer — Deprecated, retained for backward compatibility.
          - `public_key` string, required
          - `receiver_id` string, required — NEAR Account Identifier. This is a unique, syntactically valid, human-readable account identifier on the NEAR network. [See the crate-level docs for information about validation.](index.html#account-id-rules) Also see [Error kind precedence](AccountId#error-kind-precedence). ## Examples ``` use near_account_id::AccountId; let alice: AccountId = "alice.near".parse().unwrap(); assert!("ƒelicia.near".parse::<AccountId>().is_err()); // (ƒ is not f) ```
          - `signature` string, required
          - `signer_id` string, required — NEAR Account Identifier. This is a unique, syntactically valid, human-readable account identifier on the NEAR network. [See the crate-level docs for information about validation.](index.html#account-id-rules) Also see [Error kind precedence](AccountId#error-kind-precedence). ## Examples ``` use near_account_id::AccountId; let alice: AccountId = "alice.near".parse().unwrap(); assert!("ƒelicia.near".parse::<AccountId>().is_err()); // (ƒ is not f) ```
        - `transaction_outcome` ExecutionOutcomeWithIdView, required
          - `block_hash` string, required
          - `id` string, required
          - `outcome` ExecutionOutcomeView, required
            - `executor_id` string, required — NEAR Account Identifier. This is a unique, syntactically valid, human-readable account identifier on the NEAR network. [See the crate-level docs for information about validation.](index.html#account-id-rules) Also see [Error kind precedence](AccountId#error-kind-precedence). ## Examples ``` use near_account_id::AccountId; let alice: AccountId = "alice.near".parse().unwrap(); assert!("ƒelicia.near".parse::<AccountId>().is_err()); // (ƒ is not f) ```
            - `gas_burnt` integer, required
            - `logs` string[], required — Logs from this transaction or receipt.
            - `metadata` ExecutionMetadataView
              - …
            - `receipt_ids` CryptoHash[], required — Receipt IDs generated by this transaction or receipt.
            - `status` union, required
              - …
            - `tokens_burnt` string, required
          - `proof` MerklePathItem[], required
            - `direction` 'Left' | 'Right', required
            - `hash` string, required
        - `final_execution_status` 'NONE' | 'INCLUDED' | 'EXECUTED_OPTIMISTIC' | 'INCLUDED_FINAL' | 'EXECUTED' | 'FINAL', required — How long the RPC should wait before returning a transaction result. Each value waits for a stricter execution milestone than the previous one. Defaults to `EXECUTED_OPTIMISTIC`. - `NONE`: Transaction is waiting to be included into a block. - `INCLUDED`: Transaction is included in a block (block may not be finalized). - `EXECUTED_OPTIMISTIC` (default): Included + all non-refund receipts executed (blocks may not be finalized). - `INCLUDED_FINAL`: Transaction is included in a finalized block. - `EXECUTED`: Included in a finalized block + all non-refund receipts executed. - `FINAL`: Included in a finalized block + all receipts (including refunds) finalized.
      - object
        - `final_execution_status` 'NONE' | 'INCLUDED' | 'EXECUTED_OPTIMISTIC' | 'INCLUDED_FINAL' | 'EXECUTED' | 'FINAL', required — How long the RPC should wait before returning a transaction result. Each value waits for a stricter execution milestone than the previous one. Defaults to `EXECUTED_OPTIMISTIC`. - `NONE`: Transaction is waiting to be included into a block. - `INCLUDED`: Transaction is included in a block (block may not be finalized). - `EXECUTED_OPTIMISTIC` (default): Included + all non-refund receipts executed (blocks may not be finalized). - `INCLUDED_FINAL`: Transaction is included in a finalized block. - `EXECUTED`: Included in a finalized block + all non-refund receipts executed. - `FINAL`: Included in a finalized block + all receipts (including refunds) finalized.
    - `id` string, required
    - `jsonrpc` string, required
  - object
    - `error` union, required
      - object
        - `cause` union, required
          - object
            - `info` object, required
              - …
            - `name` 'METHOD_NOT_FOUND', required
          - object
            - `info` object, required
              - …
            - `name` 'PARSE_ERROR', required
        - `name` 'REQUEST_VALIDATION_ERROR', required
      - object
        - `cause` union, required
          - object
            - `info` object, required
            - `name` 'INVALID_TRANSACTION', required
          - object
            - `name` 'DOES_NOT_TRACK_SHARD', required
          - object
            - `info` object, required
              - …
            - `name` 'REQUEST_ROUTED', required
          - object
            - `info` object, required
              - …
            - `name` 'UNKNOWN_TRANSACTION', required
          - object
            - `info` object, required
              - …
            - `name` 'INTERNAL_ERROR', required
          - object
            - `name` 'TIMEOUT_ERROR', required
        - `name` 'HANDLER_ERROR', required
      - object
        - `cause` InternalError, required
          - `info` object, required
            - `error_message` string, required
          - `name` 'INTERNAL_ERROR', required
        - `name` 'INTERNAL_ERROR', required
    - `id` string, required
    - `jsonrpc` string, required

---

[API](https://skmtc.net/near/apis/near-protocol-json-rpc-api.md) · [All operations](https://skmtc.net/near/apis/near-protocol-json-rpc-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/near/near-protocol-json-rpc-api/versions/cb6bdde6167d/schema)
