Ön
Fejlesztők

Pool API

Minden HeroMiners pool ugyanazokat a csak olvasható HTTP-végpontokat szolgálja ki. Nincs kulcs, nincs fiók és nincs regisztráció: lekér egy URL-t, és JSON-t kap vissza, beállított Access-Control-Allow-Origin: * fejléccel, így egy böngészőben futó oldal közvetlenül is meghívhatja. Használja rigfigyelő, kifizetésértesítő vagy saját irányítópult készítéséhez, vagy hogy a pool adatait egy táblázatba töltse.

Adja meg a címét, és az alábbi összes példa futtatható lesz ezen a poolon. Amit itt beír, azt csak magának a poolnak küldjük el, és csak akkor, ha a Futtatás gombra kattint.

Alap URL
https://quantus.herominers.com

Végpontok

GET /api/stats

Minden, amit a pool éppen tud önmagáról: pool- és hálózati hashráta, csatlakozott bányászok és dolgozók, az utolsó blokk, díjak, portok és a kifizetési beállítások.

Paraméter
address
Egy kifizetési cím. Hozzáadja az adott bányászt a miner alatt, és a solo_miner alatt is, ha solo módban is bányászik. Ha elhagyja, egyik kulcs sem kerül elküldésre.

Ezzel a végponttal érdemes kezdeni. A pool oldala, a bányászok oldala és az oldal minden diagramja ebből készül.

Kérés
curl "https://quantus.herominers.com/api/stats"
Válasz

Egy objektum ezekkel: pool, network, config, charts, lastblock, payments és visitors, vagyis hányan vannak éppen az oldalon, { windowMinutes, activeVisitors, activeLookups } formában. Statisztikai ciklusonként egyszer számolódik újra, így ennél gyakoribb lekérdezés ugyanazokat a számokat adja vissza.

GET /api/live_stats

Ugyanaz a tartalom, mint a /api/stats válasza, de a kérés nyitva marad a következő statisztikai ciklus végéig, és csak akkor érkezik válasz. Frissítésenként egy kérés, időzítős lekérdezés helyett.

Paraméter
address
Egy bányász felvétele a válaszba, ahogy a /api/stats esetén.

Nyisson egy kapcsolatot, és nyissa meg újra, amikor válaszol. Ugyanarról az IP-ről egyszerre nyitott több kapcsolatot 503-as hibával elutasítunk, ezért ne indítson párhuzamos kéréseket.

Kérés
curl "https://quantus.herominers.com/api/live_stats"
Válasz

Ugyanaz a szerkezet, mint a /api/stats esetén, kivéve, hogy a miner és a solo_miner mindig elküldésre kerül, üresen, ha nem adott meg címet. A kérés legfeljebb egy statisztikai ciklusig marad nyitva.

GET /api/stats_address

Egy bányász: aktuális és átlagos hashráta, érvényes és elavult részesedések, egyenleg, kifizetett összeg, és ugyanezek az értékek dolgozónként.

Paraméter
addresskötelező
A lekérdezendő kifizetési cím.
Kérés
curl "https://quantus.herominers.com/api/stats_address"

A futtatáshoz adja meg fent ezt: address. A parancs azért tartalmazza, mert nélküle a pool hibával válaszol.

Válasz

Egy objektum ezekkel: stats (a bányász összesítései), payments, charts, unlocked és workers, egy tömb dolgozónként egy elemmel, amelyet a name mező nevez meg. Egy cím, amely itt soha nem bányászott, hibát kap válaszul üres bányász helyett.

GET /api/get_blocks

A pool által talált blokkok, amelyek már nem függőben lévők: kifizetettek vagy árvák. A status mondja meg, melyik.

Paraméter
heightkötelező
Az e magasság alatti blokkokat adja vissza. A legújabb oldalhoz adjon meg egy, a lánc csúcsánál jóval nagyobb számot, majd a visszafelé lapozáshoz a kapott legkisebb magasságot.

A megtaláló címét maszkoljuk, mielőtt elhagyja a poolt, így ezzel a végponttal nem lehet címeket gyűjteni. A time Unix-másodpercben, a reward az érme legkisebb egységében értendő, és egy solo blokk score értéke s0, ha kifizették, vagy s1, ha árva lett.

Kérés
curl "https://quantus.herominers.com/api/get_blocks?height=9999999999"
Válasz

Egy lapos tömb, felváltva érték és magasság: [block, height, block, height, ...]. Minden blokk kettősponttal tagolt:

0hash1time2difficulty3shares4score5nonce6status7reward8finder9region10rewardScheme
GET /api/get_payments

A pool által elküldött kifizetések, a teljes poolra vagy egy címre.

