This commit is contained in:
Maxim Khomutov 2025-03-27 16:12:11 +03:00
parent eb5c57d0fb
commit b8b015bc64
3 changed files with 71 additions and 2 deletions

5
.idea/misc.xml generated
View File

@ -1,4 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ProjectRootManager" version="2" project-jdk-name="Poetry (authPusher)" project-jdk-type="Python SDK" />
<component name="Black">
<option name="sdkName" value="Poetry (authPusher)" />
</component>
<component name="ProjectRootManager" version="2" project-jdk-name="Python 3.13 (server)" project-jdk-type="Python SDK" />
</project>

3
.idea/server.iml generated
View File

@ -3,8 +3,9 @@
<component name="NewModuleRootManager">
<content url="file://$MODULE_DIR$">
<sourceFolder url="file://$MODULE_DIR$/src" isTestSource="false" />
<excludeFolder url="file://$MODULE_DIR$/.venv" />
</content>
<orderEntry type="jdk" jdkName="Poetry (authPusher)" jdkType="Python SDK" />
<orderEntry type="jdk" jdkName="Python 3.13 (server)" jdkType="Python SDK" />
<orderEntry type="sourceFolder" forTests="false" />
</component>
</module>

View File

@ -0,0 +1,65 @@
# Топология API
Последняя версия API: `1.0`\
Формат запроса: `https://<адрес-сервера>/api/method/<имя-API-метода>?<параметры>`:
- Метод всегда `GET`
- `<адрес-сервера>`: `mml.anidev.ru`
- `<имя-API-метода>`: Имя метода API. Например, `auth.register`
- `<параметры>`: Параметры запроса. Например, `v=1.0&login=example&password=example`
## Auth
WIP\
В будущем будет добавлена авторизация.
## Users
WIP\
В будущем будет добавлена работа с пользователями.
## Modpacks
### `modpacks.create`
Загрузка модпака на сервер.
....
### `modpacks.update`
Обновление информации о модпаке.
....
### `modpacks.get`
Получение информации о модпаке.
Аргументы:
| Название | Тип | Описание | Доступные значения |
|--------------|-------|------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------|
| `modpack_id` | `int` | ID модпака | |
| `fields` | `str` | (Опционально)<br/>Поля, которые нужно вернуть. | - `name`<br/>- `description`<br/>- `version`<br/>- `author`<br/>- `mods`<br/>- `mods_count`<br/>- `created_at`<br/>- `updated_at` |
| `v` | `str` | Версия API | |
Возвращает (JSON):
| Название | Тип | Описание | Пример |
|---------------|--------|-----------------------------------|------------------------------|
| `name` | `str` | Название модпака | `Example Modpack` |
| `description` | `str` | Описание модпака | `This is an example modpack` |
| `version` | `str` | Версия модпака (может быть любым) | `Super Stabe v1.1` |
| `author` | `str` | Автор модпака | `example` |
| `mods` | `list` | Список модов в модпаке | `["mod1", "mod2", "mod3"]` |
| `mods_count` | `int` | Количество модов в модпаке | `3` |
| `created_at` | `str` | Дата создания модпака | `2025-01-01T00:00:00` |
| `updated_at` | `str` | Дата последнего обновления | `2025-04-01T00:00:00` |
### `modpacks.delete`
Удаление модпака.
....