Методы для работы со статьями
|
№ |
Метод |
Параметры
|
Возвращает
|
Примеры |
1 |
article.get
Получить информацию о статье
Метод GET
Все параметры указываем в URL
|
Обязательные:
token: str - Токен для интеграции.
id: int - ID статьи, которую получаем.
|
Если успешно:
tags readers editors custom_access read_access edit_access public_url is_favorite is_subscribed can_edit user id user_id title public rendered_body directory_id link_to_id, external_id post_id sort froala plain_text created edited call_placement
Если неуспешно:
error: str - Описание ошибки. |
Пример POSTMAN
Пример Pythonbase_url = 'https://articles.it-solution.ru/extapi/'
token = 'ваш токен для интеграции'
method = 'article.get/'
response = requests.get(base_url + method,
params={
'token': token,
'id': 1,
}).json()
Результат вызова{
"tags": [],
"readers": [{"type": "all"}],
"editors": [],
"custom_access": false,
"read_access": ["U-180608","U2727","UA"],
"edit_access": [],
"public_url": null,
"is_favorite": false,
"is_subscribed": true,
"can_edit": true,
"user": {
"id": 1212,
"kdb_id": 184216,
"name": "Иван Иванов",
"extranet": false
},
"id": 1,
"user_id": 184216,
"title": "Наименование статьи",
"public": false,
"rendered_body": "<p>Тело (текст) статьи</p>",
"directory_id": 2,
"link_to_id": null,
"external_id": null,
"post_id": "",
"sort": 500,
"froala": true,
"plain_text": false,
"created": "2024-09-09T10:45:18.271Z",
"edited": "2024-09-09T10:45:18.365Z",
"call_placement": false
}
|
2 |
article.save
Создать или изменить статью
Метод POST
Все параметры указываем в Body
|
Обязательные:
token: str - Токен для интеграции.
title: str - Название статьи.
Дополнительные:
id: int - ID статьи, которую изменяем (если не указан, создаётся новая статья).
link_to_id: int external_id: uuid body: text directory_id: int sort: int tags: str tags_delimiter: str force: bool plain_text: bool release_lock: bool
|
Если успешно:
result: str:
"created" - статья создана;
"saved" - статья изменена.
article: dict - такой же формат данных, как в результате метода articles.get.
Если неуспешно:
error: str - Описание ошибки.
|
Пример POSTMAN
Пример Pythonbase_url = 'https://articles.it-solution.ru/extapi/'
token = 'ваш токен для интеграции'
method = 'article.save/'
response = requests.post(base_url + method,
data={
'token': token,
'title': 'Название статьи',
}).json()
Результат вызова{
"result": "created",
"article": {/* аналогично article.get */}
}
|
3 |
article.delete
Удалить статью
Метод POST
Все параметры указываем в Body
|
Обязательные:
token: str - Токен для интеграции.
id: int - ID удаляемой статьи.
Дополнительные:
force: bool: - Форсированное удаление админом (обход блокировок).
from_bin: bool - Удалить из корзины.
|
Если успешно:
result: str - "ok".
Если неуспешно:
error: str - Описание ошибки.
|
Пример POSTMAN
Пример Pythonbase_url = 'https://articles.it-solution.ru/extapi/'
token = 'ваш токен для интеграции'
method = 'article.delete/'
response = requests.post(base_url + method,
data={
'token': token,
'id': 1,
}).json()
Результат вызова{
"result": "ok"
}
|
Методы для работы с разделами
|
№
|
Метод |
Параметры
|
Возвращает |
Примеры |
1
|
directory.save
Создать или изменить директорию
Метод POST
Все параметры указываем в Body
|
Обязательные:
token: str - Токен для интеграции.
name: str - Имя директории.
Дополнительные:
id: int - ID директории, которую изменяем (если не указан, создаётся новая директория).
parent_id: int - ID родительской директории.
sort: int icon_name: str description: text for_templates: bool required_to_read: bool
|
Если успешно:
result: str - "ok".
created: bool - Создана ли новая директория.
id: int - ID директории.
Если неуспешно:
error: str - Описание ошибки.
|
Пример POSTMAN
Пример Pythonbase_url = 'https://articles.it-solution.ru/extapi/'
token = 'ваш токен для интеграции'
method = 'directory.save/'
response = requests.post(base_url + method,
data={
'token': token,
'name': 'Имя директории'
})
Результат вызова{
"result": "ok",
"created": true,
"id": 154640
}
|
2
|
directory.delete
Удалить пустую директорию
Метод POST
Все параметры указываем в Body
|
Обязательные:
token: str - Токен для интеграции.
Дополнительные:
dirs: list - Список ID удаляемых директорий.
articles: list - Список ID удаляемых статей.
force: bool - форсированное удаление админом (обход блокировок).
|
Если успешно:
success: bool - true.
Если неуспешно:
error: str - Описание ошибки.
|
Пример POSTMAN
Пример Pythonbase_url = 'https://articles.it-solution.ru/extapi/'
token = 'ваш токен для интеграции' method = 'directory.delete/'
response = requests.post(base_url + method,
json={
'token': token,
'dirs': [154650],
})
Результат вызова{
"success": true
}
|
3
|
directory.set.access
Установить права доступа для директории
Метод POST
Все параметры указываем в Body
|
Обязательные:
token: str - Токен для интеграции.
В URL необходимо указать ID нужной директории после названия метода:
/directory.set.access/{{directory_id}}/
Дополнительные:
read: list - Список кодов групп Битрикс, которым нужно дать права на чтение директории.
edit: list - Список кодов групп Битрикс, которым нужно дать права на изменение директории.
Примеры кодов групп в Битрикс, которые обрабатываются Базой знаний:
UA - Все пользователи;
U1 - Пользователь с ID = 1;
G1 - Группа пользователей с ID = 1;
D1 - Сотрудники отдела с ID = 1;
DR1 - Сотрудники отдела с ID = 1 и его подотделов;
SG1 - Группа соцсети с ID = 1.
force: bool - форсированная установка прав админом (обход блокировок).
|
result: str:
"ok" - права установлены;
"will-lose-access" - права не установлены, так как это повлечёт потерю прав у пользователя, выполняющего запрос.
read_access: list - Список кодов групп Битрикс, которым сейчас даны права на чтение директории.
edit_access: list - Список кодов групп Битрикс, которым сейчас даны права на изменение директории.
Если ошибка:
error: str - Описание ошибки.
|
Пример POSTMAN
Пример Pythonbase_url = 'https://articles.it-solution.ru/extapi/'
token = 'ваш токен для интеграции'
directory_id = 154640
method = f'directory.set.access/{directory_id}/'
response = requests.post(base_url + method,
json={
'token': token,
'read': ['UA'],
'edit': ['UA'],
})
Результат вызова{
"result": "ok",
"read_access": ["UA"],
"edit_access": ["UA"],
}
|
Методы для работы событиями
|
№ |
Метод |
Параметры |
Возвращает |
Примеры |
1
|
event.list
Получить список событий
Метод GET
Все параметры указываем в URL
|
Обязательные:
token: str - Токен для интеграции.
Дополнительные:
start_id: int - Если указан, то будут получены события с ID не меньше указанного.
type: str - Если указан, то будут получены события с типом, равным указанному.
|
Если успешно:
events: list - Список с объектами событий формата: { "id": int - ID события. "type": str - Тип события. "dt": str - Дата/время события. "data": dict - Данные события. }
Формат объекта data: { "user_id": int - ID пользователя. "article_id": int - ID статьи. }
Список будет отсортирован по убыванию ID события, если не указан start_id. Если же указан - сортировка будет по возрастанию ID.
За один вызов может быть выдано не более 100 событий.
Если неуспешно:
error: str - Описание ошибки.
|
Пример POSTMAN
Пример Pythonbase_url = 'https://articles.it-solution.ru/extapi/'
token = 'ваш токен для интеграции'
method = 'event.list/'
response = requests.get(base_url + method,
json={
'token': token,
})
Результат вызова{
"events": [
{
"id": 5765353,
"type": "ARTICLE_VIEW",
"dt": "2024-09-19T15:01:35.450Z",
"data": {
"user_id": 148705,
"article_id": 255096
}
}, … ]
}
|