> ## Documentation Index
> Fetch the complete documentation index at: https://docs.soo.network/llms.txt
> Use this file to discover all available pages before exploring further.

# Overview

> SOON nodes accept HTTP requests using the JSON-RPC 2.0 specification.

For JavaScript applications, use the SOON JavaScript SDK as a convenient interface for the RPC methods to interact with a SOON node. For a PubSub connection to a SOON node, use the WebSocket API.

## RPC HTTP Endpoint

# RPC Endpoints

**Testnet**

* [`https://rpc.testnet.soo.network/rpc`](https://rpc.testnet.soo.network/rpc)

**Local Development**

* `http://localhost:9900`

* [`http://192.168.1.88:9900`](http://192.168.1.88:9900)

## Request Formatting

To make a JSON-RPC request, send an HTTP POST request with a `Content-Type: application/json` header. The JSON request data should contain 4 fields:

* `jsonrpc: <string>` - set to `"2.0"`

* `id: <string | number | null>` - a unique identifier for the request, generated by the client

* `method: <string>` - a string containing the method to be invoked

* `params: <array>` - a JSON array of ordered parameter values

Example using curl:

```bash theme={"system"}
curl https://rpc.testnet.soo.network/rpc -X POST -H "Content-Type: application/json" -d '
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "getBalance",
  "params": [
    "6dRnxBGavrfCyKRwfkdwBWxVwwBpwx4ZJpca6K5bbLYo"
  ]
}
'
```

The response output will be a JSON object with the following fields:

* `jsonrpc: <string>` - matching the request specification

* `id: <number>` - matching the request identifier

* `result: <array|number|object|string>` - requested data or success confirmation

Requests can be sent in batches by sending an array of JSON-RPC request objects as the data for a single POST.

## Example Request

The timestamp parameter can be included as the last element in the `params` array:

```bash theme={"system"}
curl https://rpc.testnet.soo.network/rpc -X POST -H "Content-Type: application/json" -d '
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "getBalance",
  "params": [
    "6dRnxBGavrfCyKRwfkdwBWxVwwBpwx4ZJpca6K5bbLYo",
    {
      "timestamp": 1734670442
    }
  ]
}'

```
