Skip to main content

API library for MRKT app

Project description

MRKTAPI

Библиотека для работы с Telegram Market API (MRKT) - платформой для торговли NFT подарками в Telegram.

Описание

MRKTAPI предоставляет удобный Python интерфейс для взаимодействия с API платформы Telegram Market. Библиотека позволяет искать, покупать, продавать подарки, управлять балансом.

Установка

pip install MRKTAPI

Быстрый старт

Получение токена

Для работы с API необходимо получить токен аутентификации:

import asyncio
from MRKTAPI.auth import update_auth

async def get_token():
    
    # Используя api_id и api_hash
    token = await update_auth(
        api_id="YOUR_API_ID",
        api_hash="YOUR_API_HASH"
    )
    
    return token

    # Получаем токен
    token = asyncio.run(get_token())
    print(f"Токен получен: {token}")

Основные операции

import asyncio
from MRKTAPI import search, getBalance, buy, sale, getMyGifts

async def main():
    auth_data = "YOUR_TOKEN"
    
    # Получаем баланс
    balance = await getBalance(authData=auth_data)
    print(f"Баланс: {balance.hard} TON")
    
    # Ищем подарки
    gifts = await search(
        authData=auth_data,
        count=10,
        min_price=1.0,  # в TON
        max_price=10.0
    )
    
    for gift in gifts:
        print(f"Подарок: {gift.name}, Цена: {gift.price} TON")
    
    # Покупаем подарок
    if gifts:
        result = await buy(
            nft_id=gifts[0].id,
            price=gifts[0].price_nano,  # цена в нанотонах
            authData=auth_data
        )
        print("Покупка успешна!")
    
    # Получаем свои подарки
    my_gifts = await getMyGifts(authData=auth_data)
    print(f"У вас {len(my_gifts)} подарков")

asyncio.run(main())

Основные функции

Аутентификация

  • update_auth() - получение токена для работы с API

Баланс и торговля

  • getBalance(authData) - получение баланса аккаунта
  • search(authData, **filters) - поиск подарков на маркетплейсе
  • buy(nft_id, price, authData) - покупка подарка
  • sale(nft_id, price, authData) - выставление подарка на продажу
  • cancel(nft_ids, authData) - отмена продажи подарков

Управление подарками

  • getMyGifts(authData, **filters) - получение списка своих подарков
  • giftsFloors(authData) - получение минимальных цен коллекций
  • modelFloors(collection_name, authData) - получение минимальных цен моделей

Гивевеи

  • getGiveaways(giveaway_type, count, authData) - получение списка гивевеев

Утилиты

  • nanoToNormal(nano) - конвертация нанотонов в TON
  • convertToNano(ton) - конвертация TON в нанотоны
  • toShortName(name) - сокращение названий
  • rarityPerMilleToPercent(per_mille) - конвертация редкости

Примеры использования

Поиск подарков с фильтрами

gifts = await search(
    authData=auth_data,
    count=20,
    collection_names=["Lol Pop"],
    model_names=["Satellite"],
    ordering="Price",
    low_to_high=True
)

Получение минимальных цен

# Минимальные цены всех коллекций
floors = await giftsFloors(auth_data)
print(f"Минимальная цена Collection1: {floors.floors['Collection1']} TON")

# Минимальные цены моделей в коллекции
model_floors = await modelFloors("Collection1", auth_data)
for model in model_floors.models:
    print(f"{model.name}: {model.floor_price} TON")

Структуры данных

MRKTGift

Объект подарка с полями:

  • id - уникальный идентификатор
  • name - название подарка
  • price - цена в TON
  • price_nano - цена в нанотонах
  • collection_name - название коллекции
  • model_name - название модели
  • backdrop_name - название фона
  • symbol_name - название символа
  • is_mintable - можно ли минтить
  • is_new - новый ли подарок

MRKTBalance

Объект баланса с полями:

  • hard - баланс в TON
  • hard_nano - баланс в нанотонах

Требования

  • Python 3.8+
  • asyncio
  • curl_cffi
  • Kurigram

Поддержка

При возникновении проблем создавайте issue в репозитории проекта.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

mrktapi-1.0.1.tar.gz (12.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

mrktapi-1.0.1-py3-none-any.whl (18.8 kB view details)

Uploaded Python 3

File details

Details for the file mrktapi-1.0.1.tar.gz.

File metadata

  • Download URL: mrktapi-1.0.1.tar.gz
  • Upload date:
  • Size: 12.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.0

File hashes

Hashes for mrktapi-1.0.1.tar.gz
Algorithm Hash digest
SHA256 1ee13b38d821dbd1d14209987578733aea2630bcc4d4d8cba3c21d789aaed36d
MD5 c130e6124d481127bdbfa76fccc96ff6
BLAKE2b-256 2843b00b4516021465306b53e1b16c1c1354bbba86dedcbcb4ed19a3e483fa90

See more details on using hashes here.

File details

Details for the file mrktapi-1.0.1-py3-none-any.whl.

File metadata

  • Download URL: mrktapi-1.0.1-py3-none-any.whl
  • Upload date:
  • Size: 18.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.0

File hashes

Hashes for mrktapi-1.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 8d1456899bd07557091bb6fd6c1ea2e75e39bc267c441b5be43f33c24e8ae357
MD5 65092cbd088539e0c31913dae338f223
BLAKE2b-256 937980b7ab070e8930e6738392200c042576548ef7afe8fec20544499028b304

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page