dd
# AJAX API
**Путь к API**:
`/ajax/api/`
## Поиск
### Параметры запроса
**Метод**: GET
**Параметр действия action**: search
**Параметры [data]**:
* q - поисковая строка
### Пример запроса
http://test.chetv.ru/ajax/api/?action=search&data[q]=%D1%82%D0%B5%D1%81%D1%82
### Пример ответа
~~~
{
result: true,
data: {
projects: { },
videos: {
items: [
{
title: "Автотест в Масловке. 10 выпуск. УАЗ",
url: "/show/avtotest_v_maslovke/2_sezon/10_vyipusk_uaz",
seria: "10",
season: "2"
},
{
title: "Автотест в Масловке. 9 выпуск. Трактор",
url: "/show/avtotest_v_maslovke/2_sezon/9_vyipusk_traktor",
seria: "9",
season: "2"
}
]
},
films: { },
articles: {
items: [
{
title: "Тест. Что ты знаешь из истории авто?",
url: "/novosti/test_chto_ty_znaesh_iz_istorii_avto/"
},
{
title: "Тест. Сможешь ли ты выжить в фильме ужасов?",
url: "/novosti/test_smozhesh_li_ty_vyzhit_v_filme_uzhasov/"
}
]
}
}
~~~
## Получение списка комментариев
### Параметры запроса
**Метод**: GET
**Параметр действия action**: get_comments
**Параметры [data]**:
* post_id - id элемента, к которому получаем список комментариев
* on_page - количество элементов на странице
* page - номер страницы
### Пример запроса
http://test.chetv.ru/ajax/api/?action=get_comments&data[post_id]=12930&data[on_page]=5&data[page]=1
~~~
{
result: true,
data: {
comments: [
{
user: {
image: null,
name: "Имя Фамилия"
},
id: "373230",
text: "asd",
date: 1494408944
},
{
user: {
image: null,
name: "Имя Фамилия"
},
id: "373231",
text: "asd",
date: 1494409012
}
]
}
}
~~~
## Добавление комментария
### Параметры запроса
**Метод**: POST
**Параметр действия action**: add_comment
**Параметры [data]**:
* post_id - id элемента, к которому получаем список комментариев
* text - текст комментария
* token - токен. Берется из meta тега **che_token**.
Пример:
`<meta name="che_token" content="123456789">`
### Пример запроса
~~~
POST /ajax/api/ HTTP/1.1
HOST: test.chetv.ru
content-type: application/x-www-form-urlencoded;charset=UTF-8
action=add_comment&data[post_id]=12930&data[text]=ololol&data[token]=asdasd
~~~
### Возможные ошибки
* Too short message - пустое сообщение
* Only authorized users allowed to send comment - попытка добавить комментарий неавторизованным пользователем
* This method isn't allowed - неверный http метод
## Возможные общие ошибки:
* Bad action param - неверный параметр действия
* Bad data param - неверный параметр data
* There aren't any approved params - не передано ни одного верного параметра [data]
* Undefined required param: %param_name% - не передан обязательный параметр [param_name]