uploader-bot/ENDPOINTS.md

3.0 KiB
Raw Permalink Blame History

  1. GET /api/v1/node { node_address: service_wallet, master_address: platform collection, indexer_height: int, services: { ..status&delay only } }

  2. POST /api/system.sendStatus

  3. GET /api/system.version { codebase_hash: string, codebase_branch: string }

  4. GET /api/tonconnect-manifest.json используется для tonconnect на фронтенде бота (централизация)

  5. GET /api/platform-metadata.json используется при создании platform, если ранее не создано

  6. POST /api/v1/auth.twa сохраняет информацию о пользователе (его кошельке), выдает взамен токен для операций с этой нодой

  7. GET /api/v1/tonconnect.new [! DEPRECATED !]

  8. POST /api/v1/tonconnect.logout [! DEPRECATED !] но возможно нужно использовать при отключении кошелька в вебаппе

  9. POST /api/v1/storage загрузка контента на ноду с получением его хэша, TODO: нужно делать загрузку по частям чтобы сервер не падал

  10. GET /api/v1/storage/<file_hash> получение файла целиком. TODO: изучить реальный стриминг файла TODO: реализовать поиск файла на других нодах

  11. GET /api/v1/storage.decodeContentId/<content_id> просто баловство

  12. GET /api/v1/account [! DEPRECATED !] получение информации о пользователе, не нужно от слова совсем

  13. POST /api/v1/blockchain.sendNewContentMessage

  14. POST /api/v1/blockchain.sendPurchaseContent

  15. GET /api/v1/content.list

  16. GET /api/v1/content.view

  17. GET /api/v1/network.info Возвращает информацию о ноде: id/public_key, version, node_type, metrics, capabilities.

  18. GET /api/v1/network.nodes Возвращает список известных публичных нод с совместимостью и метаданными.

  19. POST /api/v1/network.handshake Рукопожатие между нодами. Тело запроса подписано приватным ключом ноды; ответ подписан приватным ключом сервера. Поля запроса: version, public_key (base58), node_type, metrics, capabilities, timestamp, nonce, signature. Поле public_host обязательно для public-нод, и опционально/пустое для private-нод. Поля ответа: compatibility, node, known_public_nodes, timestamp, server_public_key, server_signature (+ warning при несовпадении MINOR). Private-ноды не сохраняются на стороне принимающей ноды (никакого учета peer-а), но получают список публичных нод и могут синхронизироваться через них.