Всеки пул на HeroMiners отговаря на един и същ набор от HTTP крайни точки само за четене. Няма ключ, акаунт или регистрация: заявявате URL и получавате JSON, със зададен Access-Control-Allow-Origin: *, така че страница в браузър може да го извиква директно. Използвайте го, за да изградите наблюдение на риговете, известие за изплащания, свое собствено табло или да изтеглите данните на пула в електронна таблица.
Въведете адреса си и всеки пример по-долу е готов за изпълнение срещу този пул. Нищо от въведеното тук не се изпраща никъде освен до самия пул и то само когато натиснете „Изпълни“.
Базов URL
https://quantus.herominers.com
Крайни точки
GET/api/stats
Всичко, което пулът знае за себе си в момента: хешрейт на пула и на мрежата, свързани миньори и работници, последният блок, такси, портове и настройките за изплащане.
Параметри
address
Адрес за изплащане. Добавя този миньор под miner и под solo_miner, ако копае и соло. Без него нито един от двата ключа не се изпраща.
Това е крайната точка, от която да започнете. Страницата на пула, страницата с миньорите и всяка графика на този сайт се изграждат от нея.
Заявка
curl "https://quantus.herominers.com/api/stats"
Отговор
Обект с pool, network, config, charts, lastblock, payments и visitors, колко души са на сайта в момента, като { windowMinutes, activeVisitors, activeLookups }. Преизчислява се веднъж на цикъл на статистиката, затова по-честите заявки връщат същите числа.
GET/api/live_stats
Същите данни като /api/stats, но заявката остава отворена до края на следващия цикъл на статистиката и тогава получава отговор. Една заявка на обновяване вместо запитвания по таймер.
Параметри
address
Включва миньор в отговора, както при /api/stats.
Отворете една връзка и я отворете отново, когато получи отговор. Няколко едновременно отворени връзки от един и същ IP се отказват с 503, затова не ги умножавайте.
Същата структура като /api/stats, с тази разлика, че miner и solo_miner се изпращат винаги, празни, когато не е подаден адрес. Заявката остава отворена до един цикъл на статистиката.
GET/api/stats_address
Един миньор: текущ и среден хешрейт, валидни и остарели дялове, баланс, изплатена сума и същите стойности за всеки работник.
Въведете address по-горе, за да изпълните тази заявка. Командата го показва, защото без него пулът отговаря с грешка.
Отговор
Обект с stats (сумарните стойности на миньора), payments, charts, unlocked и workers, масив с по един запис за всеки работник, именуван чрез своето name. Адрес, който никога не е копал тук, получава грешка вместо празен миньор.
GET/api/get_blocks
Блокове, намерени от пула, които вече не са чакащи: изплатени или осиротели. status казва кое от двете.
Параметри
heightзадължително
Връща блоковете под тази височина. Подайте число далеч над върха на веригата за най-новата страница, след това най-ниската получена височина, за да се движите назад.
Адресът на намерилия блока се маскира, преди да напусне пула, затова тази крайна точка не може да се използва за събиране на адреси. time е в Unix секунди, reward е в най-малката единица на монетата, а соло блок носи score със стойност s0, когато е изплатен, или s1, когато е осиротял.
Плащания, изпратени от пула, за целия пул или за един адрес.
Параметри
timeзадължително
Връща плащанията преди този Unix времеви печат в секунди. Използвайте текущото време за най-новата страница, след това най-стария получен времеви печат, за да се движите назад.
address
Ограничава до един адрес за изплащане. Пропуснете го за всички плащания, направени от пула.
limit
Колко да се върнат. Ограничава се до размера на страницата на пула, така че по-голямо число просто връща толкова.
format
Подайте parsed, за да получите обекти { tx, amount, time } вместо суровия масив.
conversions
Заедно с address подайте 1, за да получите и записа за обмен на всяко изплащане на страницата, обменено в друга монета. Тогава отговорът става { payments, conversions }. Пренебрегва се при format=parsed.
Без format това е плосък масив, в който се редуват стойност и времеви печат, като всяка стойност е txid:amount. Сумите са низове в най-малката единица на монетата и трябва да останат низове: ако се преобразуват в число, на верига с 18 десетични знака се губи точност.
GET/api/get_miners_stats
Десетте най-големи миньори в пула, плюс разбивките по програми за копаене и по региони, на които стъпва страницата с миньорите.
Обект с miners, agents, regions, regionHistory и statsDisplay. Адресите са маскирани. Когато даден панел не е включен, масивът му идва празен и statsDisplay го посочва.
GET/api/get_blocks_search
Търсене в блоковете на пула по височина, хеш на блока или адрес на намерилия го, едновременно сред чакащите и изплатените блокове.
Параметри
qзадължително
Височина, хеш на блок или адрес.
offset
Пропуска толкова резултата. Отговорът съдържа hasMore, за да знаете дали да попитате отново.
Търсенето е ограничено за всеки IP и при превишаване се връща rateLimited с точното време за изчакване в retryMs вместо голо съобщение за грешка. Първо извикайте /api/get_blocks_search_config, за да научите границите на дължината и дали търсенето изобщо е включено.
Въведете q по-горе, за да изпълните тази заявка. Командата го показва, защото без него пулът отговаря с грешка.
Отговор
Обект с pending и matured, и двата с редуващи се стойност и височина като /api/get_blocks, плюс totalMatched, offset, limit и hasMore. Блок от matured е във формата на /api/get_blocks; блок от pending още чака да узрее и използва по-дългия формат за чакащи блокове, затова полетата му са в различен ред.
GET/api/get_blocks_search_config
Дали търсенето на блокове е включено и в какви граници трябва да е заявката, така че полето за търсене да се настрои преди първото търсене.
{ enabled, minQueryLength, maxQueryLength, frontendCooldownMs }. Дължините са в знаци, а frontendCooldownMs е колко да се изчака между две търсения.
GET/api/get_miner_payout_level
Прагът за изплащане, зададен в момента за даден адрес, в цели монети.
Параметри
addressзадължително
Адресът за изплащане.
Съответната /api/set_miner_payout_level го записва и тя не е отворена за всеки: заявката трябва да идва от IP адреса, от който копае самият адрес. Тази проверка и ограничението на заявките пред нея са описани в раздела с настройки на таблото, а не тук.
Въведете address по-горе, за да изпълните тази заявка. Командата го показва, защото без него пулът отговаря с грешка.
Отговор
{ banned, minerMessage }, а при блокиране също blockMining, blockPayments и reason. Това е известието, което страницата на миньора показва за този адрес: блокиран за копаене, за изплащания или за нито едно от двете. minerMessage е съобщението на оператора до този адрес, като { message, type, createdAt, expiresAt }, или null, когато няма такова.
Как да го използвате добре
Питайте в ритъма на пула. Числата се преизчисляват веднъж на цикъл на статистиката, а config.updateInterval в отговора на /api/stats казва колко секунди е той. По-честите заявки връщат същия отговор и струват трафик и на двете страни.
Предпочитайте /api/live_stats пред бърз таймер. Отговаря в момента, в който има нещо ново, което е едновременно по-бързо за Вас и по-леко за пула от периодичните запитвания.
Пазете сумите като низове. Наградите и балансите идват в най-малката единица на монетата. На верига с 18 десетични знака тези цели числа надхвърлят това, което число в JavaScript може да представи точно, така че преобразуването тихомълком закръгля изплащането.
Очаквайте адресите да са маскирани. Публичните списъци скриват средата на всеки адрес. Пълният Ви адрес е нужен само на Вас и само там, където сами го въвеждате.
Приемайте ограничението на заявките като изчакване, а не като грешка. Където има ограничение, отговорът съдържа retryMs. Изчакайте толкова и опитайте отново, вместо да засипвате пула със заявки.
Представете се. Заглавие User-Agent, което назовава Вашия инструмент, не е задължително, но така можем да Ви уведомим за промяна, вместо да гадаете какво се е развалило.