Paraméter
timekötelező
Az e Unix-időbélyeg (másodperc) előtti kifizetéseket adja vissza. A legújabb oldalhoz használja az aktuális időt, majd a visszafelé lapozáshoz a kapott legrégebbi időbélyeget.
address
Szűkítés egy kifizetési címre. Hagyja el a pool összes kifizetéséhez.
limit
Hány elemet adjon vissza. A pool saját oldalméretére korlátozódik, így egy nagyobb szám egyszerűen annyit ad vissza.
format
Adja meg a parsed értéket, hogy a nyers tömb helyett { tx, amount, time } objektumokat kapjon.
conversions
A address mellett adja meg az 1 értéket, hogy az oldalon szereplő minden, más érmére átváltott kifizetés átváltási rekordját is megkapja. A válasz ekkor { payments, conversions } lesz. A format=parsed mellett figyelmen kívül marad.
Kérés
curl "https://quantus.herominers.com/api/get_payments?time=1792922073"
Válasz

A format nélkül egy lapos tömb, felváltva érték és időbélyeg, ahol minden érték txid:amount. Az összegek az érme legkisebb egységében megadott stringek, és stringként kell maradniuk: ha számként dolgozza fel őket, egy 18 tizedesjegyű láncon pontosság vész el.

GET /api/get_miners_stats

A pool tíz legnagyobb bányásza, valamint a bányászprogramok és a régiók szerinti megoszlás, amelyek a bányászok oldalát adják.

Kérés
curl "https://quantus.herominers.com/api/get_miners_stats"
Válasz

Egy objektum ezekkel: miners, agents, regions, regionHistory és statsDisplay. A címek maszkoltak. Ha egy panel nincs engedélyezve, a tömbje üresen érkezik, és a statsDisplay ezt jelzi.

GET /api/get_blocks_search_config

Be van-e kapcsolva a blokkkeresés, és milyen korlátoknak kell megfelelnie egy lekérdezésnek, hogy egy keresőmező már az első keresés előtt beállítható legyen.

Kérés
curl "https://quantus.herominers.com/api/get_blocks_search_config"
Válasz

{ enabled, minQueryLength, maxQueryLength, frontendCooldownMs }. A hosszak karakterben értendők, a frontendCooldownMs pedig az, hogy mennyit kell várni két keresés között.

GET /api/get_miner_payout_level

Egy címhez jelenleg beállított kifizetési küszöb, egész érmében.

Paraméter
addresskötelező
A kifizetési cím.

A párja, a /api/set_miner_payout_level írja, és nem nyitott bárki számára: a kérésnek a cím saját bányászati IP-jéről kell érkeznie. Ezt az ellenőrzést és az előtte álló kéréskorlátot az irányítópult beállítások lapja írja le, nem ez az oldal.

Kérés
curl "https://quantus.herominers.com/api/get_miner_payout_level"

A futtatáshoz adja meg fent ezt: address. A parancs azért tartalmazza, mert nélküle a pool hibával válaszol.

Válasz

{ status: "done", level }. Egy cím, amely soha nem állított be ilyet, a pool minimumát kapja.

GET /api/miner_ban_status

A tiltási értesítés, amelyet a bányászoldal egy címhez mutat, és az üzenet, amelyet az üzemeltető hagyott neki, ha van ilyen.

Paraméter
addresskötelező
A kifizetési cím.
Kérés
curl "https://quantus.herominers.com/api/miner_ban_status"

A futtatáshoz adja meg fent ezt: address. A parancs azért tartalmazza, mert nélküle a pool hibával válaszol.

Válasz

{ banned, minerMessage }, tiltás esetén pedig ezek is: blockMining, blockPayments és reason. Ez az az értesítés, amelyet a bányászoldal ehhez a címhez mutat: tiltva a bányászattól, a kifizetéstől, vagy egyiktől sem. A minerMessage az üzemeltető üzenete ennek a címnek, { message, type, createdAt, expiresAt } formában, vagy null, ha nincs ilyen.

Helyes használat

  • Kérdezzen le a pool saját ütemében. A számok statisztikai ciklusonként egyszer számolódnak újra, és a /api/stats válaszában a config.updateInterval adja meg ennek hosszát másodpercben. Ennél gyakoribb kérés ugyanazt a választ adja, és mindkét félnek sávszélességbe kerül.
  • Gyors időzítő helyett használja a /api/live_stats végpontot. Abban a pillanatban válaszol, amikor van valami új, ami Önnek gyorsabb, a poolnak pedig kisebb terhelés, mint az időzítős lekérdezés.
  • Tartsa meg az összegeket stringként. A jutalmak és az egyenlegek az érme legkisebb egységében érkeznek. Egy 18 tizedesjegyű láncon ezek az egész számok meghaladják azt, amit egy JavaScript-szám pontosan tárolni tud, így a feldolgozásuk észrevétlenül kerekít egy kifizetést.
  • Számítson rá, hogy a címek maszkoltak. A nyilvános listák elrejtik minden cím közepét. A saját teljes címére csak Önnek van szüksége, és csak ott, ahol Ön adja meg.
  • A kéréskorlátot kezelje várakozásként, ne hibaként. Ahol korlát érvényes, a válasz tartalmazza a retryMs mezőt. Várjon ennyit, és csak utána próbálja újra, ne ostromolja a poolt.
  • Mondja meg, ki Ön. Egy, az eszközét megnevező User-Agent nem kötelező, de így értesíteni tudjuk egy változásról, és nem kell találgatnia, mi romlott el.