Редактор темы

Dle openapi 17.1-19.1 [beta-free] [by t-modules]

T Modules

Новичок
Регистрация
9 Фев 2026
Сообщения
25
Рейтинг реакций
3
Баллы
3
1/3
Автор темы
T-API v3.1.6 — OpenAPI / REST API для DLE 17.1–19.1
Beta-free релиз от T-Modules

T-API превращает сайт на DLE в полноценный источник структурированных данных.
Плагин добавляет единый REST API, автоматически формирует OpenAPI-документацию, поддерживает дополнительные поля (`xfields`), разделяет публичные и защищённые методы и позволяет использовать DLE как backend для внешних проектов.

Подходит для:
  • SPA и мобильных приложений
  • Telegram-ботов
  • внешних сервисов и парсеров
  • AI-интеграций
  • headless-проектов на базе DLE

Что умеет T-API

  • Единый маршрут ` /api/v1/* `
  • Поддержка DLE 17.1, 17.2, 17.3, 18.0, 18.1, 19.0, 19.1
  • 127 путей, 295 операций, 56 групп реестра
  • OpenAPI 3.0 документация
  • Работа с материалами: список, карточка, batchGet
  • Поддержка `xfields` и связанных данных
  • Системные методы: `status`, `openapi`, `schema`, `diagnostics`
  • Авторизация через `X-Api-Key`
  • Удобная админ-панель: Обзор, Маршруты, Ключи, Объекты, OpenAPI

Как это работает

T-API принимает запросы через:

Код:
/api/v1/

или альтернативно:

Код:
/index.php?do=tapi&route=api/v1

Дальше плагин сам определяет нужный маршрут, обращается к данным DLE, нормализует ответ и отдает клиенту готовый JSON.
За счёт этого DLE можно использовать не только как CMS, но и как backend для любых внешних интерфейсов.

Работа с дополнительными полями (xfields)

Одна из ключевых возможностей T-API — нормальная выдача дополнительных полей DLE во внешнем API.

Вместо внутреннего формата хранения DLE клиент получает уже подготовленный JSON-объект:

Код:
"xfields": {
  "subtitle": "Краткий подзаголовок",
  "genre": "Фантастика",
  "country": "Россия",
  "year": "2026"
}

Это удобно потому что:
  • не нужно вручную разбирать формат DLE
  • фронтенд сразу получает готовые данные
  • xfields легко использовать в карточках, списках и фильтрах
  • упрощаются интеграции с ботами, приложениями и внешними сервисами

Примеры запросов и ответов

Проверка статуса API

Код:
GET /api/v1/system/status

Код:
{
    "state": [
        {
            "status": "ok",
            "time": "1.68 ms"
        }
    ],
    "data": {
        "service": "tapi",
        "version": "3.1.6",
        "routeBase": "/api/v1",
        "dleVersion": "19.1",
        "time": 1776543103,
        "resources": 56,
        "security": {
            "apiKeyHeader": "X-Api-Key"
        }
    }
}

Получение списка материалов

Код:
GET /api/v1/titles?page=1&limit=2

Код:
{
  "success": true,
  "data": [
    {
      "id": 101,
      "title": "Первая новость",
      "xfields": {
        "subtitle": "Краткое описание",
        "country": "Россия",
        "year": "2026"
      }
    },
    {
      "id": 102,
      "title": "Вторая новость",
      "xfields": {
        "subtitle": "Еще одно описание",
        "country": "США",
        "year": "2025"
      }
    }
  ]
}

Получение материала по ID

Код:
GET /api/v1/titles/101

Код:
{
  "success": true,
  "data": {
    "id": 101,
    "title": "Первая новость",
    "short_story": "Краткий текст",
    "full_story": "Полный текст материала",
    "xfields": {
      "subtitle": "Краткое описание",
      "genre": "Фантастика",
      "country": "Россия",
      "year": "2026"
    }
  }
}

Пример защищённого запроса

Код:
GET /api/v1/system/diagnostics
X-Api-Key: your-api-key-here

Код:
{
  "success": true,
  "data": {
    "auth": "ok",
    "userId": 1
  }
}




Если есть идеи, баги, предложения и улучшения — пишите: @tmodulesbot


upload_2026-4-18_13-5-3.png upload_2026-4-18_13-5-57.png upload_2026-4-18_13-7-28.png
 

Вложения

Последнее редактирование:
Всё хорошо, но нет главных скриншотов. В функционале, как устроена система, которая переписывает с дополнительными полями?
 
Автор темы
Всё хорошо, но нет главных скриншотов. В функционале, как устроена система, которая переписывает с дополнительными полями?

T-API при запросе материала читает значение дополнительных полей из стандартного поля DLE, затем парсит внутреннее представление xfields в набор пар ключ на значение и включает результат в JSON-ответ как отдельный объект xfields. То есть плагин не меняет способ хранения дополнительных полей в самом DLE, а выполняет их нормализацию на уровне API-выдачи, чтобы клиент получал уже структурированные данные в удобном для фронтенда и интеграций виде.

В результате клиент получает:

Код:
"xfields": {
  "subtitle": "Краткий подзаголовок",
  "genre": "Фантастика",
  "country": "Россия",
  "year": "2026"
}
 
Последнее редактирование:
круто, но у вас в архиве же только обвязка
это не готовый api

вы пилите или хотите денег за полную версию?
 
Автор темы
круто, но у вас в архиве же только обвязка
это не готовый api

вы пилите или хотите денег за полную версию?
Опенсорс.
жду обратной связи здесь что бы пилить и исправить баги если таковые есть
 

Последние темы Популярные темы

Назад
Сверху