Skip to main content

Atraxis Python SDK

Официальный SDK для владельцев гильдий и лавок Atraxis. Он помогает подключить к гильдии своего бота, сайт или учётную систему: посмотреть склад, работать с внутренними валютами, выдавать ценности игрокам и получать историю операций.

pip install atraxis-sdk

Требуется Python 3.10 или новее. Перед началом лидер гильдии выпускает приватный токен в разделе «Интеграции гильдии». Храните его как пароль: токен даёт доступ к операциям вашей гильдии.

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

from atraxis import AtraxisClient, CurrencyTransfer

with AtraxisClient("agk_example.redacted") as client:
    for item in client.iter_warehouse():
        print(item.warehouse_item_id, item.name, item.quantity)

        if item.instance and item.instance.kind == "equipment":
            print(item.instance.level, item.instance.quality, item.instance.combat_stats)

    result = client.transfer(
        [CurrencyTransfer.to_player("TOKEN", player_id=100001, amount=25)],
        idempotency_key="order-2026-09-12-0001",
    )
    print(result.operation_id)

Асинхронный клиент имеет те же методы:

import asyncio
from atraxis import AsyncAtraxisClient


async def main() -> None:
    async with AsyncAtraxisClient("agk_example.redacted") as client:
        async for event in client.iter_activity():
            print(event.occurred_at, event.kind, event.deposit_method, event.net)


asyncio.run(main())

Токен и адрес можно передать через ATRAXIS_API_TOKEN и ATRAXIS_API_BASE_URL. По умолчанию SDK обращается к основному серверу Atraxis. Токен не включается в repr, исключения или логи самого SDK.

Что умеет SDK

  • get_warehouse, iter_warehouse — склад гильдии;
  • list_currencies, upsert_currency — внутренние валюты;
  • get_balances — балансы игрока;
  • transfer — единая операция из 1–10 переводов;
  • get_activity, iter_activity — история операций гильдии.

Все суммы представлены в Python как int, а по сети передаются десятичными строками. Модели неизменяемы. Новые необязательные поля ответа не ломают клиент, но обязательные поля всегда проверяются.

У предмета на складе два идентификатора: item_id обозначает общий тип предмета, а warehouse_item_id — конкретную позицию, которую нужно передать при выдаче. Для уникальной позиции is_unique равен True, а instance содержит характеристики именно этого экземпляра: боевые параметры и улучшения экипировки, бонусы инструментов и удочек, умения щита, свойства улова, состояние артефакта или журнала. В condition указаны прочность и её единица — percent или points. Поля durability и max_durability сохранены для совместимости со старыми подключениями.

Переводы

from atraxis import CurrencyTransfer, ItemTransfer

parts = [
    ItemTransfer(warehouse_item_id=700001, player_id=100001, amount=1),
    CurrencyTransfer.issue("TOKEN", amount=100),
    CurrencyTransfer.retire("TOKEN", amount=10),
    CurrencyTransfer.to_player("TOKEN", player_id=100001, amount=25),
    CurrencyTransfer.from_player("TOKEN", player_id=100001, amount=5),
    CurrencyTransfer.between_players(
        "TOKEN",
        from_player_id=100001,
        to_player_id=100002,
        amount=3,
    ),
]

Передавайте в idempotency_key постоянный идентификатор перевода или заказа. Если ключ не задан, SDK создаст UUID и вернёт его в TransferResult.idempotency_key. Повторный POST внутри SDK использует тот же ключ.

Транспортные ошибки, 429, 502, 503 и 504 повторяются не более двух раз. При 429 учитывается Retry-After. Ошибки API представлены AtraxisAPIError; в них доступны безопасный problem response и request_id.

Полная интерактивная документация: https://atraxisonline.com/developers/api.

Как пополняется склад

Свой склад пополняют на странице гильдии или через основной бот. В привязанном чате гильдии используйте Внести …. В любом чате Авроры, где работает обычное Передать, можно выбрать склад любой гильдии по её уникальному тегу:

