API на TON. Описание.
Для общего понимания, зачем нужен API на TON. Каждые 5 секунд, блокчейн генерит блок, в котором записываются все изменения в блокчейне + транзакции. Чтобы получить доступ ко всей истории изменений, вам нужно проиндексировать все блоки. Это долго, сложно (3 года, каждые 5 секунд - просто представьте). Когда вы их проиндексируете, их нужно распарсить и вытащить от туда нужную информацию, а затем разложить это в вашу базу данных.
Сервисы API на TON этим и занимаются. Затем, предоставляют доступ до своих баз данных, чтобы пользователи могли получать текущее состояние дел в блокчейне.
На текущий момент существуют:tonapi. Написан на GO. Срок реализации 4 месяца. Код закрыт. Сделано через lite api ребятами из Getgems / TON Keeper под свои нужды. В целом работает хорошо, с текущими задачами справляется (например можно узнать какие есть NFT у кошелька).
tonwhales api v4. Написан на js поверх lite api. Удобно кешируется, открытый код. Есть мнение, что данные иногда не полные, но замечаний особо нет. Понимает типы смарт-контрактов и может их распознавать.
toncenter (v1). Удобно, понятно, давно работает. Написано командой TON Core Developer и является надстройкой над tonlibjson. Но к сожалению, недоработаны методы и некоторые поля.
toncenter (v2, transactions). Новая версия, где проиндексированы все транзакции и положены в postgres. Удобно, можно достать все транзакции, а главное быстро.
indexer. Написан на C++ на основе исходного кода TON командой Disintar. Информации пока мало, но работает на graphql и все исходники скоро будут открыты. Есть легенда, что это будет самый быстрый API. Ждем.
Может какие-то моменты упустил. Но в целом сейчас так. За информацию и идею, спасибо @tvorogme.
@investkingyru@investkingyru_en