## Overview
The [[ZKP/ZKP Testnet/Overview|ZKP Testnet]] supports the standard **Substrate JSON-RPC** interface as well as Ethereum-compatible RPC methods (via the [[EVM Integration|EVM]] pallet).
This allows developers to:
- Query blocks and chain state
- Check account balances
- Send transactions
- [[Smart Contract Example - Hello World on ZKP|Interact with smart contracts]]
π **RPC Endpoint:**
```
https://rpc.testnet.zkp.com
```
Full Substrate RPC reference: [Polkadot.js RPC Docs](https://polkadot.js.org/docs/substrate/rpc/)
β οΈ Note: Some RPC namespaces listed in the official docs may not be active in the ZKP Testnet.
---
## Quick Start
Verify the connection to the testnet by calling the latest block:
```bash
curl -H "Content-Type: application/json" \
-d '{"id":1, "jsonrpc":"2.0", "method":"chain_getBlock", "params":[]}' \
https://rpc.testnet.zkp.com
```
Example response:
```json
{
"jsonrpc": "2.0",
"result": {
"block": {
"header": {
"number": "0x12345",
"parentHash": "0x...",
"stateRoot": "0x...",
"extrinsicsRoot": "0x..."
},
"extrinsics": ["0x..."]
}
},
"id": 1
}
```
---
## Stable Methods in ZKP Testnet
**System**
- `system_health` β Node health status
- `system_chain` β Network name
- `system_version` β Client version
**Chain**
- `chain_getBlock` β Retrieve block
- `chain_getBlockHash` β Block hash by number
- `chain_getHeader` β Block header
**Author (Transactions)**
- `author_submitExtrinsic` β Submit transaction
**Ethereum RPC (EVM compatibility)**
- `eth_blockNumber` β Current block number
- `eth_getBalance` β Account balance
- `eth_sendRawTransaction` β Send signed transaction
---
## Notes
- For the **complete list of methods**, see the [Polkadot.js RPC Reference](https://polkadot.js.org/docs/substrate/rpc/).
- Some methods are only available with specific node flags (*unsafe*).
See also: [[Testnet Limitations]]