Различия
Здесь показаны различия между двумя версиями данной страницы.
— |
ua:info_api [2023/04/17 04:53] (текущий) sparklingsky создано |
||
---|---|---|---|
Строка 1: | Строка 1: | ||
+ | {{indexmenu_n>40}} | ||
+ | ===== Інформаційна API ===== | ||
+ | В доменів є інформаційна API, за допомогою якої можна отримати інформацію про всі активні та майбутні ігри на домені у форматі JSON. Це корисно для розробки сторонніх сервісів, які дублюють інформацію про домен в інші місця (Telegram, сайти, тощо). | ||
+ | ==== Точка входу ==== | ||
+ | **api_games_list.php** | ||
+ | |||
+ | **До запиту слід додавати GET параметр json=1. Тоді результат приходитиме у форматі JSON.** | ||
+ | |||
+ | Приклад запиту: | ||
+ | [[https://game.qeng.org/api_games_list.php?json=1]] | ||
+ | |||
+ | ==== Формат результату ==== | ||
+ | <code JavaScript> | ||
+ | [{Гра}, {Гра}, ...] | ||
+ | </code> | ||
+ | Тут Гра - це обʼєкт наступного виду: | ||
+ | <code JavaScript> | ||
+ | { | ||
+ | "id": "3287", | ||
+ | /* ID гри */ | ||
+ | "start_time": "2022-07-25 15:00:00", | ||
+ | /* Час початку гри у читабельному форматі */ | ||
+ | "end_time": "2022-07-27 15:00:00", | ||
+ | /* Час завершення гри у читабельному форматі */ | ||
+ | "start_time_f": "1658750400", | ||
+ | /* Час початку гри у форматі unix time */ | ||
+ | "end_time_f": "1658923200", | ||
+ | /* Час завершення гри у форматі unix time */ | ||
+ | "name": "QD10: Операція болт, або інші пригоди гаєчки", | ||
+ | /* Назва гри. Спецсимволи у форматі HTML entity, наприклад, " */ | ||
+ | "type": "1", | ||
+ | /* Переможець визначається: | ||
+ | "0": Бали | ||
+ | "1": Час | ||
+ | */ | ||
+ | "kind": "1", | ||
+ | /* Тип гри: | ||
+ | "0": other | ||
+ | "1": green | ||
+ | "2": yellow | ||
+ | "3": red | ||
+ | "4": virtual | ||
+ | */ | ||
+ | "single": "0", | ||
+ | /* Одиночна чи командна: | ||
+ | "0": Командна | ||
+ | "1": Одиночна | ||
+ | */ | ||
+ | "description": "PS: Стежте за оновленнями.<\/strong><\/p>\r\n", | ||
+ | /* Опис гри */ | ||
+ | "authors": [ | ||
+ | /* Перелік авторів */ | ||
+ | { | ||
+ | "uid": "2130", | ||
+ | /* ID гравця */ | ||
+ | "username": "StelZ" | ||
+ | /* Нік гравця */ | ||
+ | } | ||
+ | ], | ||
+ | "teams": [ | ||
+ | /* Перелік команд, які подали заявки на гру. Для одиночних ігор - перелік гравців, які подали заявки. */ | ||
+ | { | ||
+ | "id": "201", | ||
+ | /* ID команди */ | ||
+ | "name": "911 Team", | ||
+ | /* Назва команди */ | ||
+ | "status": "0" | ||
+ | /* Статус заявки: | ||
+ | "0": Подали заявку | ||
+ | "1": Прийняті у гру | ||
+ | "2": Прийняті для тесту | ||
+ | */ | ||
+ | }, | ||
+ | { | ||
+ | "id": "200", | ||
+ | "name": "Nostra sQuadra", | ||
+ | "status": "0" | ||
+ | }, | ||
+ | ] | ||
+ | } | ||
+ | </code> | ||
+ | |||
+ | ===== Інформаційний Telegram бот ===== | ||
+ | Отримати інформацію про зміни на сайті також можна за допомогою [[ua:info_api:tg_bot|Інформаційного Telegram бота]] |