> ## Documentation Index
> Fetch the complete documentation index at: https://docs.near.org/llms.txt
> Use this file to discover all available pages before exploring further.

# Light Client Block Proof

> Returns the proofs for a transaction execution.



## OpenAPI

````yaml /openapi.json post /EXPERIMENTAL_light_client_block_proof
openapi: 3.0.0
info:
  title: NEAR Protocol JSON RPC API
  version: 1.2.3
servers:
  - url: https://rpc.mainnet.near.org
    description: Mainnet
  - url: https://rpc.testnet.near.org
    description: Testnet
security: []
paths:
  /EXPERIMENTAL_light_client_block_proof:
    post:
      summary: Light Client Block Proof
      description: Returns the proofs for a transaction execution.
      operationId: EXPERIMENTAL_light_client_block_proof
      requestBody:
        content:
          application/json:
            schema:
              $ref: >-
                #/components/schemas/JsonRpcRequest_for_EXPERIMENTAL_light_client_block_proof
        required: true
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/JsonRpcResponse_for_RpcLightClientBlockProofResponse_and_RpcLightClientProofError
components:
  schemas:
    JsonRpcRequest_for_EXPERIMENTAL_light_client_block_proof:
      properties:
        id:
          type: string
        jsonrpc:
          type: string
        method:
          enum:
            - EXPERIMENTAL_light_client_block_proof
          type: string
        params:
          $ref: '#/components/schemas/RpcLightClientBlockProofRequest'
      required:
        - jsonrpc
        - id
        - params
        - method
      title: JsonRpcRequest_for_EXPERIMENTAL_light_client_block_proof
      type: object
    JsonRpcResponse_for_RpcLightClientBlockProofResponse_and_RpcLightClientProofError:
      oneOf:
        - $ref: >-
            #/components/schemas/JsonRpcResponse_for_RpcLightClientBlockProofResponse_and_RpcLightClientProofError_variant0
        - $ref: >-
            #/components/schemas/JsonRpcResponse_for_RpcLightClientBlockProofResponse_and_RpcLightClientProofError_variant1
      properties:
        id:
          type: string
        jsonrpc:
          type: string
      required:
        - jsonrpc
        - id
      title: >-
        JsonRpcResponse_for_RpcLightClientBlockProofResponse_and_RpcLightClientProofError
      type: object
    RpcLightClientBlockProofRequest:
      properties:
        block_hash:
          $ref: '#/components/schemas/CryptoHash'
        light_client_head:
          $ref: '#/components/schemas/CryptoHash'
      required:
        - block_hash
        - light_client_head
      title: RpcLightClientBlockProofRequest
      type: object
    JsonRpcResponse_for_RpcLightClientBlockProofResponse_and_RpcLightClientProofError_variant0:
      properties:
        result:
          $ref: '#/components/schemas/RpcLightClientBlockProofResponse'
      required:
        - result
      type: object
    JsonRpcResponse_for_RpcLightClientBlockProofResponse_and_RpcLightClientProofError_variant1:
      properties:
        error:
          $ref: '#/components/schemas/ErrorWrapper_for_RpcLightClientProofError'
      required:
        - error
      type: object
    CryptoHash:
      type: string
    RpcLightClientBlockProofResponse:
      properties:
        block_header_lite:
          $ref: '#/components/schemas/LightClientBlockLiteView'
        block_proof:
          items:
            $ref: '#/components/schemas/MerklePathItem'
          type: array
      required:
        - block_header_lite
        - block_proof
      type: object
    ErrorWrapper_for_RpcLightClientProofError:
      oneOf:
        - $ref: >-
            #/components/schemas/ErrorWrapper_for_RpcLightClientProofError_variant0
        - $ref: >-
            #/components/schemas/ErrorWrapper_for_RpcLightClientProofError_variant1
        - $ref: >-
            #/components/schemas/ErrorWrapper_for_RpcLightClientProofError_variant2
    LightClientBlockLiteView:
      properties:
        inner_lite:
          $ref: '#/components/schemas/BlockHeaderInnerLiteView'
        inner_rest_hash:
          $ref: '#/components/schemas/CryptoHash'
        prev_block_hash:
          $ref: '#/components/schemas/CryptoHash'
      required:
        - prev_block_hash
        - inner_rest_hash
        - inner_lite
      type: object
    MerklePathItem:
      properties:
        direction:
          $ref: '#/components/schemas/Direction'
        hash:
          $ref: '#/components/schemas/CryptoHash'
      required:
        - hash
        - direction
      type: object
    ErrorWrapper_for_RpcLightClientProofError_variant0:
      properties:
        cause:
          $ref: '#/components/schemas/RpcRequestValidationErrorKind'
        name:
          enum:
            - REQUEST_VALIDATION_ERROR
          type: string
      required:
        - name
        - cause
      type: object
    ErrorWrapper_for_RpcLightClientProofError_variant1:
      properties:
        cause:
          $ref: '#/components/schemas/RpcLightClientProofError'
        name:
          enum:
            - HANDLER_ERROR
          type: string
      required:
        - name
        - cause
      type: object
    ErrorWrapper_for_RpcLightClientProofError_variant2:
      properties:
        cause:
          $ref: '#/components/schemas/InternalError'
        name:
          enum:
            - INTERNAL_ERROR
          type: string
      required:
        - name
        - cause
      type: object
    BlockHeaderInnerLiteView:
      description: >-
        A part of a state for the current head of a light client. More info
        [here](https://nomicon.io/ChainSpec/LightClient).
      properties:
        block_merkle_root:
          allOf:
            - $ref: '#/components/schemas/CryptoHash'
          description: The merkle root of all the block hashes
        epoch_id:
          allOf:
            - $ref: '#/components/schemas/CryptoHash'
          description: The epoch to which the block that is the current known head belongs
        height:
          format: uint64
          minimum: 0
          type: integer
        next_bp_hash:
          allOf:
            - $ref: '#/components/schemas/CryptoHash'
          description: The hash of the block producers set for the next epoch
        next_epoch_id:
          allOf:
            - $ref: '#/components/schemas/CryptoHash'
          description: The epoch that will follow the current epoch
        outcome_root:
          $ref: '#/components/schemas/CryptoHash'
        prev_state_root:
          $ref: '#/components/schemas/CryptoHash'
        timestamp:
          description: Legacy json number. Should not be used.
          format: uint64
          minimum: 0
          type: integer
        timestamp_nanosec:
          type: string
      required:
        - height
        - epoch_id
        - next_epoch_id
        - prev_state_root
        - outcome_root
        - timestamp
        - timestamp_nanosec
        - next_bp_hash
        - block_merkle_root
      type: object
    Direction:
      enum:
        - Left
        - Right
      type: string
    RpcRequestValidationErrorKind:
      oneOf:
        - $ref: '#/components/schemas/RpcRequestValidationErrorKind_variant0'
        - $ref: '#/components/schemas/RpcRequestValidationErrorKind_variant1'
    RpcLightClientProofError:
      oneOf:
        - $ref: '#/components/schemas/RpcLightClientProofError_variant0'
        - $ref: '#/components/schemas/RpcLightClientProofError_variant1'
        - $ref: '#/components/schemas/RpcLightClientProofError_variant2'
        - $ref: '#/components/schemas/RpcLightClientProofError_variant3'
        - $ref: '#/components/schemas/RpcLightClientProofError_variant4'
        - $ref: '#/components/schemas/RpcLightClientProofError_variant5'
    InternalError:
      oneOf:
        - $ref: '#/components/schemas/InternalError_variant0'
    RpcRequestValidationErrorKind_variant0:
      properties:
        info:
          properties:
            method_name:
              type: string
          required:
            - method_name
          type: object
        name:
          enum:
            - METHOD_NOT_FOUND
          type: string
      required:
        - name
        - info
      type: object
    RpcRequestValidationErrorKind_variant1:
      properties:
        info:
          properties:
            error_message:
              type: string
          required:
            - error_message
          type: object
        name:
          enum:
            - PARSE_ERROR
          type: string
      required:
        - name
        - info
      type: object
    RpcLightClientProofError_variant0:
      properties:
        info:
          type: object
        name:
          enum:
            - UNKNOWN_BLOCK
          type: string
      required:
        - name
        - info
      type: object
    RpcLightClientProofError_variant1:
      properties:
        info:
          properties:
            execution_outcome_shard_id:
              $ref: '#/components/schemas/ShardId'
            number_or_shards:
              format: uint
              minimum: 0
              type: integer
          required:
            - number_or_shards
            - execution_outcome_shard_id
          type: object
        name:
          enum:
            - INCONSISTENT_STATE
          type: string
      required:
        - name
        - info
      type: object
    RpcLightClientProofError_variant2:
      properties:
        info:
          properties:
            transaction_or_receipt_id:
              $ref: '#/components/schemas/CryptoHash'
          required:
            - transaction_or_receipt_id
          type: object
        name:
          enum:
            - NOT_CONFIRMED
          type: string
      required:
        - name
        - info
      type: object
    RpcLightClientProofError_variant3:
      properties:
        info:
          properties:
            transaction_or_receipt_id:
              $ref: '#/components/schemas/CryptoHash'
          required:
            - transaction_or_receipt_id
          type: object
        name:
          enum:
            - UNKNOWN_TRANSACTION_OR_RECEIPT
          type: string
      required:
        - name
        - info
      type: object
    RpcLightClientProofError_variant4:
      properties:
        info:
          properties:
            shard_id:
              $ref: '#/components/schemas/ShardId'
            transaction_or_receipt_id:
              $ref: '#/components/schemas/CryptoHash'
          required:
            - transaction_or_receipt_id
            - shard_id
          type: object
        name:
          enum:
            - UNAVAILABLE_SHARD
          type: string
      required:
        - name
        - info
      type: object
    RpcLightClientProofError_variant5:
      properties:
        info:
          properties:
            error_message:
              type: string
          required:
            - error_message
          type: object
        name:
          enum:
            - INTERNAL_ERROR
          type: string
      required:
        - name
        - info
      type: object
    InternalError_variant0:
      properties:
        info:
          properties:
            error_message:
              type: string
          required:
            - error_message
          type: object
        name:
          enum:
            - INTERNAL_ERROR
          type: string
      required:
        - name
        - info
      type: object
    ShardId:
      description: >-
        The shard identifier. It may be an arbitrary number - it does not need
        to be

        a number in the range 0..NUM_SHARDS. The shard ids do not need to be

        sequential or contiguous.


        The shard id is wrapped in a new type to prevent the old pattern of
        using

        indices in range 0..NUM_SHARDS and casting to ShardId. Once the
        transition

        if fully complete it potentially may be simplified to a regular type
        alias.
      format: uint64
      minimum: 0
      type: integer

````