Selecting a node through the NIS API

Is there any preferential criteria by which I should select a node? Should I be going for an ‘active’ node with the highest number of ‘syncs’, or perhaps chain height? And what are ‘s’ and ‘f’ under 'experience? Do they denote greater network influence or reliability?

Just trying to order some code to select the best node for that instance. :slight_smile: Thanks!

Most important aspects will be bandwidth, cpu, memory. You can look at the stats for each super node on supernodes.nem.io and choose some well performing ones.

All working nodes should have the same chain height.

I am not sure what you are referring to here.

Thanks Saul. I’m just wondering how I can select a node to connect to programmatically via the API. It mentions the server experience in the API docs here, and you can see those ‘s’ and ‘f’ keys as part of the returned JSON object. Just not sure if they’re worth factoring in when selecting a node.

Ah I see. I am not sure what ‘s’ and ‘f’ refer to.

I’ll ping a developer @BloodyRookie

1 Like

Perhaps it’d just be useful to have the chain height available on the node info endpoint, as I’ve noticed that some nodes that respond to the local active request seem to be older (held back at a fork/update, perhaps?) and so don’t have the latest tx blocks.

Otherwise you’d have to ping each node for its block height, which results in a bit of a delay. For now I’ll stick with a hard-coded node or maybe let the user pick.