Bytecoin 4.0 API

Bytecoin 4.0 API

Oleg Mikhailov

Создавайте интересные мини-игры и сервисы на байткоины! Вы сможете создать сервис, чтобы ему переводить, получать каллбеки переводов и переводить с сервиса пользователям. Сервисы имеют комиссию на перевод 5% в отличии от переводов пользователей в 10%. Также, разработчики создавшие интересные сервисы попадут на главную страницу приложения и получат игровую валюту для взаимодействия с пользователями.


Начнём.

Для того, чтобы создать сервис напиши нашему боту создать сервис.

Далее:

Сервис создан. Теперь нужно настроить API. Пишем боту управление сервисами.

Для того, чтобы API заработало и присылались каллбеки о переводах, нужно сделать тестовый запрос на ваш адрес каллбеков и ваш сервер должен будет ответить OK со статусом ответа 200. Для этого напишите боту тестовый запрос.

После того как каллбеки включились, можно принимать запросы с переводами от пользователей! На ваш адрес каллбеков будут отправляться запросы с переводами от пользователей в следующем виде:

Каллбек о переводе байткоинов сервису. Где data.from.socialNetworkId - идентификатор телеграма, также вам понадобится data.from._id для совершения перевода пользователю
Каллбек о переводе флешек сервису. Где data.from.socialNetworkId - идентификатор телеграма, также вам понадобится data.from._id для совершения перевода пользователю
Каллбек о переводе территории сервису. Где data.from.socialNetworkId - идентификатор телеграма, также вам понадобится data.from._id для совершения перевода пользователю
Важно: Если ваш сервер не принял запрос и не отправил код успеха 200, что означает запрос успешно обработан, наш сервер будет пуляться запросами с интервалами через секунду, 10 секунд, минуту, 30 минут и час пока этого не произойдёт!

Само API.

Для того чтобы посылать запросы и получать ответы от API, вам понадобится ваш токен. Его выдал бот после создания сервиса или его можно получить в команде управление сервисами > информация.

Ограничение: Одновременно можно выполнять только 1 API запрос! Параллельный второй запрос вызовет ошибку too_much_requests со статусом 429!

Получение переводов:

Адрес: https://oleegarch.com/bytecoin4/api/serviceTransfers/get

Параметры:
accessTokenобязательный параметр токена вашего сервиса.
skip — смещение для выборки переводов. Необязательно. 0-Infinity.
limit — ограничить количество получаемых переводов. Необязательно. 1-100.

history содержит историю переводов, documents содержит пользователей. История переводов сгруппированна по пользователям где один документ равен сотне переводов. Сгруппированные переводы можно увидеть в поле history.$.transfers

Создание массивного перевода байткоинов:

Адрес: https://oleegarch.com/bytecoin4/api/serviceTransfers/create

Параметры:
accessTokenобязательный параметр токена вашего сервиса.
to — массив из объектов кому мы будем переводить. Максимум 1000 объектов. Объект должен содержать поля:
to.$.id — идентификатор пользователя в нашей игре. Это не идентификатор телеграма. Его можно получить в каллбеке о переводе в поле data.from._id.
to.$.amount — сумма перевода.
to.$.direction — направление перевода. В вашем случае всегда равно значению Users.

to.$.id это идентификатор пользователя в байткоинах! Это не идентификатор телеграма. Чтобы получить идентификатор пользователя в байткоинах пусть пользователь переведёт вашему сервису байткоины и вы сможете получить идентификатор в каллбеке по полю data.from._id

Создание перевода байткоинов, флешек или территории:

Адрес: https://oleegarch.com/bytecoin4/api/serviceTransfers/createBet

Параметры:
accessTokenобязательный параметр токена вашего сервиса.
recipientId — идентификатор пользователя в нашей игре. Это не идентификатор телеграма. Его можно получить в каллбеке о любом типе перевода в поле data.from._id.
recipientType — направление перевода. В вашем случае всегда равно значению Users.
bet — объект с данными о сумме и типе перевода.
bet.type — что будем переводить: байткоины (bytecoins), флешки (multipliers) или территорию (territorySquareMeters).
bet.amount
— сумма перевода.
bet.data — дополнительные данные для перевода. В случае флешек равно названию флешки, в остальных случаях пустая строка.

recipientId это идентификатор пользователя в байткоинах! Это не идентификатор телеграма. Чтобы получить идентификатор пользователя в байткоинах пусть пользователь переведёт вашему сервису и вы сможете получить идентификатор в каллбеке по полю data.from._id
перевод флешек пользователю (в данном случае флешки хакера)
передача территории пользователю

Ответ:
recipient
— данные о получателе перевода.
bet — данные о сумме перевода.
yourService — данные о вашем сервисе. Содержит такие поля как: bytecoins (счёт сервиса в байткоинах), multipliersOnHand (количество флешек на счету сервиса), territorySquareMeters (сколько территории на счету сервиса.

Список флешек игры:

    Флешка для мышек (flash_drive_for_mouses)
    Флешка для видеокарт (flash_drive_for_videocards)
    Флешка для процессоров (flash_drive_for_processors)
    Флешка для автокликеров (flash_drive_for_autoclickers)
    Флешка для бустеров (flash_drive_for_boosters)
    Флешка для кулеров (flash_drive_for_coolers)
    Флешка для ферм (flash_drive_for_farms)
    Флешка халявщика (flash_drive_for_dailyBonus)
    Флешка воздухоплавателя (flash_drive_for_balloonBonus)
    Флешка для усилителя (flash_drive_for_amplifiers)
    Флешка с антивирусом (flash_drive_for_protection)
    Флешка взломщика (flash_drive_for_hacking)
    Флешка Ларри Пейджа (flash_drive_larry_page)
    Флешка Сергея Брина (flash_drive_sergey_brin)
    Флешка Цукенберга (flash_drive_zuckerberg)
    Флешка Билла Гейтса (flash_drive_bill_gates)
    Флешка Джеффа Безоса (flash_drive_jeff_bezos)
    Флешка Уоррена Баффетта (flash_drive_warren_beffett)
    Флешка Стива Джобса (flash_drive_steve_jobs)
    Флешка Сатоси Накамото (flash_drive_satosi_nakamoto)
    Флешка Пола Аллена (flash_drive_paul_allen)
    Флешка Ларри Эллисона (flash_drive_larry_ellison)
    Флешка Тима Бернерса-Ли (flash_drive_tim_berners_lee)
    Флешка Илона Маска (flash_drive_ilon_mask)
    Флешка Дурова (flash_drive_durov)
    Флешка Боба Кана (flash_drive_bob_kahn)
    Флешка джуна (flash_drive_june)
    Флешка миддла (flash_drive_middle)
    Флешка сеньора (flash_drive_senior)
    Флешка тимлида (flash_drive_team_lead)
    Флешка хакера (flash_drive_hacker)


Report Page