Chia RPC (2.3.0)

Download OpenAPI specification:Download

The Chia node and services come with a JSON RPC API server that allows you to access information and control the services. These are accessible via HTTPS, WebSockets, or via client SDKs. The ports can be configured in ~/.chia/mainnet/config/config.yaml. The RPC ports should not be exposed to the internet. TLS certificates are used to secure the communication using mutualTLS. The crawler uses port 8561 by default.

Shared

Methods shared by all services.

Stop the node.

Stop the node.

Authorizations:
bearerAuth
Request Body schema: application/json
required

Empty request body

object

Responses

Request samples

Content type
application/json
{ }

Response samples

Content type
application/json
{
  • "success": true,
  • "error": "string"
}

Add a connection to another node.

Add a connection to another node.

Authorizations:
bearerAuth
Request Body schema: application/json
required

the address of the connection

ip
required
string <ipaddress>
port
required
integer

Responses

Request samples

Content type
application/json
{
  • "ip": "string",
  • "port": 0
}

Response samples

Content type
application/json
{
  • "success": true,
  • "error": "string"
}

Removes a connection.

Removes a connection.

Authorizations:
bearerAuth
Request Body schema: application/json
required

the node id of the connection

node_id
required
string

Responses

Request samples

Content type
application/json
{
  • "node_id": "string"
}

Response samples

Content type
application/json
{
  • "success": true,
  • "error": "string"
}

Retrieve the list of connections.

Retrieve the list of connections.

Authorizations:
bearerAuth
Request Body schema: application/json
required

Empty request body

object

Responses

Request samples

Content type
application/json
{ }

Response samples

Content type
application/json
{
  • "connections": [
    ],
  • "success": true,
  • "error": "string"
}

Heartbeat.

Heartbeat.

Authorizations:
bearerAuth
Request Body schema: application/json
required

Empty request body

object

Responses

Request samples

Content type
application/json
{ }

Response samples

Content type
application/json
{
  • "success": true,
  • "error": "string"
}

Retrieve the list of routes exposed by the service.

Retrieve the list of routes/endpoints exposed by the service.

Authorizations:
bearerAuth
Request Body schema: application/json
required

Empty request body

object

Responses

Request samples

Content type
application/json
{ }

Response samples

Content type
application/json
{
  • "routes": [
    ],
  • "success": true,
  • "error": "string"
}

Retrieves some information about the current network.

Retrieves some information about the current network.

Authorizations:
bearerAuth
Request Body schema: application/json
required

Empty request body

object

Responses

Request samples

Content type
application/json
{ }

Response samples

Content type
application/json
{
  • "network_name": "mainnet",
  • "network_prefix": "xch",
  • "success": true,
  • "error": "string"
}

Crawler

The crawler RPC API is exposed, by default, on port 8561 and contains peer metrics.

Retrieves aggregate information about peers.

Retrieves aggregate information about peers.

Authorizations:
bearerAuth
Request Body schema: application/json
required

Empty request body

object

Responses

Request samples

Content type
application/json
{ }

Response samples

Content type
application/json
{
  • "peer_counts": {
    },
  • "success": true,
  • "error": "string"
}

Retrieves ip addresses of peers that have connected after a given time.

Retrieves ip addresses of peers that have connected after a given time.

Authorizations:
bearerAuth
Request Body schema: application/json
required

Search criteria

after
required
integer <timestamp>

The unix timestamp to search for peer connections after

offset
integer
Default: 0

An offset into the returned items

limit
integer
Default: 10000

The maximum number of result to return

Responses

Request samples

Content type
application/json
{
  • "after": 0,
  • "offset": 0,
  • "limit": 10000
}

Response samples

Content type
application/json
{
  • "ips": [
    ],
  • "total": 0,
  • "success": true,
  • "error": "string"
}