Передать {ТЕГ} Стабилизатор - 2 штуки
Передать {ТЕГ} 1000 кредитов; номер 4 - 2 штуки

Команда с тегом не работает в общем чате. Для неё не нужны reply, пересланное сообщение или членство в выбранной гильдии.

Через API их можно только выдавать со склада игрокам. Списать их у игрока через API нельзя.

Для учёта пополнений читайте iter_activity(). В новых операциях warehouse_deposit поле deposit_method равно guild_deposit для обычного пополнения, в том числе команды «Внести», и tagged_transfer для команды «Передать {ТЕГ}». Поле source уточняет канал: chat — чат Авроры, game — страница гильдии или основной бот. Через asset.warehouse_item_id операцию можно связать с позицией из iter_warehouse().

Сохраняйте обработанные операции по event_id. available_since показывает начало истории, которая ещё доступна на сервере. У старых операций deposit_method равен None, поскольку раньше способ пополнения не сохранялся. Налоговые начисления учитываются отдельно и в этой истории операций не возвращаются.

Подключение к Codex и Claude Code

pip install "atraxis-sdk[mcp]"

MCP позволяет Codex и Claude Code подсказывать по API и работать с вашей гильдией через SDK. Без токена помощник отвечает только по документации. С ATRAXIS_API_TOKEN он сможет читать данные гильдии. Команды, которые меняют валюты или передают ценности, доступны только после запуска с --allow-writes; для каждого перевода потребуется idempotency_key.

Codex в режиме только для чтения, с уже установленной переменной окружения:

[mcp_servers.atraxis]
command = "atraxis-mcp"
env_vars = ["ATRAXIS_API_TOKEN"]

Или через CLI:

codex mcp add atraxis --env ATRAXIS_API_TOKEN="$ATRAXIS_API_TOKEN" -- atraxis-mcp

Claude Code:

claude mcp add --transport stdio --env ATRAXIS_API_TOKEN="$ATRAXIS_API_TOKEN" atraxis -- atraxis-mcp

Готовые конфигурации без токенов лежат в examples/mcp. Чтобы разрешить изменения, добавьте --allow-writes в args только на своём устройстве и только для помощника, которому доверяете.

Лицензия

MIT.

Metadata

Release files for atraxis-sdk 0.2.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for atraxis-sdk 0.2.0
File Size Uploaded Provenance Actions
atraxis_sdk-0.2.0.tar.gz 39.0 kB With provenance Details for atraxis_sdk-0.2.0.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for atraxis-sdk 0.2.0
File Interpreter ABI Platform Actions
atraxis_sdk-0.2.0-py3-none-any.whl Python 3 none any Details for atraxis_sdk-0.2.0-py3-none-any.whl

Total release size: 73.0 kB

Release files / atraxis_sdk-0.2.0.tar.gz

Download URL atraxis_sdk-0.2.0.tar.gz
Size 39.0 kB
Tags Source
SHA-256 checksum
How to use checksums
528921ad2d5d41fa6a37a2c3f683da0dd7285301e70eb97e8c098f8505b998e2
BLAKE2b-256 checksum
How to use checksums
d5ffc6033d576702cbe27ebc5cf32640d6c86907df1e27e045e437f0797cee42
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 1, 2026.

Transparency log

Release files / atraxis_sdk-0.2.0-py3-none-any.whl

Download URL atraxis_sdk-0.2.0-py3-none-any.whl
Size 34.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
39f1c09d0ff5e291723c5a51f5d322c5d93ac7bb278df9a6a533766aec0fbe86
BLAKE2b-256 checksum
How to use checksums
f6cdc084011546122629229bf057a903240e38e0719b7e4f65ed4262b6e5d626
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 1, 2026.

Transparency log

Security for atraxis-sdk 0.2.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

Both files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for atraxis_sdk-0.2.0.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 1, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page