Cодержание
Основные положения REST API
REST API lentainform позволяет интегрировать внешние приложения с системой интернет-рекламы lentainform.API дает возможность извлекать, добавлять и изменять данные. Практически каждым объектом в lentainform (будь то клиент, рекламная компания, тизер и т.д.) можно управлять с помощью API.Запрос lentainform REST API – это HTTP запрос, в котором, с помощью путей в URL задается объект для выполнения действия, а с помощью параметров передаются необходимые данные. lentainform API является «RESTful Web API». Параметры запросов являются регистрозависимыми. API использует следующие команды REST:
- GET
- PUT
- PATCH
- POST
- DELETE
Эти команды соответствуют определенным действия внутри системы lentainform.
| Команда | Действие | Описание |
| POST | Создать | Создание новый элемента (например, тизера) |
| GET | Получить (чтение) | Получить элемент или коллекцию элементов (например, список рекламных кампаний) |
| PUT | Обновить | Пересоздать существующий элемент или коллекцию элементов |
| PATCH | Изменить | Изменить определенные свойства элемента |
| DELETE | Удалять | Удалить элемент или коллекцию элементов (например, переместить тизер в корзину) |
| Важно! POST и PUT не являются взаимозаменяемыми. Каждая из команд выполняет свою определенную функцию. |
Идентификация
Для идентификации в REST API lentainform используется уникальный токен, состоящий из 32 символов и передаваемый в запросе клиента.Для получения действующего токена клиент должен воспользоваться специальной функцией API
| Каждый запрос, отправленный к REST API lentainform обязательно должен содержать токен API. |
Ответ REST API lentainform
В ответ на запрос к REST API сервер всегда возвращает HTTP ответ скодомсостояния, зависящего от результата запроса.
| Код ответа | Описание |
| 200 OK | Запрос был успешно обработан. |
| 400 Bad Request | Синтаксическая ошибка |
| 404 Not Found | Элемент или страница не найдены |
Формат возвращаемых данных
Возвращаемые данные могут быть в формате JSON, либо — XML.По умолчанию используется формат JSON.Для задания формата, в котором будут возвращаться данные, используется заголовок запроса. Клиент отсылает заголовок Accept, в котором указывает желаемый формат ответа:
Accept: application/xmlили
Accept: application/jsonОписание формата ответа отправляется в ответе в заголовке Content-Type.Возвращаемые в ответе данные, представляют собой JSON строку (http://json.org/json-ru.html), которая в общем виде, выглядет следующим образом:
{
"элемент_1":"значение_элемента_1",
"элемент_2":"значение_элемента_2",
"элемент_3": {
"свойство_1_элемента_3":"значение_свойства_1_элемента_3",
"свойство_2_элемента_3": [
"значение_1_свойства_2_элемента_3",
"значение_2_свойства_2_элемента_3"
]
},
. . . .
}
Если в ходе выполнения запроса произошла ошибка — возвращается описание соответствующей ошибки, например:
{
"errors": [
" [
_описание_ошибки_
] "
]
}
Работа с клиентами
Получение действующего токена клиента
| Метод | POST |
| URL | api.lentainform.com/v1/auth/token |
Передаваемые параметры:
| Параметр | Значение |
| Адрес электронной почты клиента, указанный при регистрации в системе lentainform | |
| password | Пароль клиента, полученный при регистрации |
Возвращаемый ответ:
{
"token":"_текущий_токен_",
"refreshToken":"_токен_для_обновления_"
"idAuth":"_идентификатор_учетной_записи_клиента_"
}_текущий_токен_
используется для идентификации клиента;
_токен_для_обновления_— будет использован в последующих версиях для обновления просроченного текущего токена.
Работа с информерами
Пользовательские отчеты
| МЕТОД | GET |
| URL | api.lentainform.com/v1/ publishers/{authId}/widget-custom-report |
Передаваемые параметры (обязательные параметры выделены красным):
| Параметр | Значение |
| token | токен клиента |
| dateInterval |
Интервал, за который нужно получить статистику. Допустимые значения:
|
| siteId | ID сайта клиета |
| dimensions |
список полей по которым производить группировку. Может принимать множество значений разделенных запятой. Допустимые значения:
|
| metrics |
список полей для извлечения показателей. Может принимать множество значений разделенных запятой. Допустимые значения:
|
| widgetId | ID композитного информера |
| deviceType | тип устройства (desktop, tablet, mobile) |
| sortBy | сортировка по полю (может принимать одно из переданых значений dimensions или metrics), если не передан, сортирует по первому параметру из dimensions |
| sortMethod | направление сортировки (asc, desc), если не передан то применяется ASC направление |
| timeZone | Смещение по времени отображаемой статистики в отношении указанной таймзоны. Список доступных таймзон здесь ( TZ ). Если параметр не передан, будет установлена таймзона America/Los_Angeles |