Skip to content

lukinism/iris-api-spec

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

📘 API Документация Iris

📑 Оглавление


📦 Методы Pocket


pocket/balance

💬 Ответ:

{
  "gold": integer,
  "sweets": float,
  "donate_score": integer
}

pocket/sweets/give

📤 Структура запроса:

Параметр Тип Описание
user_id integer ✅ ID пользователя, которому отправляются ириски
sweets float ✅ Количество ирисок для отправки
comment string 💬 Комментарий к переводу
without_donate_score boolean ✅ Использовать донат очки к переводу

💬 Ответ:

{ "result": integer }

pocket/gold/give

📤 Структура запроса:

Параметр Тип Описание
user_id integer ✅ ID пользователя, которому отправляется голда
gold integer ✅ Количество голды для отправки
comment string 💬 Комментарий к переводу
without_donate_score boolean ✅ Использовать донат очки к переводу

💬 Ответ:

{ "result": integer }

pocket/donate_score/give

📤 Структура запроса:

Параметр Тип Описание
user_id integer ✅ ID пользователя, которому отправляются донат-очки
amount integer ✅ Количество очков для отправки
comment string 💬 Комментарий к переводу

💬 Ответ:

{ "result": integer }

pocket/sweets/history

📤 Структура запроса:

Параметр Тип Описание
offset integer 💬 Вернуть записи, где id ≥ offset
limit integer 💬 Количество записей в ответе

💬 Ответ:

{
  "date": integer,
  "amount": float,
  "balance": float,
  "to_user_id": integer,
  "details": {
    "total": float,
    "amount": float,
    "fee": float,
    "donate_score": integer
  },
  "comment": string,
  "id": integer,
  "type": string,
  "peer_id": integer
}

pocket/gold/history

📤 Структура запроса:

Параметр Тип Описание
offset integer 💬 Минимальный ID записи
limit integer 💬 Количество записей

💬 Ответ:

{
  "date": integer,
  "amount": integer,
  "balance": integer,
  "to_user_id": integer,
  "details": {
    "total": integer,
    "amount": integer,
    "fee": integer,
    "donate_score": integer
  },
  "comment": string,
  "id": integer,
  "type": string,
  "peer_id": integer
}

pocket/donate_score/history

📤 Структура запроса:

Параметр Тип Описание
offset integer 💬 Минимальный ID записи
limit integer 💬 Количество записей

💬 Ответ:

[
  {
    "date": integer,
    "amount": integer,
    "balance": integer,
    "id": integer,
    "type": string,
    "peer_id": integer,
    "comment": string,
  }
]

pocket/enable / pocket/disable / pocket/allow_all / pocket/deny_all

📤 Структура запроса:

(Параметры отсутствуют)

💬 Ответ:

{ "result": boolean }

pocket/allow_user

📤 Структура запроса:

Параметр Тип Описание
user_id integer ✅ ID пользователя, которому разрешено отправлять валюту

pocket/deny_user

📤 Структура запроса:

Параметр Тип Описание
user_id integer ✅ ID пользователя, которому запрещено отправлять валюту

👤 Методы User Info


user_info/reg

📤 Структура запроса:

Параметр Тип Описание
user_id integer ✅ ID пользователя, для получения даты регистрации

💬 Ответ:

{ "result": integer }

user_info/activity

📤 Структура запроса:

Параметр Тип Описание
user_id integer ✅ ID пользователя, для получения статистики активности

💬 Ответ:

{
  "result": {
    "total": integer,
    "week": integer,
    "month": integer,
    "day": integer
  }
}

user_info/spam

📤 Структура запроса:

Параметр Тип Описание
user_id integer ✅ ID пользователя, для проверки в базах спама/скама/игнора

💬 Ответ:

{
  "result": {
    "is_spam": boolean,
    "is_ignore": boolean,
    "is_scam": boolean
  }
}

user_info/stars

📤 Структура запроса:

Параметр Тип Описание
user_id integer ✅ ID пользователя, звёздность которого требуется получить

💬 Ответ:

{ "result": integer }

user_info/pocket

📤 Структура запроса:

Параметр Тип Описание
user_id integer ✅ ID пользователя, чей мешок требуется получить

💬 Ответ:

{
  "result": {
    "gold": integer,
    "coins": integer,
    "sweets": float,
    "stars": integer
  }
}

🔄 Методы Updates


updates/getUpdates

📤 Структура запроса:

Параметр Тип Описание
offset integer ID последнего полученного события. Следующие события будут возвращены с id > offset.
limit integer Количество записей в ответе

💬 Ответ:

[
  {
    "id": 11,
    "type": "donate_score_log",
    "date": 1756286741,
    "object": { ... }
  }
]

📘 Описание полей:

Поле Тип Описание
id integer Уникальный идентификатор события
type string Тип события: sweets_log, gold_log, donate_score_log
date integer Время события в формате UNIX (секунды)
object object Объект события. Совпадает по структуре с методами pocket/sweets/history, pocket/gold/history, pocket/donate_score/history

💰 Методы Trade


trade/buy

📤 Структура запроса:

