Chainstack Tempo Node API
Chainstack-managed Tempo JSON-RPC nodes (emerging EVM chain).
Chainstack-managed Tempo JSON-RPC nodes (emerging EVM chain).
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