Client for the Midasbuy code-activation API — free tier included
Project description
midasbuy-sdk
Python-клиент для API активации кодов Midasbuy.
Есть бесплатный тариф: ключ выдаётся без регистрации и без оплаты. Это бета — лимиты временные и будут пересмотрены по её итогам.
pip install midasbuy-sdk
Как получить ключ
Напишите Telegram-боту @midasbuy_api_bot команду /free.
К заявке приложите ссылки на свои профили на площадках, где вы торгуете, и скриншоты-подтверждения. Это единственный барьер: он стоит не ради формальности, а чтобы бесплатные ключи не разошлись пачками по одноразовым аккаунтам.
Один бесплатный ключ в одни руки. Повторная заявка вернёт тот же ключ.
Первый вызов
from midasbuy_sdk import MidasbuyClient
with MidasbuyClient("ваш-ключ") as client:
# 1. подключите свой Midas-аккаунт — активировать нужно на него
account = client.connect_account(cookies="...", game="pubgm")
# 2. активируйте код
accepted = client.activate("CODE-1234", account_id=account.account_id)
# 3. дождитесь результата
result = client.wait_for(accepted.activation_id)
print(result.status, result.granted_item)
Асинхронно — те же имена методов:
from midasbuy_sdk import AsyncMidasbuyClient
async with AsyncMidasbuyClient("ваш-ключ") as client:
accepted = await client.activate("CODE-1234", account_id="acc_...")
result = await client.wait_for(accepted.activation_id)
Что делает клиент за вас
Ключ идемпотентности. Каждый POST уходит с Idempotency-Key, и повтор
использует тот же ключ. Поэтому таймаут или 429 не превращают одну
активацию в две. Свой ключ можно передать явно — тогда и ваш собственный ретрай
схлопнется в одну операцию:
client.activate("CODE-1234", account_id="acc_...", idempotency_key="order-42")
Отступ при 429. Превышение темпа — это не ошибка, а обратное давление:
клиент ждёт Retry-After и продолжает. Исключение RateLimited вы увидите
только когда ретраи кончились.
Ошибки
Каждая — отдельный тип, у всех есть code и request_id (его удобно
цитировать в поддержке).
RateLimited— слишком быстро. Полеretry_after, ничего не потрачено.DailyCapReached— исчерпан суточный потолок активаций, вreset_atвремя сброса.AuthFailed— ключ не принят. Сервис намеренно не уточняет, почему.OutOfStock— кода такого номинала нет в вашем стоке.NotFound— объекта нет либо он чужой; API эти случаи не различает.WaitTimeout—wait_forне дождался. Активация всё ещё выполняется: опроситеget_activationпозже. Повторно активировать код нельзя — он спишется дважды.
Методы
| Метод | Что делает |
|---|---|
connect_account(cookies, game=) |
Подключить свой Midas-аккаунт |
list_accounts() |
Подключённые аккаунты |
activate(code, account_id=) |
Активировать один код |
activate_batch(denomination_value=, quantity=, account_id=, game=) |
Активировать пачку из своего стока |
get_activation(id) |
Статус одной активации |
activation_statuses(ids) |
Статусы многих активаций одним вызовом |
wait_for(id, poll=, timeout=) |
Ждать терминального статуса |
list_games() |
Поддерживаемые игры |
list_packages(game) |
Номиналы одной игры |
key_status() |
Состояние ключа: остаток на сегодня, срок |
Про бету
Пока идёт бета, ограничитель — темп запросов, а не суточная квота:
упёршись, вы получаете 429, ждёте и продолжаете работать. Суточный потолок
активаций тоже есть, но он аварийный.
По итогам беты числа будут пересмотрены, и часть возможностей станет платной — о том, какие именно, сказано заранее: доставка результатов вебхуками, ссылки для выдачи и второй подключённый Midas-аккаунт.
Лицензия
MIT.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file midasbuy_sdk-0.1.0.tar.gz.
File metadata
- Download URL: midasbuy_sdk-0.1.0.tar.gz
- Upload date:
- Size: 11.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4d729ffecbbea6e3bb57b0e8ceb45c3b566916ac3ae5973459d9fac28e958b65
|
|
| MD5 |
8c37f1ca16be5fb87402f5362553a54c
|
|
| BLAKE2b-256 |
5e0614f190b1389ab144542d43f4e0db7b49b107c10e1e1ab1cde4c46bad47a6
|
Provenance
The following attestation bundles were made for midasbuy_sdk-0.1.0.tar.gz:
Publisher:
publish.yml on zlexdev/midasbuy-sdk
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
midasbuy_sdk-0.1.0.tar.gz -
Subject digest:
4d729ffecbbea6e3bb57b0e8ceb45c3b566916ac3ae5973459d9fac28e958b65 - Sigstore transparency entry: 2251269034
- Sigstore integration time:
-
Permalink:
zlexdev/midasbuy-sdk@e96cf92815b06cd781f974423779b4b91dee91e2 -
Branch / Tag:
refs/tags/v0.1.0 - Owner: https://github.com/zlexdev
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@e96cf92815b06cd781f974423779b4b91dee91e2 -
Trigger Event:
push
-
Statement type:
File details
Details for the file midasbuy_sdk-0.1.0-py3-none-any.whl.
File metadata
- Download URL: midasbuy_sdk-0.1.0-py3-none-any.whl
- Upload date:
- Size: 11.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5f24c1787ef5c3b0fe03f0bff23e328397d47544ede20dccce7a7b5f9a34a080
|
|
| MD5 |
a38fb9a983cc1f7c25f7e69799abff6a
|
|
| BLAKE2b-256 |
928296f35c54103ffcacf989438b8bdf2d3e386717c8badd49069e0153af5a1a
|
Provenance
The following attestation bundles were made for midasbuy_sdk-0.1.0-py3-none-any.whl:
Publisher:
publish.yml on zlexdev/midasbuy-sdk
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
midasbuy_sdk-0.1.0-py3-none-any.whl -
Subject digest:
5f24c1787ef5c3b0fe03f0bff23e328397d47544ede20dccce7a7b5f9a34a080 - Sigstore transparency entry: 2251269532
- Sigstore integration time:
-
Permalink:
zlexdev/midasbuy-sdk@e96cf92815b06cd781f974423779b4b91dee91e2 -
Branch / Tag:
refs/tags/v0.1.0 - Owner: https://github.com/zlexdev
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@e96cf92815b06cd781f974423779b4b91dee91e2 -
Trigger Event:
push
-
Statement type: