1.0.4 • Published 4 years ago

minebattle-api v1.0.4

Weekly downloads
1
License
MIT
Repository
github
Last release
4 years ago

Установка

yarn

yarn add minebattle-api

npm

npm i -S minebattle-api

Подключение

const { MineBattle } = require('minebattle-api');

const mb = new MineBattle(token);

Методы API

call - Универсальный метод отправки запроса

ПараметрТипОбязателенОписание
methodNamestringДаИмя метода
paramsobjectНетПараметры метода

Пример:

async function run() {
    const user = await mb.call('user.get', {
        user_id: 236908027
    });

    console.log(user);
}

run().catch(console.error);

getUserInfo - Получить информацию о пользователе

ПараметрТипОбязателенОписание
userIdnumberДаАйди пользователя

Пример:

async function run() {
    const user = await mb.getUserInfo(236908027);

    console.log(user);
}

run().catch(console.error);

getMerchantInfo - Получить информацию о данном мерчанте

Пример:

async function run() {
    const merchant = await mb.getMerchantInfo();

    console.log(merchant);
}

run().catch(console.error);

editMerchantInfo - Обновить информацию мерчанта

ПараметрТипОбязателенОписание
paramsobjectДаНовая информация мерчанта
params.avatarstringНетПрямая ссылка на новый аватар мерчанта
params.namestringНетНовое имя для мерчанта
params.group_idnumberНетНовая группа для мерчанта

*- Как минимум один из параметров должен присутствовать.

*- params.avatar обязательно должен быть .png

Пример:

async function run() {
    const merchant = await mb.editMerchantInfo({
        name: 'My awesome shop'
    });

    console.log(merchant);
}

run().catch(console.error);

createBill - Выставить счёт пользователю

ПараметрТипОбязателенОписание
targetIdnumberДаАйди пользователя, которому нужно выставить счёт
amountnumberДаКоличество запрашиваемых монет

Пример:

async function run() {
    const response = await mb.createBill(236908027, 123);

    console.log(response);
}

run().catch(console.error);

sendPayment - Сделать перевод пользователю

ПараметрТипОбязателенОписание
targetIdnumberДаАйди пользователя, которому нужно сделать перевод
amountnumberДаКоличество отправляемых монет

Пример:

async function run() {
    const response = await mb.sendPayment(236908027, 123);

    console.log(response);
}

run().catch(console.error);

setWebhook - Обновить вебхук для мерчанта

ПараметрТипОбязателенОписание
urlstringДаПрямая ссылка на вебхук

Пример:

async function run() {
    const response = await mb.setWebhook('https://my-awesome-domain.ru/payment');

    console.log(response);
}

run().catch(console.error);

Получение платежей

Получение новых платежей происходит по методу Webhook. Перед использованием этого метода, обязательно нужно зарегистрировать свой хук, с помощью метода setWebhook

startWebhook - Запустить вебхук

ПараметрТипОбязателенОписание
pathstringДаПуть хука, например '/payment'
portnumberДаПорт, на котором будет запущен хук

onPayment - Подписаться на события новых входящих платежей

ПараметрТипОбязателенОписание
callbackFunctionДаФункция обратного вызова, для приёма платежей

callback - Возвращает данные о новом входящем платеже

ПараметрТипОписание
amountnumberКоличество монет
from_idnumberАйди отправителя
updated_merchant_balancenumberНовый баланс данного мерчанта
updated_user_balancenumberНовый баланс отправителя

Пример:

mb.setWebhook('https://my-awesome-domain.ru:8181/payment').then(() => {
    mb.startWebhook('/payment', 8181);

    mb.onPayment((payment) => {
        const {
            amount, from_id,
            updated_merchant_balance,
            updated_user_balance
        } = payment;
    });
});