FutureMinds API Documentation
Добро пожаловать в документацию API FutureMinds от Pixeltoo Lab. Этот API позволяет взаимодействовать с постами, комментариями и метриками социальной платформы FutureMinds.
Обзор
API предоставляет доступ к функциональности платформы FutureMinds. Вы можете:
- Получать списки постов или отдельные посты (в JSON или HTML).
- Искать посты по заголовкам, содержимому и темам.
- Просматривать и добавлять комментарии.
- Увеличивать счётчик просмотров.
- Ставить/снимать лайки.
Базовый URL: https://futureminds.pixeltoo.ru/api/postAPI.php
API работает в двух режимах:
- Системный режим: для внутренних запросов через куки (сессия пользователя).
- API-режим: для внешних запросов через API-ключи.
User-Agent
(например, MyApp/1.0
) для идентификации клиента, хотя он не обязателен.
Системный режим
Системный режим используется для внутренних запросов, когда пользователь авторизован на сайте futureminds.pixeltoo.ru
. Авторизация проверяется через куки сессии (PHPSESSID
).
Особенности
- Не требует API-ключа.
- Для POST-запросов нужен CSRF-токен.
- Действия
get_posts
иget_post
возвращают HTML по умолчанию.
CSRF-токен
CSRF-токен генерируется автоматически в сессии и должен передаваться в POST-запросах (поле csrf_token
).
Пример системного запроса
API-режим
API-режим используется для внешних запросов и требует API-ключ. CSRF-токены не нужны.
Получение API-ключа
- Войдите на
https://futureminds.pixeltoo.ru/login.php
. - Перейдите на
https://futureminds.pixeltoo.ru/api/api-keys.php
. - Нажмите "Сгенерировать ключ" или скопируйте существующий.
- Храните ключ в безопасности!
Использование ключа
Передавайте ключ в заголовке:
Пример запроса
{"success": false, "error": "Invalid API key"}
.
Эндпоинты
API поддерживает следующие действия:
Действие | Метод | Требуется авторизация | Описание |
---|---|---|---|
get_all_posts |
GET | Нет | Получить все посты (JSON) |
get_posts |
GET | Нет | Получить посты с пагинацией (HTML/JSON) |
get_post |
GET | Нет | Получить конкретный пост (HTML/JSON) |
get_comments |
GET | Нет | Получить комментарии к посту (JSON) |
search_posts |
GET | Нет | Поиск постов по запросу (JSON) |
view |
POST | Нет | Увеличить счётчик просмотров (JSON) |
like |
POST | Да | Поставить/убрать лайк (JSON) |
add_comment |
POST | Да | Добавить комментарий (JSON) |
delete_comment |
POST | Да | Удалить комментарий (JSON) |
get_all_posts
Возвращает все посты в порядке от новых к старым (JSON).
Параметры
Нет параметров.
Примеры запросов
Настройте в Postman:
- Метод: GET
- URL:
https://futureminds.pixeltoo.ru/api/postAPI.php?action=get_all_posts
Тестирование
Пример ответа
get_posts
Возвращает посты с пагинацией (по 15 постов). В системном режиме — HTML, в API-режиме — JSON (или HTML с параметром format=html
).
Параметры
Параметр | Тип | Обязательный | Описание |
---|---|---|---|
last_post_id |
integer | Нет | ID последнего поста для пагинации |
format |
string | Нет | Формат ответа: json (по умолчанию) или html |
Примеры запросов
Тестирование
Пример ответа (JSON)
Пример ответа (HTML, системный режим)
get_post
Возвращает данные одного поста. В системном режиме — HTML, в API-режиме — JSON (или HTML с format=html
).
Параметры
Параметр | Тип | Обязательный | Описание |
---|---|---|---|
post_id |
integer | Да | ID поста |
format |
string | Нет | Формат ответа: json или html |
Примеры запросов
Тестирование
Пример ответа (JSON)
Пример ответа (HTML)
get_comments
Возвращает комментарии к посту (JSON).
Параметры
Параметр | Тип | Обязательный | Описание |
---|---|---|---|
post_id |
integer | Да | ID поста |
Примеры запросов
Тестирование
Пример ответа
search_posts
Ищет посты по заголовкам, содержимому и темам (JSON).
Параметры
Параметр | Тип | Обязательный | Описание |
---|---|---|---|
query |
string | Да | Поисковый запрос (мин. 2 символа) |
Примеры запросов
Тестирование
Пример ответа
view
Увеличивает счётчик просмотров поста (JSON).
Параметры
Параметр | Тип | Обязательный | Описание |
---|---|---|---|
post_id |
integer | Да | ID поста |
csrf_token |
string | Да (системный режим) | CSRF-токен |
Примеры запросов
Тестирование
Пример ответа
like
Ставит или убирает лайк для поста. Требуется авторизация.
Параметры
Параметр | Тип | Обязательный | Описание |
---|---|---|---|
post_id |
integer | Да | ID поста |
liked |
boolean | Да | true (убрать лайк), false (поставить) |
csrf_token |
string | Да (системный режим) | CSRF-токен |
Примеры запросов
Тестирование
Пример ответа
add_comment
Добавляет комментарий к посту. Требуется авторизация.
Параметры
Параметр | Тип | Обязательный | Описание |
---|---|---|---|
post_id |
integer | Да | ID поста |
text |
string | Да | Текст комментария (макс. 1000 символов) |
csrf_token |
string | Да (системный режим) | CSRF-токен |
Примеры запросов
Тестирование
Пример ответа
delete_comment
Удаляет комментарий (только автор). Требуется авторизация.
Параметры
Параметр | Тип | Обязательный | Описание |
---|---|---|---|
comment_id |
integer | Да | ID комментария |
csrf_token |
string | Да (системный режим) | CSRF-токен |