Skip to content

stakestar/startracker

Repository files navigation

header

StarTracker - SSV Operators Nodes Tracker

StarTracker is a geo-tracking tool designed for the SSV network. To ensure easy maintenance, StarTracker relies on the code of ssv core node for discovery purposes.

StarTracker continuously discovers peers within the network and utilizes maxminddb-golang to obtain the location from IP addresses.

Free public API

https://api.startracker.network/api/nodes

Please use our public API responsibly. We provide this service for free and open-source projects, and we want to make sure it remains available to everyone.

Build

docker build -t stakestar/startracker:latest .

Run

Using docker

docker run stakestar/startracker --db-path=data/nodes.db --geodb-path=GeoLite2-City.mmdb

Or using docker compose

docker compose up -d

API Interface

Get all nodes

GET /api/nodes

{
    "metadata": {
        "count": 111
    },
    "nodes": [
        {
            "updated_at": "2023-03-09T11:47:55.513863822Z",
            "geo_data": {
                "country_code": "HK",
                "country_name": "Hong Kong",
                "city": "",
                "latitude": 22.2578,
                "longitude": 114.1657,
                "accuracy_radius": 1000
            },
            "node_version": "v0.4.0",
            "operator_id": "008237da4cab519e86c166ed02e5ea1cd54206722f648b239b74843b15327bac"
        },
        ...
    ]
}

Get node by Operator PubKey

GET /api/nodes/pubkey/{pubkey}

{
    "updated_at": "2023-03-09T11:08:36.640389198Z",
    "geo_data": {
        "country_code": "DE",
        "country_name": "Germany",
        "city": "Frankfurt am Main",
        "latitude": 50.1188,
        "longitude": 8.6843,
        "accuracy_radius": 1000
    },
    "node_version": "v0.4.0",
    "operator_id": "19"
}

Get node by Operator ID

GET /api/nodes/operatorid/{operatorid}

{
    "updated_at": "2023-03-09T11:08:36.640389198Z",
    "geo_data": {
        "country_code": "DE",
        "country_name": "Germany",
        "city": "Frankfurt am Main",
        "latitude": 50.1188,
        "longitude": 8.6843,
        "accuracy_radius": 1000
    },
    "node_version": "v0.4.0",
    "operator_id": "19"
}

License

GPL-3.0 license

Releases

No releases published

Packages

No packages published