> For the complete documentation index, see [llms.txt](https://docs.catfee.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.catfee.io/en/getting-started/tron-node-guide.md).

# TRON Node Connection Guide

CatFee provides high-performance TRON node infrastructure for developers, wallets, exchanges, DApps, and on-chain service providers.

With CatFee TRON nodes, you can connect to the TRON network through **secure gRPC over TLS**, using standard TRON protocol interfaces with low latency, high availability, and simple API-key authentication.

***

### Overview

CatFee TRON nodes are designed for production-grade access to the TRON network.

Our service supports:

```
Secure gRPC over HTTP/2
TLS-encrypted connections
Standard TRON wallet and walletSolidity services
API-key authentication
Low-latency access across Asia and global regions
High availability with backend load balancing
```

All CatFee TRON nodes are accessed through the `*.catblockchain.com` domain system and use port `443` by default.

***

### Node Endpoint

After purchasing a TRON node package, you can find your node endpoint and API key in the CatFee dashboard:

```
TRON Node → Package
```

A typical node endpoint looks like this:

```
tron-demo-yourNodeId.catblockchain.com
```

Connection information:

| Item                  | Value                                    |
| --------------------- | ---------------------------------------- |
| Host                  | `tron-demo-yourNodeId.catblockchain.com` |
| Port                  | `443`                                    |
| Protocol              | `gRPC over TLS`                          |
| Transport             | `HTTP/2`                                 |
| Authentication Header | `X-CATFEE-TOKEN: YOUR_API_KEY`           |
| Supported Services    | `wallet`, `walletSolidity`               |

***

### Authentication

Every request to a CatFee TRON node must include your CatFee node API key.

Use the following request header:

```
X-CATFEE-TOKEN: YOUR_API_KEY
```

Replace `YOUR_API_KEY` with the key assigned to your node package.

***

### Supported TRON Services

CatFee supports standard TRON gRPC services.

| Service          | Description                                                                                           |
| ---------------- | ----------------------------------------------------------------------------------------------------- |
| `wallet`         | Used for real-time data, transaction creation, broadcasting, and querying unconfirmed or latest state |
| `walletSolidity` | Used for confirmed block data and finalized on-chain records                                          |

In general:

```
Use wallet for creating, broadcasting, and querying real-time transactions.
Use walletSolidity for confirmed block data and historical records.
```

Both services are available through the same node host and port.

***

### Security and TLS Requirements

CatFee nodes only accept encrypted connections.

Your client must use:

```
gRPC over HTTP/2
TLS v1.2 or TLS v1.3
Port 443
```

Plain-text gRPC connections are not supported.

Do not use insecure gRPC options such as:

```
createInsecure()
secure=False
plaintext=True
```

CatFee nodes use valid CA-issued certificates, so most clients can rely on the system default trust store. No self-signed certificate is required.

***

### Client Configuration Recommendations

For best stability, we recommend the following client settings:

| Setting        | Recommendation                            |
| -------------- | ----------------------------------------- |
| TLS            | Enabled                                   |
| HTTP/2         | Enabled                                   |
| Timeout        | 5–10 seconds                              |
| Authentication | Pass `X-CATFEE-TOKEN` in request metadata |
| Retry Strategy | Use controlled retries with backoff       |
| Concurrency    | Keep within your package quota            |

If your request rate exceeds your plan limit, the node may return:

```
HTTP 429
```

This means the request rate is too high. Reduce concurrency or upgrade your package.

***

## cURL Example

CatFee TRON nodes use **gRPC over HTTP/2 + TLS**, not a REST JSON API.

This means `curl` can be used to test connectivity, but the response body will be **protobuf binary data**, not readable JSON.

The following example calls:

```
protocol.Wallet/GetNowBlock
```

This method uses an empty request body.

***

### Test `GetNowBlock` with cURL

Replace the following placeholders:

```
YOUR_NODE_HOST = your CatFee TRON node domain
YOUR_API_KEY   = your CatFee node API key
```

Run:

```bash
printf '\x00\x00\x00\x00\x00' | curl --http2 -v \
  -X POST "https://YOUR_NODE_HOST/protocol.Wallet/GetNowBlock" \
  -H "Content-Type: application/grpc" \
  -H "TE: trailers" \
  -H "X-CATFEE-TOKEN: YOUR_API_KEY" \
  --data-binary @- \
  --output getnowblock.bin
```

Example using the CatFee node domain format:

```bash
printf '\x00\x00\x00\x00\x00' | curl --http2 -v \
  -X POST "https://tron-demo-yourNodeId.catblockchain.com/protocol.Wallet/GetNowBlock" \
  -H "Content-Type: application/grpc" \
  -H "TE: trailers" \
  -H "X-CATFEE-TOKEN: YOUR_API_KEY" \
  --data-binary @- \
  --output getnowblock.bin
```

If the request is successful, you should see a response similar to:

```
< HTTP/2 200
< content-type: application/grpc
< grpc-status: 0
```

The response will be saved to:

```bash
getnowblock.bin
```

Because this is a protobuf binary response, it cannot be read directly as JSON with `cat`.

***

### Why the Request Body Is `\x00\x00\x00\x00\x00`

gRPC messages include a 5-byte frame header:

```
1 byte  : compression flag
4 bytes : message length
```

For an empty request body, the gRPC frame is:

```
00 00 00 00 00
```

That is why the example uses:

```bash
printf '\x00\x00\x00\x00\x00'
```

This works for gRPC methods such as `GetNowBlock`, which do not require request parameters.

***

## Recommended Tool: grpcurl

For development and debugging, CatFee recommends using `grpcurl` when you want readable output.

Example:

```bash
grpcurl \
  -H "X-CATFEE-TOKEN: YOUR_API_KEY" \
  -d '{}' \
  YOUR_NODE_HOST:443 \
  protocol.Wallet/GetNowBlock
```

If server reflection is not enabled, provide the official TRON `.proto` files locally:

```bash
grpcurl \
  -proto api/api.proto \
  -proto core/Tron.proto \
  -H "X-CATFEE-TOKEN: YOUR_API_KEY" \
  -d '{}' \
  YOUR_NODE_HOST:443 \
  protocol.Wallet/GetNowBlock
```

***

## Common TRON gRPC Interfaces

CatFee TRON nodes support standard TRON gRPC interfaces, including but not limited to:

```
GetAccount
GetTransactionById
CreateTransaction
BroadcastTransaction
TriggerSmartContract
GetNowBlock
GetBlockByNum
```

You can use CatFee nodes with existing TRON-compatible SDKs, services, and backend systems.

***

## Performance and Limits

| Item                   | Description                            |
| ---------------------- | -------------------------------------- |
| Protocol               | gRPC over TLS / HTTP/2                 |
| Port                   | `443`                                  |
| Authentication         | `X-CATFEE-TOKEN`                       |
| Standard Package Limit | Default `20 req/s`                     |
| Latency                | Average latency under `100 ms` in Asia |
| Availability           | Load-balanced backend infrastructure   |
| Confirmed Data         | Available through `walletSolidity`     |

For higher concurrency, enterprise access, private deployment, or custom security requirements, contact the CatFee team.

***

## FAQ

### Does CatFee support plain-text gRPC?

No.

For security reasons, CatFee only supports encrypted gRPC connections over TLS. Plain-text gRPC connections will be rejected.

***

### Do I need a custom certificate?

No.

CatFee nodes use standard CA-issued certificates. In most cases, your client can use the system default certificate trust store.

***

### What is the difference between `wallet` and `walletSolidity`?

`wallet` provides access to real-time TRON node data. It is commonly used for creating transactions, broadcasting transactions, and querying latest or unconfirmed state.

`walletSolidity` provides confirmed on-chain data. It is commonly used for stable block data, historical transaction records, and finalized state queries.

***

### What does HTTP 429 mean?

HTTP `429` means your request rate has exceeded your current package quota.

You can resolve this by:

```
Reducing request concurrency
Adding retry and backoff logic
Upgrading your CatFee node package
```

***

### Does CatFee support mutual TLS or IP whitelist access?

By default, CatFee uses one-way TLS.

For enterprise customers, CatFee can provide custom security configurations, including mutual TLS, IP whitelist access, and dedicated infrastructure.

***

### Does CatFee support high availability?

Yes.

CatFee node domains under `*.catblockchain.com` are backed by multiple backend instances with automatic load balancing and redundancy.

***

## Technical Support

For integration support, enterprise packages, higher request limits, or custom security requirements, contact CatFee:

```
Telegram Support: @CatFee_James
Official Website: https://catfee.io
TRON Node Page: https://catfee.io/blockchain/tron-node
```

***

## Summary

CatFee TRON nodes provide secure, stable, and production-ready access to the TRON network.

With CatFee, developers get:

```
Secure TLS-encrypted gRPC access
Standard TRON protocol compatibility
Simple API-key authentication
Low-latency node connectivity
Load-balanced high availability
Enterprise-ready scalability
```

Start building on TRON with CatFee’s reliable node infrastructure.
