For the complete documentation index, see llms.txt. This page is also available as Markdown.

๐Ÿ” API Access

Your API key can be found at the bottom of the node dashboard page for any of your nodes: https://nodes.presearch.com/dashboard

Node Status API

GET https://nodes.presearch.com/api/nodes/status/:api_key

Return the current status of all your nodes as well as (optionally) aggregated data for those nodes. Notes: * The connected and disconnected parameters cannot both be set to "false". In this case the default (connected only) will be used. * Replace :api_key with your API key. For example: /api/nodes/status/XXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Path Parameters

Name
Type
Description

api_key

string

Your personal Node API key (this can be found at the bottom of the node dashboard page for any of your nodes: https://nodes.presearch.org/dashboard

Query Parameters

Name
Type
Description

public_keys

string

A comma-separated list of node public keys. If this parameter is specified, only those nodes will be returned. This parameter overrides the connected, disconnected, and include_inactive parameters (ie: if the specified nodes are found they will be returned regardless of their current status).

start_date

string

UTC date/time in ANSI format (Y-m-d H:i) - Start of reporting period for any node activity and stats. (Default: 24 hours before current time)

end_date

string

UTC date/time in ANSI format (Y-m-d H:i) - End of reporting period for any node activity and stats. (Default: current time)

stats

boolean

true|false - Whether or not to include aggregated historical stats for the nodes returned. Dates to aggregate between are specified with the start_date and end_date parameters. (Default: false)

connected

boolean

true|false - Currently connected nodes should be included in the returned list (Default: true)

disconnected

boolean

true|false - Currently disconnected nodes should be included in the returned list (Default: true)

include_inactive

boolean

true|false - whether to also include nodes that haven't been active during the specified timeframe set by start_date and end_date (Default: false)

{
    success: true,
    start_at: "2021-01-01T00:00:00Z",
    end_at: "2021-12-31T23:59:59Z",
    nodes: {
        <node public key>: {
            meta: {
                description: "your description",
                url: "your external url",
                server_description: "description provided during connect",
                server_url: "external url provided during connect",
                gateway_pool: "production",
                remote_addr: "127.0.0.1",
                version: "9.9.9"            
            },
            status: {
                connected: true,
                blocked: false,
                in_current_state_since: "2021-01-01T00:00:00Z",
                minutes_in_current_state: 999
            },
            period: {
                period_start_date: "2021-01-01T00:00:00Z",
                period_end_date: "2021-12-31T23:59:59Z",
                period_seconds: 525600,
                connections: {
                    num_connections: 99,
                    most_recent_connection: "2021-01-01T00:00:00Z"
                },
                disconnections: {
                    num_disconnections: 99,
                    most_recent_disconnection: "2021-12-31T23:59:59Z"
                },
                total_uptime_seconds: 999,
                uptime_percentage: 99,
                avg_uptime_score: 99,
                avg_latency_ms: 99,
                avg_latency_score: 99,
                total_requests: 999,
                avg_success_rate: 99,
                avg_success_rate_score: 99,
                avg_reliability_score: 99,
                avg_staked_capacity_percent: 99,
                avg_utilization_percent: 99,
                total_pre_earned: 99.9999
            }
        }
    }
}

API Request Rate Limits:

The node status API enforces the following request rate limits PER NODE to ensure reasonable use of the API by node operators:

Requests without stats (default, stats=false): Up to 4 requests per minute Requests with stats (stats=true): Up to 4 requests per hour

If you request status for any node more frequently than this your API will be temporarily blocked.

Last updated

Was this helpful?