TRON RPC 엔드포인트 문서 | ERPC
TRON RPC 엔드포인트 문서
ERPC를 TRON RPC 엔드포인트로 사용하여 HTTP JSON-RPC 요청과 TRON HTTP API를 처리할 수 있습니다. TRON RPC는 Global Edge Blockchain Infrastructure 내에 있는 ERPC의 RPC APIs 중 하나이며, API key는 ERPC Web Dashboard에서 관리할 수 있습니다.
Solana, Ethereum, Avalanche와 동일한 RPC key를 그대로 사용할 수 있습니다.
API key는
api-key 쿼리 매개변수로 전달하거나 Authorization: Bearer <YOUR_API_KEY>로 보내세요. 둘 다 있으면 쿼리 매개변수가 사용됩니다.엔드포인트
JSON-RPC 2.0 요청은 다음 주소로 HTTP POST로 전송합니다.
text
https://edge.erpc.global/tron?api-key=<YOUR_API_KEY>https://edge.erpc.global/tron?api-key=<YOUR_API_KEY>또는 다음 전용 호스트로 전송합니다.
text
https://tron.erpc.global?api-key=<YOUR_API_KEY>https://tron.erpc.global?api-key=<YOUR_API_KEY>전용 호스트에서는
/와 /jsonrpc가 같은 JSON-RPC 엔드포인트로 연결되며, TRON HTTP API는 /wallet/<name> 및 /walletsolidity/<name> 아래에서 제공됩니다. edge.erpc.global에서는 같은 경로에 /tron 접두사가 붙습니다: /tron, /tron/jsonrpc, /tron/wallet/<name>, /tron/walletsolidity/<name>. TRON HTTP API의 POST 본문은 JSON 객체여야 합니다. 그 밖의 경로에는 HTTP 400으로 응답합니다.예시
다음은 API key를 쿼리 매개변수에 넣은 HTTP 요청 예시입니다.
bash
curl 'https://edge.erpc.global/tron?api-key=<YOUR_API_KEY>' --header 'Content-Type: application/json' --data '{
"jsonrpc":"2.0","id":1,
"method":"eth_blockNumber"
}'curl 'https://edge.erpc.global/tron?api-key=<YOUR_API_KEY>' --header 'Content-Type: application/json' --data '{
"jsonrpc":"2.0","id":1,
"method":"eth_blockNumber"
}'다음은 API key를
Authorization 헤더에 넣어 같은 요청을 보내는 예시입니다.bash
curl 'https://edge.erpc.global/tron' --header 'Content-Type: application/json' --header 'Authorization: Bearer <YOUR_API_KEY>' --data '{
"jsonrpc":"2.0","id":1,
"method":"eth_blockNumber"
}'curl 'https://edge.erpc.global/tron' --header 'Content-Type: application/json' --header 'Authorization: Bearer <YOUR_API_KEY>' --data '{
"jsonrpc":"2.0","id":1,
"method":"eth_blockNumber"
}'다음은 TRON HTTP API 예시입니다.
bash
curl 'https://edge.erpc.global/tron/wallet/getnowblock?api-key=<YOUR_API_KEY>' --header 'Content-Type: application/json' --data '{}'curl 'https://edge.erpc.global/tron/wallet/getnowblock?api-key=<YOUR_API_KEY>' --header 'Content-Type: application/json' --data '{}'API key는 ERPC Web Dashboard에서 발급받고 확인할 수 있습니다.
배치 요청
HTTP 요청당 1~100개 호출의 JSON-RPC 배치를 지원합니다. 각 호출에는 고유한
id가 필요하며, 배치 내에서 id 값이 중복되면 안 됩니다. 배치 내 각 호출은 개별 호출로 계량됩니다. 요청 본문은 최대 1 MiB까지 보낼 수 있습니다. 배치는 /jsonrpc로 보냅니다. TRON HTTP API 요청 하나에는 호출 하나가 담기며, 호출 1회로 계량됩니다.사용량 측정
사용량은 token 단위로 계량되며, token 요금은 메서드에 따라 다를 수 있습니다. HTTP 배치 내 각 호출은 개별적으로 계량됩니다. 각 TRON HTTP API 요청은 호출 1회로 계량됩니다.
Free 요금제 제한
Free 요금제에서는 사용자의 계정이 10초당 요청 한 건을 보낼 수 있습니다. 이 제한은 엔드포인트별이 아니라 계정별로 집계되므로, 다른 체인으로 보낸 요청도 집계에 포함될 수 있습니다. 그보다 빨리 보낸 요청에는 HTTP
429로 응답하며, retry-after 헤더가 대기할 시간(초)을 알려 줍니다.Free 요금제에서는 JSON-RPC 호출을 두 개 이상 담은 요청에 HTTP
429로 응답하며, 그 요청의 호출은 하나도 전송되지 않습니다. 각 호출은 코드 -32041의 JSON-RPC 오류를 받습니다. 대신 이 호출들을 하나씩 보내세요.지원 메서드
이 엔드포인트는 다음 38개의 메서드를 제공합니다.
eth_*, net_*, web3_* 메서드는 / 또는 /jsonrpc로 보내는 JSON-RPC 호출입니다. /wallet/* 및 /walletsolidity/* 항목은 TRON HTTP API 경로이며, POST 본문에 JSON 객체를 담아 호출합니다.eth_*(19):eth_blockNumber,eth_call,eth_chainId,eth_estimateGas,eth_gasPrice,eth_getBalance,eth_getBlockByHash,eth_getBlockByNumber,eth_getBlockReceipts,eth_getBlockTransactionCountByHash,eth_getBlockTransactionCountByNumber,eth_getCode,eth_getLogs,eth_getStorageAt,eth_getTransactionByBlockHashAndIndex,eth_getTransactionByBlockNumberAndIndex,eth_getTransactionByHash,eth_getTransactionReceipt,eth_syncingnet_*(3):net_listening,net_peerCount,net_versionweb3_*(2):web3_clientVersion,web3_sha3/wallet/*(9):/wallet/broadcasthex,/wallet/broadcasttransaction,/wallet/estimateenergy,/wallet/getaccount,/wallet/getblockbynum,/wallet/getnowblock,/wallet/gettransactionbyid,/wallet/gettransactioninfobyid,/wallet/triggerconstantcontract/walletsolidity/*(5):/walletsolidity/getaccount,/walletsolidity/getblockbynum,/walletsolidity/getnowblock,/walletsolidity/gettransactionbyid,/walletsolidity/gettransactioninfobyid
목록에 없는 메서드 또는 경로에는 HTTP
400으로 응답합니다.응답 상태 코드
| HTTP 상태 | 의미 |
|---|---|
| 200 | 업스트림 JSON-RPC 응답. JSON-RPC 오류도 HTTP 200으로 반환됨. 요청의 id와 error.code는 유지되고, error.message는 ERPC upstream error이며, error.data는 반환되지 않음 |
| 400 | 지원 메서드 목록에 없는 메서드 또는 경로, 잘못된 JSON-RPC 요청, 빈 배치 또는 100개를 초과하는 배치, 배치 내 중복된 id, 1 MiB를 초과하는 본문 |
| 401 | API key가 없거나 유효하지 않거나, key에 설정된 IP 또는 Origin 제한을 충족하지 않음 |
| 405 | POST 이외의 요청 메서드 |
| 426 | WebSocket Upgrade가 요청됨. 이 엔드포인트는 HTTP만 지원함 |
| 429 | 속도 제한됨. 위의 Free 요금제 제한(10초당 요청 한 건 초과, 또는 한 요청에 호출 두 개 이상)도 포함됨. retry-after 헤더가 있으면 표시된 시간(초)만큼 대기 |
| 502 | 업스트림 요청을 완료할 수 없음: 업스트림 응답 실패, 8 MiB를 초과하는 응답, 또는 30초 이내 무응답. TRON HTTP API 응답이 실패를 나타내는 경우에도 502로 응답함 |
| 503 | 서비스를 일시적으로 사용할 수 없음 |
TRON RPC method 및 문서
표준 method, 매개변수, 사양의 전체 목록은 공식 문서를 참고하세요.






