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.2.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.2-py3-none-any.whl (18.8 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: mrktapi-1.0.2.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.2.tar.gz
Algorithm Hash digest
SHA256 be60eed2df55ffc47f6cbfdb6108e6d11391ce3d0549c6e2dee1d897b02e520f
MD5 e8c78feabce9043976cfd9d8e879768f
BLAKE2b-256 f217c4785b01215f92b344c7e4c101a6bc6fa51b5c731e6a2d3b16056e181847

See more details on using hashes here.

File details

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

File metadata

  • Download URL: mrktapi-1.0.2-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.2-py3-none-any.whl
Algorithm Hash digest
SHA256 1848a1e67d6327f62997b49f4824b611162e20c700518ca5c3f37fc72b66c31a
MD5 2841a63b776faec4a123451741757369
BLAKE2b-256 7f756270006dda5d38b85ddd57ec76b44eacfb87df0c59ddaf27b2814c729724

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