Nodeos Net API

For API request, it needs to perform a POST line with required parameters. The manual presents examples of requests using curl. Return code 201 indicates successful operation.

Producer API requests supported:

connect

The request initiates a connection to a specified peer.

Params:

  • (string) endpoint — The endpoint to connect to expressed as either IP address or URL.

Request example:

curl --request POST --data '{"endpoint": "string"}' http://<node>/v1/net/connect

Responses

Code: 201 OK

Value:

{
"added connection" // Otherwise "already connected" if the connection was already initiated before
}

disconnect

The request initiates disconnection from a specified peer.

Params:

  • (string) endpoint — The endpoint to disconnect from, expressed as either IP address or URL.

Request example:

curl --request POST --data '{"endpoint": "string"}' http://<node>/v1/net/disconnect

Responses

Code: 201 OK

Value:

{
"connection removed" // Otherwise "no known connection for host" if no connection was initiated to the peer
}

status

The request retreives the connection status for a specified peer.

Params:

  • (string) endpoint — The endpoint to get the status for, to expressed as either IP address or URL.

Request example:

curl --request POST --data '{"endpoint": "string"}' http://<node>/v1/net/status

Responses

Code: 201 OK

Value:

{
"peer": "string", // The IP address or URL of the peer
"connecting": true, // "true" if the peer is connecting, otherwise "false"
"syncing": true, // "true" if the peer is syncing, otherwise "false"
"last_handshake": { // Structure holding detailed information about the connection
"network_version": 0, // Incremental value above a computed base. Defaults to "0"
"chain_id": "string", // Chain ID. Used to identify chain (sha256)
"node_id": "string", // Node ID. Used to identify peers and prevent self-connect (sha256)
"key": "string", // Authentication public key
"time": "string", // Date/time in the format (YYYY-MM-DDTHH:MM:SS.sss)
"token": "string", // Digest of time to prove we own the private key of the key above (sha256)
"sig": "string", // Signature for the digest
"p2p_address": "string", // Address of the peer (IP address or URL)
"last_irreversible_block_num": 0, // Last irreversible block number. Defaults to "0"
"last_irreversible_block_id": "string", // Last irreversible block ID (sha256)
"head_num": 0, // Head number. Defaults to "0"
"head_id": "string", // Head ID (sha256)
"os": "string", // Operating system name
"agent": "string", // Agent name
"generation": 0, // Generation number
"considers_gray": // Considers gray. Optional field. Defaults to "false".
}
}

connections

The request returns an array of all peer connection statuses.

Params: No params required.

Request example:

curl --request POST --data '' http://<node>/v1/net/connections

Responses

Code: 201 OK

Value:

[
{
"peer": "string", // The IP address or URL of the peer
"connecting": true, // "true" if the peer is connecting, otherwise "false"
"syncing": true, // "true" if the peer is syncing, otherwise "false"
"last_handshake": { // Structure holding detailed information about the connection
...
}
}
{...}
]