API (программный интерфейс приложения) — описание способов, которыми один сервис может взаимодействовать с другим сервисом.
Назначение API упрощает процесс взаимодействия со сторонними сервисами, абстрагируя базовую реализацию и предоставляя только объекты или действия, необходимые разработчику. По сути API предоставляет для работы набор функций, которые позволяют производить действия внутри системы через удалённые сервисы.
Текущая версия — 1. Базовый URL для методов API Sensei:
https://api.sensei.plus/v1/ Формат ответов: json
Каждый ответ всегда содержит три параметра:
status: {статус ответа}
message: {текст ответа}
data: {данные ответа}
Ниже будут представлены примеры обращения к API на js.
По аналогии можно использовать любой язык программирования, отправляя GET и POST запросы.
Статусы ответов
200: успешно
Получение данных для авторизации: Авторизация осуществляется по API-ключу Sensei и ID аккаунта amoCRM. Для получения API-ключа необходимо обратиться в службу поддержки, написав на почту help@sensei.plus с почты администратора данного аккаунта. В теле письма необходимо также указать ID аккаунта amoCRM. В ответном письме Вам будет предоставлен API-ключ Sensei. Время обработки таких заявок составляет до 24 часов.
В заголовках запросов следует указывать следующие параметры:
Content-Type — со значением "application/json"
X-Auth-Sensei-Token — API-ключ Sense
X-Account — ID аккаунта amoCRM
Доступные методы API:
1. Получение списка процессов
2. Запуск процесса
3. Завершение задачи с заданным результатом
4. Завершение процесса
- Получение списка процессов:GET https://api.sensei.plus/v1/process/list
- Запуск процесса
POST https://api.sensei.plus/v1/process/start/(id процесса)
2.1 Запуск процесса. Тело запроса:
{
"data": [
{"entity_type":1, "entity_id":(Id сделки)}
]
}
2.2 Запуск процесса с заданными локальными параметрами. Тело запроса:
{
"data": [
{
"entity_id": "33654053",
"entity_type": "1"
}
],
"param_values": {
"local": [
{"name": "name1", "value": "value1"},
{"name": "name2", "value": "value2"},
{"name": "name3", "value": "value3"}
]
}
}
- Завершение задачи с заданным результатом
POST https://api.sensei.plus/v1/element/task/complete{
"entity_id": (id сделки),
"entity_type": 1,
"result_caption": "результат",
"task_id": (id задачи)
}
- Завершение процессаPOST https://api.sensei.plus/v1/process/stop/(id процесса)
{
"close_tasks": true,
"data":[
{"entity_type":1, "entity_id":(id сделки)}
]
}
Параметр "close_tasks" не является обязательным. В случае его указания так же завершится задача по процессу