Maksoft.net

Feed API предоставя JSON достъп до съдържанието на Maksoft CMS за външни приложения, сайтове и интеграции. Позволява четене на данни от таблици, филтриране, сортиране и ограничаване на достъпа според нивото на потребителя.

Основен формат

https://maksoft.net/feed/{table_name}?{параметри}
или
https://maksoft.net/feed/{site_id}/{table_name}?{параметри}

Общи параметри

Параметър Тип / Формат Описание Пример
limit integer Максимален брой записи (по подразбиране 50, максимум 10000) limit=100
offset integer Брой записи за прескачане (пагинация) offset=200
debug 0 / 1 Активира debug режим и показва SQL заявката debug=1
order_by string Поле, по което се сортира резултатът order_by=date_modified
order_dir ASC / DESC Посока на сортиране order_dir=DESC
site_id integer Идентификатор на сайта (ако не е зададен в URL) site_id=2

Филтриране на резултатите (WHERE)

API-то поддържа динамично филтриране на резултатите чрез URL параметри. Всички филтри се интерпретират като SQL WHERE условия.

Оператор Описание Пример
= Точно съвпадение status=1
> По-голямо от preview>100
< По-малко от id<500
>= По-голямо или равно preview>=1000
<= По-малко или равно views<=5000
!= / <> Различно от status!=0
~ Текстово съвпадение (LIKE %value%) title~Новини

Операторите могат да бъдат част от името на параметъра (preview>100) или да са URL-кодирани (preview%3E100).

Сортиране

?order_by=date_modified&order_dir=DESC

Може да бъде дефинирано и в mapping конфигурацията:

{
  "order": {
    "field": "sort_n",
    "direction": "ASC"
  }
}

Изчисляеми полета (Computed Fields)

"computed": {
  "url": "feed_pageurl(n)",
  "lastmod": "feed_date('Y-m-d', date_modified)"
}

Тези функции се дефинират във feed.safe.func.php и се прилагат автоматично при извеждането на данните.

Изключване на полета

"fields_to_exclude": ["PageURL", "phpvars"]

Позволява изключване на определени колони от резултата.

Контрол на достъпа

"access_filter": "pages.SecLevel <= {ACCESS_LEVEL}"

Ограничава достъпа според нивото на потребителя ($o_page->_user['AccessLevel']).

Примери

/feed/pages
/feed/pages?status=1
/feed/pages?preview>100
/feed/pages?title~услуги
/feed/pages?order_by=date_modified&order_dir=DESC
/feed/pages?debug=1

Примерен JSON отговор

{
  "meta": {
    "table": "pages",
    "site_id": 2,
    "limit": 50,
    "offset": 0,
    "count": 2,
    "access_level": 0,
    "result": "ok",
    "debug_sql": "SELECT * FROM `pages` WHERE `SiteID`=2 ..."
  },
  "data": [
    {
      "n": "2",
      "name": "Начало",
      "url": "https://www.maksoft.bg/",
      "lastmod": "2025-07-26"
    }
  ]
}

 


Начало /  /  / Документация / Feed API слой за екпорт
Максофт.БГ Максофт.НЕТ BrandIT