This guide is the partner path for the public testnet. Start read-only, verify the live network identity, then use a small funded transfer before any node or validator work.
What you need
- A browser wallet path through
https://app.rp.one curlandjqfor the read-only network checks- Access to the public endpoints below
- A testnet-only recipient address with the
rp1prefix - A funded testnet address; the first-transaction guide owns the current faucet and operator-funding path
Do not use production mnemonics, production keys, or mainnet assumptions on this network.
1. Public testnet endpoints
The public RP1 testnet reference is:
| Surface | Endpoint |
|---|---|
| RPC | https://testnet.rpc.rp.one |
| REST | https://testnet.rest.rp.one |
| gRPC authority | testnet.grpc.rp.one — use the release-published port, TLS, and authority settings; no plaintext default is implied. |
| EVM JSON-RPC | https://testnet.evm.rp.one |
| Chain ID | chain-1 |
| Native denom | urp1 |
| Address prefix | rp1 |
| Wallet | https://app.rp.one |
| Explorer | https://testnetexplorer.rp.one |
| Docs | https://docs.rp.one |
One RP1 is 1,000,000 urp1. Treat the endpoint set, chain ID, and accepted gas settings as network configuration, not constants to hard-code across environments.
The faucet must stay server-side. Never place a faucet mnemonic or private key in a browser bundle, mobile app binary, or public repository.
2. Verify the live network
Before signing anything, confirm the RPC endpoint is the network you intend to use.
curl -fsS https://testnet.rpc.rp.one/status | jq '{
network: .node_info.network,
height: .sync_info.latest_block_height,
catching_up: .sync_info.catching_up,
peers: .consensus_metrics.connected_peers
}'Expect:
| Check | Expected |
|---|---|
| Network / chain ID | chain-1 |
| Catching up | false for a healthy public endpoint |
| Height | Positive and advancing over time |
| Peers | Greater than zero on a live multi-validator network |
Also confirm REST is alive:
curl -fsS 'https://testnet.rest.rp.one/cosmos/bank/v1beta1/supply?pagination.limit=5'If the returned network is not chain-1, stop. Do not sign against an old example chain ID such as a stale local or historical identifier.
3. Choose a client path
Hosted wallet
- Open
https://app.rp.one/wallet. - Import or connect a testnet wallet.
- Confirm the UI shows chain
chain-1and a live height. - Fund the address through the current path in Send a first transaction.
- Send a small transfer and open the resulting hash in
https://testnetexplorer.rp.one.
Public APIs
Use the API overview for read-only RPC, REST, gRPC, and EVM access. Check the TypeScript SDK guide for its current package availability before choosing it for an integration.
Follow Send a first transaction for the hosted-wallet path. Never place a real mnemonic in source control, shell history, documentation, or a browser bundle.
4. Fund and observe a first transfer
- Fund the sender through the first-transaction guide.
- Send a small display-unit amount, for example
0.000001 RP1(1urp1). - Keep the transaction hash.
- Confirm the transfer through at least one independent path:
- explorer transaction page
- REST
cosmos/tx/v1beta1/txs/{hash} - RPC transaction query for the same hash
A broadcast acknowledgement is not the same as committed observation. Treat the transfer as complete only when the same hash is observed at a positive height with execution code zero.
5. Operator and validator next steps
Client connectivity and validator joining are different jobs.
| Goal | Guide |
|---|---|
| Keep using public RPC/REST/EVM | Stay on this page and the network reference |
| Run a non-voting read node | Run an observer |
| Join the live validator set | Join the testnet as a validator |
| Local-only development chain | Testnet operations |
Partners do not need the full chain source tree to evaluate the public testnet. For node work, follow the software-status, bootstrap, and admission steps in the validator join guide.