Параметр Тип Описание
price float ✅ Цена, которую вы готовы заплатить за 1 ед. голды
volume integer ✅ Количество голды для покупки

💬 Ответ (если сделка совершена):

{
  "done_volume": integer,
  "sweets_spent": float
}

💬 Ответ (если нет предложений — создаётся заявка):

{
  "done_volume": integer,
  "sweets_spent": float,
  "new_order": {
    "volume": integer,
    "price": float,
    "id": integer
  }
}

trade/sell

📤 Структура запроса:

Параметр Тип Описание
price float ✅ Цена, по которой вы хотите продать 1 ед. голды
volume integer ✅ Количество голды для продажи

💬 Ответ (моментальная продажа):

{
  "done_volume": integer,
  "sweets_received": float
}

💬 Ответ (если нет покупателей — создаётся заявка):

{
  "done_volume": integer,
  "sweets_received": float,
  "new_order": {
    "volume": integer,
    "price": float,
    "id": integer
  }
}

trade/cancel_price

📤 Структура запроса:

Параметр Тип Описание
price float ✅ Цена покупки (от 0.01 до 1_000_000)

💬 Ответ:

{
  "result": {
    "gold": integer,
    "sweets": float
  }
}

📘 Описание:

  • gold — количество возвращённых в мешок золотых ирисок.
  • sweets — количество возвращённых в мешок ирисок.

trade/cancel_all

📤 Структура запроса:

(Параметров нет)

💬 Ответ:

{
  "result": {
    "gold": integer,
    "sweets": float
  }
}

📘 Описание:

  • gold — количество возвращённых в мешок золотых ирисок.
  • sweets — количество возвращённых в мешок ирисок.

trade/cancel_part

📤 Структура запроса:

Параметр Тип Описание
id integer ID заявки на Ирис-бирже.
volume float Объём золотых ирисок для отмены. Если указанный объём равен или превышает объём выбранной заявки, то заявка полностью снимается.

💬 Ответ:

{
  "result": {
    "gold": integer,
    "sweets": float
  }
}

📘 Описание:

  • gold — количество возвращённых в мешок золотых ирисок.
  • sweets — количество возвращённых в мешок ирисок.

trade/deals

📤 Структура запроса:

Параметр Тип Описание
id integer ID сделки, начиная с которой нужно вернуть данные (опционально)

💬 Ответ:

[
  {
    "id": integer,
    "group_id": integer,
    "date": integer,
    "price": float,
    "volume": integer,
    "type": string
  }
]

📘 Описание полей:

Поле Тип Описание
id integer Уникальный идентификатор сделки
group_id integer Идентификатор группы связанных сделок (0, если сделка одиночная)
date integer Время сделки в формате UNIX (секунды)
price float Цена, по которой была совершена сделка
volume integer Объём сделки
type string Тип сделки: buy — покупка, sell — продажа

/k/trade/order_book

📤 Структура запроса:
(Параметров нет)

💬 Ответ:

{
  "buy": [
    { "volume": integer, "price": float },
    { "volume": integer, "price": float }
  ],
  "sell": [
    { "volume": integer, "price": float },
    { "volume": integer, "price": float }
  ]
}

📘 Описание полей:

Поле Тип Описание
buy array Список заявок на покупку
sell array Список заявок на продажу
volume integer Объём ордера
price float Цена ордера

⚙️ Остальные методы


/iris_agents

📤 Структура запроса:

Параметр Тип Описание
token string Конкатенация {bot_id}_{iris_token}. Пример: 5293075118_SEibvWeRC19iRDk6SAwvu7TfzyOe4m6o

💬 Ответ:

[ integer, integer, ... ]

📘 Описание:

Возвращает массив int64 — идентификаторов Telegram-аккаунтов агентов Iris.

Пример:

[571497337, 6826112951, 7057861690, 1072639353, 6530053533, 956560198, 1135399536, 5484288853, 1082239406, 661079614]

/last_version

📤 Структура запроса:
(Параметров нет)

💬 Ответ:

{
  "result": "0.3"
}

📘 Описание:

Возвращает строку с текущей актуальной версией API Iris. Используется для проверки обновлений и совместимости клиентов.


⚠️ Ошибки API

При выполнении запросов сервер может возвращать ошибки в следующем формате:

{
  "error": {
    "description": "Error description",
    "code": integer
  }
}

📘 Возможные ошибки:

Код Сообщение Описание
400 Sweets/Gold is 0 Передано нулевое количество валюты
400 User is not set Не указан пользователь в запросе
404 User not found Пользователь не найден
403 Account is not user Указан неверный тип аккаунта
500 Ошибка в расчёте сжигании ирисок. Обратитесь к агентам Внутренняя ошибка сервера при расчёте
409 Not enough sweets/gold. Need $value Недостаточно валюты на счету
409 Unsuccessful donate score decrease Ошибка при уменьшении донат-очков
409 Unsuccessful sweets/gold decrease Ошибка при уменьшении валюты
429 Flood control Флуд контроль

💐 Особые благодарности

  • irisism — за разработку и предоставление доступа к API.
  • Fiftic — за внимательность и помощь при поиске неточностей и недоработок в документации.

About

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published