Chainstack Tempo Node API

Chainstack-managed Tempo JSON-RPC nodes (emerging EVM chain).

OpenAPI Specification

chainstack-tempo-node-api-openapi.yml Raw ↑
openapi: 3.0.3
info:
  title: Chainstack Tempo Node API
  version: 1.0.0
  description: Chainstack-managed RPC node API for the Tempo blockchain. Endpoints follow the canonical JSON-RPC over HTTPS
    interface for the network. Authenticate against your Chainstack node's per-node URL (e.g. https://nd-XXX-XXX-XXX.p2pify.com/<key>).
    Merged from the Chainstack Developer Portal per-method fragments at https://github.com/chainstack/dev-portal/tree/main/openapi/tempo_node_api.
  contact:
    name: Chainstack API Support
    email: [email protected]
  license:
    name: Chainstack Terms
    url: https://chainstack.com/terms-of-service/
servers:
- url: https://{node_id}.p2pify.com/{api_key}
  description: Chainstack-managed node endpoint
  variables:
    node_id:
      default: nd-000-000-000
      description: Your Chainstack node identifier
    api_key:
      default: <api-key>
      description: Per-node access key
tags:
- name: Account Info
- name: Blocks Info
- name: Chain Info
- name: Client Info
- name: Debug And Trace
- name: Filter Handling
- name: Gas Data
- name: Logs And Events
- name: Tempo Specific
- name: Transaction Info
- name: Txpool
paths:
  /eth_accounts:
    post:
      tags:
      - Account Info
      summary: Eth_Accounts
      operationId: tempo-eth-accounts
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                jsonrpc:
                  type: string
                  default: '2.0'
                method:
                  type: string
                  default: eth_accounts
                params:
                  type: array
                  items: {}
                  default: []
                  description: Method parameters
                id:
                  type: integer
                  default: 1
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                type: object
                properties:
                  jsonrpc:
                    type: string
                  id:
                    type: integer
                  result:
                    description: Method result
  /eth_getBalance:
    post:
      tags:
      - Account Info
      summary: eth_getBalance
      operationId: tempo-eth-getBalance
      description: Returns a placeholder value on Tempo since there is no native token. To check balances, query TIP-20 token
        contracts using balanceOf.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                jsonrpc:
                  type: string
                  default: '2.0'
                method:
                  type: string
                  default: eth_getBalance
                params:
                  type: array
                  items: {}
                  default:
                  - '0x9729187D9E8Bbefa8295F39f5634cA454dd9d294'
                  - latest
                  description: Address and block parameter
                id:
                  type: integer
                  default: 1
      responses:
        '200':
          description: Placeholder balance value (Tempo has no native token)
          content:
            application/json:
              schema:
                type: object
                properties:
                  jsonrpc:
                    type: string
                  id:
                    type: integer
                  result:
                    type: string
                    description: Returns placeholder value 0x5e5de0bada3a8d... since Tempo has no native token
  /eth_getCode:
    post:
      tags:
      - Account Info
      summary: eth_getCode
      operationId: tempo-eth-getCode
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                jsonrpc:
                  type: string
                  default: '2.0'
                method:
                  type: string
                  default: eth_getCode
                params:
                  type: array
                  items: {}
                  default:
                  - '0x20c0000000000000000000000000000000000000'
                  - latest
                  description: Contract address and block parameter
                id:
                  type: integer
                  default: 1
      responses:
        '200':
          description: The contract bytecode
          content:
            application/json:
              schema:
                type: object
                properties:
                  jsonrpc:
                    type: string
                  id:
                    type: integer
                  result:
                    type: string
                    description: The bytecode at the given address, or 0x if no code exists
  /eth_getProof:
    post:
      tags:
      - Account Info
      summary: eth_getProof
      operationId: tempo-eth-getProof
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                jsonrpc:
                  type: string
                  default: '2.0'
                method:
                  type: string
                  default: eth_getProof
                params:
                  type: array
                  items: {}
                  default:
                  - '0x20c0000000000000000000000000000000000000'
                  - - '0x0'
                  - latest
                  description: Address, storage keys array, and block parameter
                id:
                  type: integer
                  default: 1
      responses:
        '200':
          description: Account and storage proof
          content:
            application/json:
              schema:
                type: object
                properties:
                  jsonrpc:
                    type: string
                  id:
                    type: integer
                  result:
                    type: object
                    description: Proof object with account proof and storage proofs
  /eth_getStorageAt:
    post:
      tags:
      - Account Info
      summary: eth_getStorageAt
      operationId: tempo-eth-getStorageAt
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                jsonrpc:
                  type: string
                  default: '2.0'
                method:
                  type: string
                  default: eth_getStorageAt
                params:
                  type: array
                  items: {}
                  default:
                  - '0x20c0000000000000000000000000000000000000'
                  - '0x0'
                  - latest
                  description: Address, storage position, and block parameter
                id:
                  type: integer
                  default: 1
      responses:
        '200':
          description: The storage value
          content:
            application/json:
              schema:
                type: object
                properties:
                  jsonrpc:
                    type: string
                  id:
                    type: integer
                  result:
                    type: string
                    description: The value at the given storage position
  /eth_getTransactionCount:
    post:
      tags:
      - Account Info
      summary: eth_getTransactionCount
      operationId: tempo-eth-getTransactionCount
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                jsonrpc:
                  type: string
                  default: '2.0'
                method:
                  type: string
                  default: eth_getTransactionCount
                params:
                  type: array
                  items: {}
                  default:
                  - '0x9729187D9E8Bbefa8295F39f5634cA454dd9d294'
                  - latest
                  description: Address and block parameter
                id:
                  type: integer
                  default: 1
      responses:
        '200':
          description: The transaction count (nonce)
          content:
            application/json:
              schema:
                type: object
                properties:
                  jsonrpc:
                    type: string
                  id:
                    type: integer
                  result:
                    type: string
                    description: The number of transactions sent from the address encoded as hexadecimal
  /eth_blockNumber:
    post:
      tags:
      - Blocks Info
      summary: eth_blockNumber
      operationId: tempo-eth-blockNumber
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                jsonrpc:
                  type: string
                  default: '2.0'
                method:
                  type: string
                  default: eth_blockNumber
                params:
                  type: array
                  items: {}
                  default: []
                id:
                  type: integer
                  default: 1
      responses:
        '200':
          description: The block number information
          content:
            application/json:
              schema:
                type: object
                properties:
                  jsonrpc:
                    type: string
                  id:
                    type: integer
                  result:
                    type: string
                    description: The latest block number encoded as hexadecimal
  /eth_getBlockByHash:
    post:
      tags:
      - Blocks Info
      summary: eth_getBlockByHash
      operationId: tempo-eth-getBlockByHash
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                jsonrpc:
                  type: string
                  default: '2.0'
                method:
                  type: string
                  default: eth_getBlockByHash
                params:
                  type: array
                  items: {}
                  default:
                  - '0x1c3830dd03a362ba82e82017a5f4e361c12fc43b64a1e4ebd2902f0c313cad7e'
                  - false
                  description: Block hash and boolean for full transactions
                id:
                  type: integer
                  default: 1
      responses:
        '200':
          description: The block information
          content:
            application/json:
              schema:
                type: object
                properties:
                  jsonrpc:
                    type: string
                  id:
                    type: integer
                  result:
                    type: object
                    nullable: true
                    description: Block object or null if not found
  /eth_getBlockByNumber:
    post:
      tags:
      - Blocks Info
      summary: eth_getBlockByNumber
      operationId: tempo-eth-getBlockByNumber
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                jsonrpc:
                  type: string
                  default: '2.0'
                method:
                  type: string
                  default: eth_getBlockByNumber
                params:
                  type: array
                  items: {}
                  default:
                  - latest
                  - false
                  description: Block number (hex) or tag, and boolean for full transactions
                id:
                  type: integer
                  default: 1
      responses:
        '200':
          description: The block information
          content:
            application/json:
              schema:
                type: object
                properties:
                  jsonrpc:
                    type: string
                  id:
                    type: integer
                  result:
                    type: object
                    nullable: true
                    description: Block object or null if not found
  /eth_getBlockReceipts:
    post:
      tags:
      - Blocks Info
      summary: eth_getBlockReceipts
      operationId: tempo-eth-getBlockReceipts
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                jsonrpc:
                  type: string
                  default: '2.0'
                method:
                  type: string
                  default: eth_getBlockReceipts
                params:
                  type: array
                  items: {}
                  default:
                  - latest
                  description: Block number or tag
                id:
                  type: integer
                  default: 1
      responses:
        '200':
          description: Array of transaction receipts
          content:
            application/json:
              schema:
                type: object
                properties:
                  jsonrpc:
                    type: string
                  id:
                    type: integer
                  result:
                    type: array
                    items:
                      type: object
                    description: Array of receipt objects for all transactions in the block
  /eth_getBlockTransactionCountByHash:
    post:
      tags:
      - Blocks Info
      summary: eth_getBlockTransactionCountByHash
      operationId: tempo-eth-getBlockTransactionCountByHash
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                jsonrpc:
                  type: string
                  default: '2.0'
                method:
                  type: string
                  default: eth_getBlockTransactionCountByHash
                params:
                  type: array
                  items: {}
                  default:
                  - '0x1c3830dd03a362ba82e82017a5f4e361c12fc43b64a1e4ebd2902f0c313cad7e'
                  description: Block hash
                id:
                  type: integer
                  default: 1
      responses:
        '200':
          description: Transaction count in block
          content:
            application/json:
              schema:
                type: object
                properties:
                  jsonrpc:
                    type: string
                  id:
                    type: integer
                  result:
                    type: string
                    description: Number of transactions in the block encoded as hexadecimal
  /eth_getBlockTransactionCountByNumber:
    post:
      tags:
      - Blocks Info
      summary: eth_getBlockTransactionCountByNumber
      operationId: tempo-eth-getBlockTransactionCountByNumber
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                jsonrpc:
                  type: string
                  default: '2.0'
                method:
                  type: string
                  default: eth_getBlockTransactionCountByNumber
                params:
                  type: array
                  items: {}
                  default:
                  - latest
                  description: Block number (hex) or tag
                id:
                  type: integer
                  default: 1
      responses:
        '200':
          description: Transaction count in block
          content:
            application/json:
              schema:
                type: object
                properties:
                  jsonrpc:
                    type: string
                  id:
                    type: integer
                  result:
                    type: string
                    description: Number of transactions in the block encoded as hexadecimal
  /eth_getUncleCountByBlockNumber:
    post:
      tags:
      - Blocks Info
      summary: eth_getUncleCountByBlockNumber
      operationId: tempo-eth-getUncleCountByBlockNumber
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                jsonrpc:
                  type: string
                  default: '2.0'
                method:
                  type: string
                  default: eth_getUncleCountByBlockNumber
                params:
                  type: array
                  items: {}
                  default:
                  - latest
                  description: Method parameters
                id:
                  type: integer
                  default: 1
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                type: object
                properties:
                  jsonrpc:
                    type: string
                  id:
                    type: integer
                  result:
                    description: Method result
  /eth_chainId:
    post:
      tags:
      - Chain Info
      summary: eth_chainId
      operationId: tempo-eth-chainId
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                jsonrpc:
                  type: string
                  default: '2.0'
                method:
                  type: string
                  default: eth_chainId
                params:
                  type: array
                  items: {}
                  default: []
                id:
                  type: integer
                  default: 1
      responses:
        '200':
          description: The chain ID
          content:
            application/json:
              schema:
                type: object
                properties:
                  jsonrpc:
                    type: string
                  id:
                    type: integer
                  result:
                    type: string
                    description: The chain ID encoded as hexadecimal (0xa5bd for Tempo testnet)
  /eth_protocolVersion:
    post:
      tags:
      - Chain Info
      summary: eth_protocolVersion
      operationId: tempo-eth-protocolVersion
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                jsonrpc:
                  type: string
                  default: '2.0'
                method:
                  type: string
                  default: eth_protocolVersion
                params:
                  type: array
                  items: {}
                  default: []
                  description: Method parameters
                id:
                  type: integer
                  default: 1
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                type: object
                properties:
                  jsonrpc:
                    type: string
                  id:
                    type: integer
                  result:
                    description: Method result
  /eth_syncing:
    post:
      tags:
      - Chain Info
      summary: Eth_Syncing
      operationId: tempo-eth-syncing
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                jsonrpc:
                  type: string
                  default: '2.0'
                method:
                  type: string
                  default: eth_syncing
                params:
                  type: array
                  items: {}
                  default: []
                id:
                  type: integer
                  default: 1
      responses:
        '200':
          description: Sync status
          content:
            application/json:
              schema:
                type: object
                properties:
                  jsonrpc:
                    type: string
                  id:
                    type: integer
                  result:
                    oneOf:
                    - type: boolean
                      description: false if the node is not syncing
                    - type: object
                      description: Sync status object if syncing
                      properties:
                        startingBlock:
                          type: string
                        currentBlock:
                          type: string
                        highestBlock:
                          type: string
  /net_listening:
    post:
      tags:
      - Client Info
      summary: Net_Listening
      operationId: tempo-net-listening
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                jsonrpc:
                  type: string
                  default: '2.0'
                method:
                  type: string
                  default: net_listening
                params:
                  type: array
                  items: {}
                  default: []
                id:
                  type: integer
                  default: 1
      responses:
        '200':
          description: Listening status
          content:
            application/json:
              schema:
                type: object
                properties:
                  jsonrpc:
                    type: string
                  id:
                    type: integer
                  result:
                    type: boolean
                    description: true if the client is actively listening for network connections
  /net_peerCount:
    post:
      tags:
      - Client Info
      summary: net_peerCount
      operationId: tempo-net-peerCount
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                jsonrpc:
                  type: string
                  default: '2.0'
                method:
                  type: string
                  default: net_peerCount
                params:
                  type: array
                  items: {}
                  default: []
                id:
                  type: integer
                  default: 1
      responses:
        '200':
          description: The peer count
          content:
            application/json:
              schema:
                type: object
                properties:
                  jsonrpc:
                    type: string
                  id:
                    type: integer
                  result:
                    type: string
                    description: Number of connected peers encoded as hexadecimal
  /net_version:
    post:
      tags:
      - Client Info
      summary: Net_Version
      operationId: tempo-net-version
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                jsonrpc:
                  type: string
                  default: '2.0'
                method:
                  type: string
                  default: net_version
                params:
                  type: array
                  items: {}
                  default: []
                id:
                  type: integer
                  default: 1
      responses:
        '200':
          description: The network ID
          content:
            application/json:
              schema:
                type: object
                properties:
                  jsonrpc:
                    type: string
                  id:
                    type: integer
                  result:
                    type: string
                    description: The network ID (42431 for Tempo Moderato testnet)
  /web3_clientVersion:
    post:
      tags:
      - Client Info
      summary: web3_clientVersion
      operationId: tempo-web3-clientVersion
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                jsonrpc:
                  type: string
                  default: '2.0'
                method:
                  type: string
                  default: web3_clientVersion
                params:
                  type: array
                  items: {}
                  default: []
                id:
                  type: integer
                  default: 1
      responses:
        '200':
          description: The client version
          content:
            application/json:
              schema:
                type: object
                properties:
                  jsonrpc:
                    type: string
                  id:
                    type: integer
                  result:
                    type: string
                    description: The Tempo client version string
  /web3_sha3:
    post:
      tags:
      - Client Info
      summary: Web3_Sha3
      operationId: tempo-web3-sha3
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                jsonrpc:
                  type: string
                  default: '2.0'
                method:
                  type: string
                  default: web3_sha3
                params:
                  type: array
                  items: {}
                  default:
                  - '0x68656c6c6f'
                  description: Data to hash (hex encoded)
                id:
                  type: integer
                  default: 1
      responses:
        '200':
          description: Keccak-256 hash
          content:
            application/json:
              schema:
                type: object
                properties:
                  jsonrpc:
                    type: string
                  id:
                    type: integer
                  result:
                    type: string
                    description: The Keccak-256 hash of the given data
  /debug_getBadBlocks:
    post:
      tags:
      - Debug And Trace
      summary: debug_getBadBlocks
      operationId: tempo-debug-getBadBlocks
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                jsonrpc:
                  type: string
                  default: '2.0'
                method:
                  type: string
                  default: debug_getBadBlocks
                params:
                  type: array
                  items: {}
                  default: []
                  description: Method parameters
                id:
                  type: integer
                  default: 1
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                type: object
                properties:
                  jsonrpc:
                    type: string
                  id:
                    type: integer
                  result:
                    description: Method result
  /debug_getRawBlock:
    post:
      tags:
      - Debug And Trace
      summary: debug_getRawBlock
      operationId: tempo-debug-getRawBlock
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                jsonrpc:
                  type: string
                  default: '2.0'
                method:
                  type: string
                  default: debug_getRawBlock
                params:
                  type: array
                  items: {}
                  default:
                  - latest
                  description: Method parameters
                id:
                  type: integer
                  default: 1
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                type: object
                properties:
                  jsonrpc:
                    type: string
                  id:
                    type: integer
                  result:
                    description: Method result
  /debug_getRawHeader:
    post:
      tags:
      - Debug And Trace
      summary: debug_getRawHeader
      operationId: tempo-debug-getRawHeader
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                jsonrpc:
                  type: string
                  default: '2.0'
                method:
                  type: string
                  default: debug_getRawHeader
                params:
                  type: array
                  items: {}
                  default:
                  - latest
                  description: Method parameters
                id:
                  type: integer
                  default: 1
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                type: object
                properties:
                  jsonrpc:
                    type: string
                  id:
                    type: integer
                  result:
                    description: Method result
  /debug_getRawReceipts:
    post:
      tags:
      - Debug And Trace
      summary: debug_getRawReceipts
      operationId: tempo-debug-getRawReceipts
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                jsonrpc:
                  type: string
                  default: '2.0'
                method:
                  type: string
                  default: debug_getRawReceipts
                params:
                  type: array
                  items: {}
                  default:
                  - latest
                  description: Method parameters
                id:
                  type: integer
                  default: 1
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                type: object
                properties:
                  jsonrpc:
                    type: string
                  id:
                    type: integer
                  result:
                    description: Method result
  /debug_getRawTransaction:
    post:
      tags:
      - Debug And Trace
      summary: debug_getRawTransaction
      operationId: tempo-debug-getRawTransaction
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                jsonrpc:
                  type: string
                  default: '2.0'
                method:
                  type: string
                  default: debug_getRawTransaction
                params:
                  type: array
                  items: {}
                  default:
                  - '0x000000000000000000000

# --- truncated at 32 KB (81 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/chainstack/refs/heads/main/openapi/chainstack-tempo-node-api-openapi.yml