> ## 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.

# Fetch Receipt

> Fetches a receipt by its ID (as is, without a status or execution outcome)



## OpenAPI

````yaml /openapi.json post /EXPERIMENTAL_receipt
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_receipt:
    post:
      summary: Fetch Receipt
      description: >-
        Fetches a receipt by its ID (as is, without a status or execution
        outcome)
      operationId: EXPERIMENTAL_receipt
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/JsonRpcRequest_for_EXPERIMENTAL_receipt'
        required: true
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/JsonRpcResponse_for_RpcReceiptResponse_and_RpcReceiptError
components:
  schemas:
    JsonRpcRequest_for_EXPERIMENTAL_receipt:
      properties:
        id:
          type: string
        jsonrpc:
          type: string
        method:
          enum:
            - EXPERIMENTAL_receipt
          type: string
        params:
          $ref: '#/components/schemas/RpcReceiptRequest'
      required:
        - jsonrpc
        - id
        - params
        - method
      title: JsonRpcRequest_for_EXPERIMENTAL_receipt
      type: object
    JsonRpcResponse_for_RpcReceiptResponse_and_RpcReceiptError:
      oneOf:
        - $ref: >-
            #/components/schemas/JsonRpcResponse_for_RpcReceiptResponse_and_RpcReceiptError_variant0
        - $ref: >-
            #/components/schemas/JsonRpcResponse_for_RpcReceiptResponse_and_RpcReceiptError_variant1
      properties:
        id:
          type: string
        jsonrpc:
          type: string
      required:
        - jsonrpc
        - id
      title: JsonRpcResponse_for_RpcReceiptResponse_and_RpcReceiptError
      type: object
    RpcReceiptRequest:
      properties:
        receipt_id:
          $ref: '#/components/schemas/CryptoHash'
      required:
        - receipt_id
      title: RpcReceiptRequest
      type: object
    JsonRpcResponse_for_RpcReceiptResponse_and_RpcReceiptError_variant0:
      properties:
        result:
          $ref: '#/components/schemas/RpcReceiptResponse'
      required:
        - result
      type: object
    JsonRpcResponse_for_RpcReceiptResponse_and_RpcReceiptError_variant1:
      properties:
        error:
          $ref: '#/components/schemas/ErrorWrapper_for_RpcReceiptError'
      required:
        - error
      type: object
    CryptoHash:
      type: string
    RpcReceiptResponse:
      properties:
        predecessor_id:
          $ref: '#/components/schemas/AccountId'
        priority:
          default: 0
          description: Deprecated, retained for backward compatibility.
          format: uint64
          minimum: 0
          type: integer
        receipt:
          $ref: '#/components/schemas/ReceiptEnumView'
        receipt_id:
          $ref: '#/components/schemas/CryptoHash'
        receiver_id:
          $ref: '#/components/schemas/AccountId'
      required:
        - predecessor_id
        - receiver_id
        - receipt_id
        - receipt
      type: object
    ErrorWrapper_for_RpcReceiptError:
      oneOf:
        - $ref: '#/components/schemas/ErrorWrapper_for_RpcReceiptError_variant0'
        - $ref: '#/components/schemas/ErrorWrapper_for_RpcReceiptError_variant1'
        - $ref: '#/components/schemas/ErrorWrapper_for_RpcReceiptError_variant2'
    AccountId:
      description: >-
        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)

        ```
      title: AccountId
      type: string
    ReceiptEnumView:
      oneOf:
        - $ref: '#/components/schemas/ReceiptEnumView_variant0'
        - $ref: '#/components/schemas/ReceiptEnumView_variant1'
        - $ref: '#/components/schemas/ReceiptEnumView_variant2'
    ErrorWrapper_for_RpcReceiptError_variant0:
      properties:
        cause:
          $ref: '#/components/schemas/RpcRequestValidationErrorKind'
        name:
          enum:
            - REQUEST_VALIDATION_ERROR
          type: string
      required:
        - name
        - cause
      type: object
    ErrorWrapper_for_RpcReceiptError_variant1:
      properties:
        cause:
          $ref: '#/components/schemas/RpcReceiptError'
        name:
          enum:
            - HANDLER_ERROR
          type: string
      required:
        - name
        - cause
      type: object
    ErrorWrapper_for_RpcReceiptError_variant2:
      properties:
        cause:
          $ref: '#/components/schemas/InternalError'
        name:
          enum:
            - INTERNAL_ERROR
          type: string
      required:
        - name
        - cause
      type: object
    ReceiptEnumView_variant0:
      additionalProperties: false
      properties:
        Action:
          properties:
            actions:
              items:
                $ref: '#/components/schemas/ActionView'
              type: array
            gas_price:
              $ref: '#/components/schemas/NearToken'
            input_data_ids:
              items:
                $ref: '#/components/schemas/CryptoHash'
              type: array
            is_promise_yield:
              default: false
              type: boolean
            output_data_receivers:
              items:
                $ref: '#/components/schemas/DataReceiverView'
              type: array
            refund_to:
              anyOf:
                - $ref: '#/components/schemas/AccountId'
                - enum:
                    - null
                  nullable: true
            signer_id:
              $ref: '#/components/schemas/AccountId'
            signer_public_key:
              $ref: '#/components/schemas/PublicKey'
          required:
            - signer_id
            - signer_public_key
            - gas_price
            - output_data_receivers
            - input_data_ids
            - actions
          type: object
      required:
        - Action
      type: object
    ReceiptEnumView_variant1:
      additionalProperties: false
      properties:
        Data:
          properties:
            data:
              default: null
              nullable: true
              type: string
            data_id:
              $ref: '#/components/schemas/CryptoHash'
            is_promise_resume:
              default: false
              type: boolean
          required:
            - data_id
          type: object
      required:
        - Data
      type: object
    ReceiptEnumView_variant2:
      additionalProperties: false
      properties:
        GlobalContractDistribution:
          properties:
            already_delivered_shards:
              items:
                $ref: '#/components/schemas/ShardId'
              type: array
            code:
              type: string
            id:
              $ref: '#/components/schemas/GlobalContractIdentifier'
            nonce:
              format: uint64
              minimum: 0
              nullable: true
              type: integer
            target_shard:
              $ref: '#/components/schemas/ShardId'
          required:
            - id
            - target_shard
            - already_delivered_shards
            - code
          type: object
      required:
        - GlobalContractDistribution
      type: object
    RpcRequestValidationErrorKind:
      oneOf:
        - $ref: '#/components/schemas/RpcRequestValidationErrorKind_variant0'
        - $ref: '#/components/schemas/RpcRequestValidationErrorKind_variant1'
    RpcReceiptError:
      oneOf:
        - $ref: '#/components/schemas/RpcReceiptError_variant0'
        - $ref: '#/components/schemas/RpcReceiptError_variant1'
    InternalError:
      oneOf:
        - $ref: '#/components/schemas/InternalError_variant0'
    ActionView:
      anyOf:
        - $ref: '#/components/schemas/ActionView_variant0'
        - $ref: '#/components/schemas/ActionView_variant1'
        - $ref: '#/components/schemas/ActionView_variant2'
        - $ref: '#/components/schemas/ActionView_variant3'
        - $ref: '#/components/schemas/ActionView_variant4'
        - $ref: '#/components/schemas/ActionView_variant5'
        - $ref: '#/components/schemas/ActionView_variant6'
        - $ref: '#/components/schemas/ActionView_variant7'
        - $ref: '#/components/schemas/ActionView_variant8'
        - $ref: '#/components/schemas/ActionView_variant9'
        - $ref: '#/components/schemas/ActionView_variant10'
        - $ref: '#/components/schemas/ActionView_variant11'
        - $ref: '#/components/schemas/ActionView_variant12'
        - $ref: '#/components/schemas/ActionView_variant13'
        - $ref: '#/components/schemas/ActionView_variant14'
        - $ref: '#/components/schemas/ActionView_variant15'
    NearToken:
      type: string
    DataReceiverView:
      properties:
        data_id:
          $ref: '#/components/schemas/CryptoHash'
        receiver_id:
          $ref: '#/components/schemas/AccountId'
      required:
        - data_id
        - receiver_id
      type: object
    PublicKey:
      type: string
    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
    GlobalContractIdentifier:
      oneOf:
        - $ref: '#/components/schemas/GlobalContractIdentifier_variant0'
        - $ref: '#/components/schemas/GlobalContractIdentifier_variant1'
    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
    RpcReceiptError_variant0:
      properties:
        info:
          properties:
            error_message:
              type: string
          required:
            - error_message
          type: object
        name:
          enum:
            - INTERNAL_ERROR
          type: string
      required:
        - name
        - info
      type: object
    RpcReceiptError_variant1:
      properties:
        info:
          properties:
            receipt_id:
              $ref: '#/components/schemas/CryptoHash'
          required:
            - receipt_id
          type: object
        name:
          enum:
            - UNKNOWN_RECEIPT
          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
    ActionView_variant0:
      enum:
        - CreateAccount
      type: string
    ActionView_variant1:
      additionalProperties: false
      properties:
        DeployContract:
          properties:
            code:
              format: bytes
              type: string
          required:
            - code
          type: object
      required:
        - DeployContract
      type: object
    ActionView_variant2:
      additionalProperties: false
      properties:
        FunctionCall:
          properties:
            args:
              $ref: '#/components/schemas/FunctionArgs'
            deposit:
              $ref: '#/components/schemas/NearToken'
            gas:
              $ref: '#/components/schemas/NearGas'
            method_name:
              type: string
          required:
            - method_name
            - args
            - gas
            - deposit
          type: object
      required:
        - FunctionCall
      type: object
    ActionView_variant3:
      additionalProperties: false
      properties:
        Transfer:
          properties:
            deposit:
              $ref: '#/components/schemas/NearToken'
          required:
            - deposit
          type: object
      required:
        - Transfer
      type: object
    ActionView_variant4:
      additionalProperties: false
      properties:
        Stake:
          properties:
            public_key:
              $ref: '#/components/schemas/PublicKey'
            stake:
              $ref: '#/components/schemas/NearToken'
          required:
            - stake
            - public_key
          type: object
      required:
        - Stake
      type: object
    ActionView_variant5:
      additionalProperties: false
      properties:
        AddKey:
          properties:
            access_key:
              $ref: '#/components/schemas/AccessKeyView'
            public_key:
              $ref: '#/components/schemas/PublicKey'
          required:
            - public_key
            - access_key
          type: object
      required:
        - AddKey
      type: object
    ActionView_variant6:
      additionalProperties: false
      properties:
        DeleteKey:
          properties:
            public_key:
              $ref: '#/components/schemas/PublicKey'
          required:
            - public_key
          type: object
      required:
        - DeleteKey
      type: object
    ActionView_variant7:
      additionalProperties: false
      properties:
        DeleteAccount:
          properties:
            beneficiary_id:
              $ref: '#/components/schemas/AccountId'
          required:
            - beneficiary_id
          type: object
      required:
        - DeleteAccount
      type: object
    ActionView_variant8:
      additionalProperties: false
      properties:
        Delegate:
          properties:
            delegate_action:
              $ref: '#/components/schemas/DelegateAction'
            signature:
              $ref: '#/components/schemas/Signature'
          required:
            - delegate_action
            - signature
          type: object
      required:
        - Delegate
      type: object
    ActionView_variant9:
      additionalProperties: false
      properties:
        DeployGlobalContract:
          properties:
            code:
              format: bytes
              type: string
          required:
            - code
          type: object
      required:
        - DeployGlobalContract
      type: object
    ActionView_variant10:
      additionalProperties: false
      properties:
        DeployGlobalContractByAccountId:
          properties:
            code:
              format: bytes
              type: string
          required:
            - code
          type: object
      required:
        - DeployGlobalContractByAccountId
      type: object
    ActionView_variant11:
      additionalProperties: false
      properties:
        UseGlobalContract:
          properties:
            code_hash:
              $ref: '#/components/schemas/CryptoHash'
          required:
            - code_hash
          type: object
      required:
        - UseGlobalContract
      type: object
    ActionView_variant12:
      additionalProperties: false
      properties:
        UseGlobalContractByAccountId:
          properties:
            account_id:
              $ref: '#/components/schemas/AccountId'
          required:
            - account_id
          type: object
      required:
        - UseGlobalContractByAccountId
      type: object
    ActionView_variant13:
      additionalProperties: false
      properties:
        DeterministicStateInit:
          properties:
            code:
              $ref: '#/components/schemas/GlobalContractIdentifierView'
            data:
              additionalProperties:
                type: string
              type: object
            deposit:
              $ref: '#/components/schemas/NearToken'
          required:
            - code
            - data
            - deposit
          type: object
      required:
        - DeterministicStateInit
      type: object
    ActionView_variant14:
      additionalProperties: false
      properties:
        TransferToGasKey:
          properties:
            deposit:
              $ref: '#/components/schemas/NearToken'
            public_key:
              $ref: '#/components/schemas/PublicKey'
          required:
            - public_key
            - deposit
          type: object
      required:
        - TransferToGasKey
      type: object
    ActionView_variant15:
      additionalProperties: false
      properties:
        WithdrawFromGasKey:
          properties:
            amount:
              $ref: '#/components/schemas/NearToken'
            public_key:
              $ref: '#/components/schemas/PublicKey'
          required:
            - public_key
            - amount
          type: object
      required:
        - WithdrawFromGasKey
      type: object
    GlobalContractIdentifier_variant0:
      additionalProperties: false
      properties:
        CodeHash:
          $ref: '#/components/schemas/CryptoHash'
      required:
        - CodeHash
      type: object
    GlobalContractIdentifier_variant1:
      additionalProperties: false
      properties:
        AccountId:
          $ref: '#/components/schemas/AccountId'
      required:
        - AccountId
      type: object
    FunctionArgs:
      description: >-
        This type is used to mark function arguments.


        NOTE: The main reason for this to exist (except the type-safety) is that
        the value is

        transparently serialized and deserialized as a base64-encoded string
        when serde is used

        (serde_json).
      format: bytes
      type: string
    NearGas:
      format: uint64
      minimum: 0
      type: integer
    AccessKeyView:
      description: Describes access key permission scope and nonce.
      properties:
        nonce:
          format: uint64
          minimum: 0
          type: integer
        permission:
          $ref: '#/components/schemas/AccessKeyPermissionView'
      required:
        - nonce
        - permission
      type: object
    DelegateAction:
      description: >-
        This action allows to execute the inner actions behalf of the defined
        sender.
      properties:
        actions:
          description: >-
            List of actions to be executed.


            With the meta transactions MVP defined in NEP-366, nested

            DelegateActions are not allowed. A separate type is used to enforce
            it.
          items:
            $ref: '#/components/schemas/NonDelegateAction'
          type: array
        max_block_height:
          description: >-
            The maximal height of the block in the blockchain below which the
            given DelegateAction is valid.
          format: uint64
          minimum: 0
          type: integer
        nonce:
          description: |-
            Nonce to ensure that the same delegate action is not sent twice by a
            relayer and should match for given account's `public_key`.
            After this action is processed it will increment.
          format: uint64
          minimum: 0
          type: integer
        public_key:
          allOf:
            - $ref: '#/components/schemas/PublicKey'
          description: Public key used to sign this delegated action.
        receiver_id:
          allOf:
            - $ref: '#/components/schemas/AccountId'
          description: Receiver of the delegated actions.
        sender_id:
          allOf:
            - $ref: '#/components/schemas/AccountId'
          description: Signer of the delegated actions
      required:
        - sender_id
        - receiver_id
        - actions
        - nonce
        - max_block_height
        - public_key
      type: object
    Signature:
      type: string
    GlobalContractIdentifierView:
      oneOf:
        - $ref: '#/components/schemas/GlobalContractIdentifierView_variant0'
        - $ref: '#/components/schemas/GlobalContractIdentifierView_variant1'
    AccessKeyPermissionView:
      description: >-
        Describes the permission scope for an access key. Whether it is a
        function call or a full access key.
      anyOf:
        - $ref: '#/components/schemas/AccessKeyPermissionView_variant0'
        - $ref: '#/components/schemas/AccessKeyPermissionView_variant1'
        - $ref: '#/components/schemas/AccessKeyPermissionView_variant2'
        - $ref: '#/components/schemas/AccessKeyPermissionView_variant3'
    NonDelegateAction:
      description: >-
        An Action that can be included in a transaction or receipt, excluding
        delegate actions. This type represents all possible action types except
        DelegateAction to prevent infinite recursion in meta-transactions.
      oneOf:
        - $ref: '#/components/schemas/NonDelegateAction_variant0'
        - $ref: '#/components/schemas/NonDelegateAction_variant1'
        - $ref: '#/components/schemas/NonDelegateAction_variant2'
        - $ref: '#/components/schemas/NonDelegateAction_variant3'
        - $ref: '#/components/schemas/NonDelegateAction_variant4'
        - $ref: '#/components/schemas/NonDelegateAction_variant5'
        - $ref: '#/components/schemas/NonDelegateAction_variant6'
        - $ref: '#/components/schemas/NonDelegateAction_variant7'
        - $ref: '#/components/schemas/NonDelegateAction_variant8'
        - $ref: '#/components/schemas/NonDelegateAction_variant9'
        - $ref: '#/components/schemas/NonDelegateAction_variant10'
        - $ref: '#/components/schemas/NonDelegateAction_variant11'
        - $ref: '#/components/schemas/NonDelegateAction_variant12'
    GlobalContractIdentifierView_variant0:
      additionalProperties: false
      properties:
        hash:
          $ref: '#/components/schemas/CryptoHash'
      required:
        - hash
      type: object
    GlobalContractIdentifierView_variant1:
      additionalProperties: false
      properties:
        account_id:
          $ref: '#/components/schemas/AccountId'
      required:
        - account_id
      type: object
    AccessKeyPermissionView_variant0:
      enum:
        - FullAccess
      type: string
    AccessKeyPermissionView_variant1:
      additionalProperties: false
      properties:
        FunctionCall:
          properties:
            allowance:
              anyOf:
                - $ref: '#/components/schemas/NearToken'
                - enum:
                    - null
                  nullable: true
            method_names:
              items:
                type: string
              type: array
            receiver_id:
              type: string
          required:
            - receiver_id
            - method_names
          type: object
      required:
        - FunctionCall
      type: object
    AccessKeyPermissionView_variant2:
      additionalProperties: false
      properties:
        GasKeyFunctionCall:
          properties:
            allowance:
              anyOf:
                - $ref: '#/components/schemas/NearToken'
                - enum:
                    - null
                  nullable: true
            balance:
              $ref: '#/components/schemas/NearToken'
            method_names:
              items:
                type: string
              type: array
            num_nonces:
              format: uint16
              maximum: 65535
              minimum: 0
              type: integer
            receiver_id:
              type: string
          required:
            - balance
            - num_nonces
            - receiver_id
            - method_names
          type: object
      required:
        - GasKeyFunctionCall
      type: object
    AccessKeyPermissionView_variant3:
      additionalProperties: false
      properties:
        GasKeyFullAccess:
          properties:
            balance:
              $ref: '#/components/schemas/NearToken'
            num_nonces:
              format: uint16
              maximum: 65535
              minimum: 0
              type: integer
          required:
            - balance
            - num_nonces
          type: object
      required:
        - GasKeyFullAccess
      type: object
    NonDelegateAction_variant0:
      additionalProperties: false
      description: |-
        Create an (sub)account using a transaction `receiver_id` as an ID for
        a new account ID must pass validation rules described here
        <https://nomicon.io/DataStructures/Account>.
      properties:
        CreateAccount:
          $ref: '#/components/schemas/CreateAccountAction'
      required:
        - CreateAccount
      type: object
    NonDelegateAction_variant1:
      additionalProperties: false
      description: Sets a Wasm code to a receiver_id
      properties:
        DeployContract:
          $ref: '#/components/schemas/DeployContractAction'
      required:
        - DeployContract
      type: object
    NonDelegateAction_variant2:
      additionalProperties: false
      properties:
        FunctionCall:
          $ref: '#/components/schemas/FunctionCallAction'
      required:
        - FunctionCall
      type: object
    NonDelegateAction_variant3:
      additionalProperties: false
      properties:
        Transfer:
          $ref: '#/components/schemas/TransferAction'
      required:
        - Transfer
      type: object
    NonDelegateAction_variant4:
      additionalProperties: false
      properties:
        Stake:
          $ref: '#/components/schemas/StakeAction'
      required:
        - Stake
      type: object
    NonDelegateAction_variant5:
      additionalProperties: false
      properties:
        AddKey:
          $ref: '#/components/schemas/AddKeyAction'
      required:
        - AddKey
      type: object
    NonDelegateAction_variant6:
      additionalProperties: false
      properties:
        DeleteKey:
          $ref: '#/components/schemas/DeleteKeyAction'
      required:
        - DeleteKey
      type: object
    NonDelegateAction_variant7:
      additionalProperties: false
      properties:
        DeleteAccount:
          $ref: '#/components/schemas/DeleteAccountAction'
      required:
        - DeleteAccount
      type: object
    NonDelegateAction_variant8:
      additionalProperties: false
      properties:
        DeployGlobalContract:
          $ref: '#/components/schemas/DeployGlobalContractAction'
      required:
        - DeployGlobalContract
      type: object
    NonDelegateAction_variant9:
      additionalProperties: false
      properties:
        UseGlobalContract:
          $ref: '#/components/schemas/UseGlobalContractAction'
      required:
        - UseGlobalContract
      type: object
    NonDelegateAction_variant10:
      additionalProperties: false
      properties:
        DeterministicStateInit:
          $ref: '#/components/schemas/DeterministicStateInitAction'
      required:
        - DeterministicStateInit
      type: object
    NonDelegateAction_variant11:
      additionalProperties: false
      properties:
        TransferToGasKey:
          $ref: '#/components/schemas/TransferToGasKeyAction'
      required:
        - TransferToGasKey
      type: object
    NonDelegateAction_variant12:
      additionalProperties: false
      properties:
        WithdrawFromGasKey:
          $ref: '#/components/schemas/WithdrawFromGasKeyAction'
      required:
        - WithdrawFromGasKey
      type: object
    CreateAccountAction:
      description: Create account action
      type: object
    DeployContractAction:
      description: Deploy contract action
      properties:
        code:
          description: WebAssembly binary
          type: string
      required:
        - code
      type: object
    FunctionCallAction:
      properties:
        args:
          type: string
        deposit:
          $ref: '#/components/schemas/NearToken'
        gas:
          $ref: '#/components/schemas/NearGas'
        method_name:
          type: string
      required:
        - method_name
        - args
        - gas
        - deposit
      type: object
    TransferAction:
      properties:
        deposit:
          $ref: '#/components/schemas/NearToken'
      required:
        - deposit
      type: object
    StakeAction:
      description: An action which stakes signer_id tokens and setup's validator public key
      properties:
        public_key:
          allOf:
            - $ref: '#/components/schemas/PublicKey'
          description: >-
            Validator key which will be used to sign transactions on behalf of
            signer_id
        stake:
          allOf:
            - $ref: '#/components/schemas/NearToken'
          description: Amount of tokens to stake.
      required:
        - stake
        - public_key
      type: object
    AddKeyAction:
      description: An action that adds key with public key associated
      properties:
        access_key:
          allOf:
            - $ref: '#/components/schemas/AccessKey'
          description: An access key with the permission
        public_key:
          allOf:
            - $ref: '#/components/schemas/PublicKey'
          description: A public key which will be associated with an access_key
      required:
        - public_key
        - access_key
      type: object
    DeleteKeyAction:
      properties:
        public_key:
          allOf:
            - $ref: '#/components/schemas/PublicKey'
          description: A public key associated with the access_key to be deleted.
      required:
        - public_key
      type: object
    DeleteAccountAction:
      properties:
        beneficiary_id:
          $ref: '#/components/schemas/AccountId'
      required:
        - beneficiary_id
      type: object
    DeployGlobalContractAction:
      description: Deploy global contract action
      properties:
        code:
          description: WebAssembly binary
          type: string
        deploy_mode:
          $ref: '#/components/schemas/GlobalContractDeployMode'
      required:
        - code
        - deploy_mode
      type: object
    UseGlobalContractAction:
      description: Use global contract action
      properties:
        contract_identifier:
          $ref: '#/components/schemas/GlobalContractIdentifier'
      required:
        - contract_identifier
      type: object
    DeterministicStateInitAction:
      properties:
        deposit:
          $ref: '#/components/schemas/NearToken'
        state_init:
          $ref: '#/components/schemas/DeterministicAccountStateInit'
      required:
        - state_init
        - deposit
      type: object
    TransferToGasKeyAction:
      description: Transfer NEAR to a gas key's balance
      properties:
        deposit:
          allOf:
            - $ref: '#/components/schemas/NearToken'
          description: Amount of NEAR to transfer to the gas key
        public_key:
          allOf:
            - $ref: '#/components/schemas/PublicKey'
          description: The public key of the gas key to fund
      required:
        - public_key
        - deposit
      type: object
    WithdrawFromGasKeyAction:
      description: >-
        Withdraw NEAR from a gas key's balance to the account.


        This action must only be available via transactions, not via contract
        execution

        (there is no corresponding promise batch action host function).
      properties:
        amount:
          allOf:
            - $ref: '#/components/schemas/NearToken'
          description: Amount of NEAR to transfer from the gas key
        public_key:
          allOf:
            - $ref: '#/components/schemas/PublicKey'
          description: The public key of the gas key to withdraw from
      required:
        - public_key
        - amount
      type: object
    AccessKey:
      description: >-
        Access key provides limited access to an account. Each access key
        belongs to some account and

        is identified by a unique (within the account) public key. One account
        may have large number of

        access keys. Access keys allow to act on behalf of the account by
        restricting transactions

        that can be issued.

        `account_id,public_key` is a key in the state
      properties:
        nonce:
          description: >-
            Nonce for this access key, used for tx nonce generation. When access
            key is created, nonce

            is set to `(block_height - 1) * 1e6` to avoid tx hash collision on
            access key re-creation.

            See <https://github.com/near/nearcore/issues/3779> for more details.
          format: uint64
          minimum: 0
          type: integer
        permission:
          allOf:
            - $ref: '#/components/schemas/AccessKeyPermission'
          description: Defines permissions for this access key.
      required:
        - nonce
        - permission
      type: object
    GlobalContractDeployMode:
      oneOf:
        - $ref: '#/components/schemas/GlobalContractDeployMode_variant0'
        - $ref: '#/components/schemas/GlobalContractDeployMode_variant1'
    DeterministicAccountStateInit:
      oneOf:
        - $ref: '#/components/schemas/DeterministicAccountStateInit_variant0'
    AccessKeyPermission:
      description: Defines permissions for AccessKey
      anyOf:
        - $ref: '#/components/schemas/AccessKeyPermission_variant0'
        - $ref: '#/components/schemas/AccessKeyPermission_variant1'
        - $ref: '#/components/schemas/AccessKeyPermission_variant2'
        - $ref: '#/components/schemas/AccessKeyPermission_variant3'
    GlobalContractDeployMode_variant0:
      description: |-
        Contract is deployed under its code hash.
        Users will be able reference it by that hash.
        This effectively makes the contract immutable.
      enum:
        - CodeHash
      type: string
    GlobalContractDeployMode_variant1:
      description: |-
        Contract is deployed under the owner account id.
        Users will be able reference it by that account id.
        This allows the owner to update the contract for all its users.
      enum:
        - AccountId
      type: string
    DeterministicAccountStateInit_variant0:
      additionalProperties: false
      properties:
        V1:
          $ref: '#/components/schemas/DeterministicAccountStateInitV1'
      required:
        - V1
      type: object
    AccessKeyPermission_variant0:
      additionalProperties: false
      properties:
        FunctionCall:
          $ref: '#/components/schemas/FunctionCallPermission'
      required:
        - FunctionCall
      type: object
    AccessKeyPermission_variant1:
      description: |-
        Grants full access to the account.
        NOTE: It's used to replace account-level public keys.
      enum:
        - FullAccess
      type: string
    AccessKeyPermission_variant2:
      additionalProperties: false
      description: >-
        Gas key with limited permission to make transactions with
        FunctionCallActions

        Gas keys are a kind of access keys with a prepaid balance to pay for
        gas.
      properties:
        GasKeyFunctionCall:
          items:
            anyOf:
              - $ref: '#/components/schemas/GasKeyInfo'
              - $ref: '#/components/schemas/FunctionCallPermission'
          maxItems: 2
          minItems: 2
          type: array
      required:
        - GasKeyFunctionCall
      type: object
    AccessKeyPermission_variant3:
      additionalProperties: false
      description: >-
        Gas key with full access to the account.

        Gas keys are a kind of access keys with a prepaid balance to pay for
        gas.
      properties:
        GasKeyFullAccess:
          $ref: '#/components/schemas/GasKeyInfo'
      required:
        - GasKeyFullAccess
      type: object
    DeterministicAccountStateInitV1:
      properties:
        code:
          $ref: '#/components/schemas/GlobalContractIdentifier'
        data:
          additionalProperties:
            type: string
          type: object
      required:
        - code
        - data
      type: object
    FunctionCallPermission:
      description: >-
        Grants limited permission to make transactions with FunctionCallActions

        The permission can limit the allowed balance to be spent on the prepaid
        gas.

        It also restrict the account ID of the receiver for this function call.

        It also can restrict the method name for the allowed function calls.
      properties:
        allowance:
          anyOf:
            - $ref: '#/components/schemas/NearToken'
            - enum:
                - null
              nullable: true
          description: >-
            Allowance is a balance limit to use by this access key to pay for
            function call gas and

            transaction fees. When this access key is used, both account balance
            and the allowance is

            decreased by the same value.

            `None` means unlimited allowance.

            NOTE: To change or increase the allowance, the old access key needs
            to be deleted and a new

            access key should be created.
        method_names:
          description: >-
            A list of method names that can be used. The access key only allows
            transactions with the

            function call of one of the given method names.

            Empty list means any method name can be used.
          items:
            type: string
          type: array
        receiver_id:
          description: >-
            The access key only allows transactions with the given receiver's
            account id.
          type: string
      required:
        - receiver_id
        - method_names
      type: object
    GasKeyInfo:
      properties:
        balance:
          $ref: '#/components/schemas/NearToken'
        num_nonces:
          format: uint16
          maximum: 65535
          minimum: 0
          type: integer
      required:
        - balance
        - num_nonces
      type: object

````