Omnidesk API
Введение
API — это интерфейс для управления каким-либо программным обеспечением извне. Подобное управление осуществляется с помощью набора готовых классов, процедур и функций. Зачастую API используют для интеграции одного сервиса с другим.
API Омнидеска позволяет удаленно: считывать, изменять, добавлять и удалять данные из вашего аккаунта. Вот лишь небольшой перечень его возможных применений:
- подключение собственной формы для создания обращений;
- получение списка всех обращений;
- изменение параметров обращений;
- получение списка пользователей;
- блокировка пользователей;
- создание и редактирование групп;
- отключение и удаление сотрудников.
По умолчанию во многих методах используется поиск. Допустим, нужно найти пользователя с email-адресом me@gmail.com. В выборку попадёт не только этот ящик, но и другие ящики (abcme@gmail.com, qweme@gmail.com), которые могут быть нам не нужны. Чтобы искать именно строку, а не включение, используйте символ ^. Примеры: ^string^ ищет строку; ^string найдет строки, которые начинаются на string; string^ найдет строки, которые заканчиваются на string.
Мы будем постоянно добавлять новые API-методы, чтобы покрыть все ваши потребности в плане интеграции с Омнидеском. Если нужный функционал ещё не представлен в API, напишите нам. Наиболее востребованные методы будут реализованы в первую очередь.
Ограничение на количество запросов — 500 запросов в час на активного сотрудника (за исключением лёгких),
но не менее 1000 запросов в час.
К примеру, если у вас 15 активных сотрудников, лимит вашего аккаунта — 7500 запросов в час.
При превышении лимита выдаётся сообщение с ошибкой.
Количество оставшихся API запросов при любом запросе можно отследить в заголовках ответа через параметр: api_calls_left.
Рекомендуем ознакомиться с примерами использования API на PHP.
Аутентификация
Перед тем, как вы сможете удаленно управлять своим аккаунтом через API, нужно пройти аутентификацию. Она производится по API-ключу, но дополнительно нужно указать email-адрес сотрудника, так как некоторые методы требуют определения сотрудника.
Пример запроса
curl -u [staff_email]:[api_key] -H "Content-Type: application/json" -X GET https://[domain].omnidesk.ru/api/cases.json
Как получить API-ключ?
- Войдите в аккаунт администратора
- Перейдите в раздел «Настройки», подраздел «API»
- Нажмите на ссылку «добавить API-ключ»
Общие правила запросов
Чтобы просмотреть, передать или изменить данные, в запросе нужно использовать идентификаторы или «URI». URL любого API-запроса составляется следующим образом:
https://[domain].omnidesk.ru/api/[URI]
К примеру, для получения списка обращений аккаунта robotsrules запрос должен быть следующим:
https://robotsrules.omnidesk.ru/api/cases.json
Методы, используемые при передаче параметров запроса
Метод | Назначение |
POST | Добавление новых данных |
GET | Получение существующих данных |
PUT | Изменение существующих данных |
DELETE | Удаление сущесвующих данных |
Уровень доступа к данным
При аутентификации, помимо API-ключа, вы указываете email-адрес сотрудника. Соответственно, уровень доступа к данным и возможность их изменения зависит от прав сотрудника.
Если у выбранного сотрудника ограниченный доступ, вы не сможете получить список всех обращений. Поэтому зачастую целесообразно указывать email-адрес сотрудника с полным доступом.
https://[domain].omnidesk.ru/api/cases.json POST
Создание нового обращения.
ПАРАМЕТРЫ
Название | Тип | Описание |
user_email * | string | Валидный email-адрес пользователя (обязателен, если нет телефона) |
user_phone * | string | Валидный телефон пользователя (обязателен, если нет email-адреса) |
user_whatsapp_phone * | string | Валидный телефон пользователя, к которому привязан аккаунт в WhatsApp (обязателен, если нет email-адреса или телефона) |
user_telegram_data * | string | Username или валидный телефон пользователя, к которому привязан аккаунт в Телеграм (обязателен, если нет email-адреса или телефона) |
user_full_name | string | Полное имя пользователя |
user_company_name | string | Компания пользователя |
user_custom_id | string | ID, по которому вы сами определяете пользователя. Данный параметр нужно передавать только при создании обращения по кастомному каналу (обязателен, если нет email-адреса/телефона) |
initiator_id | int | ID сотрудника, от имени которого создаётся обращение. При этом на почту пользователя отправляется письмо. Если этот параметр не задан, обращение создаётся от имени пользователя. |
staff_id | int | ID ответственного сотрудника. |
cc_emails | array | Валидные email-адреса, которые будут добавлены в копию создаваемого обращения. Не более 30 штук. |
bcc_emails | array | Валидные email-адреса, которые будут добавлены в скрытую копию создаваемого обращения. Не более 30 штук. |
subject * | string | Тема обращения |
content * | string | Содержание обращения |
content_html * | string | HTML содержание обращения (имеет больший приоритет, чем текстовое содержание) |
created_at | number | Этот параметр позволяет указать время создания обращения (строковое значение или timestamp). Используйте его, если хотите перенести данные из сторонних сервисов и создать обращение задним числом.
При наличии этого параметра в запросе обращение не проверяется правилами для входящих обращений. |
group_id | number | ID группы, которая будет выставлена для создаваемого обращения |
status | string | Статус обращения (возможные варианты: open, waiting, closed) |
priority | string | Приоритет обращения (возможные варианты: low, normal, high и critical) |
language_id | number | Язык пользователя (при передаче заменяет язык по умолчанию) |
custom_fields | array | Кастомные поля |
labels | array | Метки обращения |
channel | string | ID кастомного канала (к примеру, cch101) |
case_email_id | int | ID email-адреса, с которого будет отправлено письмо пользователю. Этот же ящик в итоге будет выставлен в поле «Отвечать с адреса». Чтобы не отправлять письмо пользователю, выставите значение «-1». |
ЗАПРОС
{ "case" : { "user_email" : "user@domain.ru", "user_whatsapp_phone" : "+79261234567" "user_full_name" : "User's full name", "subject" : "I need help", "content" : "I need help", "language_id" : 2, "custom_fields" : { "cf_25" : "some text", "cf_30" : "another field", }, "labels" : [101, 102] } }
ОТВЕТ
{ "case" : { "case_id" : 2000, "case_number" : "664-245651", "subject" : "I need help", "user_id" : 123, "staff_id" : 22, "group_id" : 44, "status" : "waiting", "priority" : "normal", "channel" : "web", "recipient" : "user@domain.ru", "cc_emails" : "", "bcc_emails" : "", "deleted" : false, "spam" : false, "created_at" : "Mon, 05 May 2014 00:15:17 +0300", "updated_at" : "Tue, 23 Dec 2014 10:55:23 +0200", "language_id" : 2, "custom_fields" : { "cf_25" : "some text", "cf_30" : "another field", }, "labels" : [101, 102] } }
Пример кода
curl -u [staff_email]:[api_key] -H "Content-Type: application/json" -X POST -d '{ "case": { "user_email":"user@domain.ru", "user_full_name":"User\u0027s full name", "subject":"I need help", "content":"I need help", "language_id":2, "custom_fields":{"cf_25":"some text", "cf_30":"another field"}, "labels":[101, 102] }}' https://[domain].omnidesk.ru/api/cases.json
https://[domain].omnidesk.ru/api/cases.json POST
Создание нового обращения с файлами.
Важно! Содержание отправляемого запроса должно быть в виде multipart/form-data.
ОТВЕТ
{ "case" : { "case_id" : 2000, "case_number" : "664-245651", "subject" : "I need help", "user_id" : 123, "staff_id" : 22, "group_id" : 44, "status" : "waiting", "priority" : "normal", "channel" : "web", "recipient" : "user@domain.ru", "cc_emails" : "", "bcc_emails" : "", "deleted" : false, "spam" : false, "created_at" : "Mon, 05 May 2014 00:15:17 +0300", "updated_at" : "Tue, 23 Dec 2014 10:55:23 +0200", "language_id" : 2, "custom_fields" : { "cf_25" : "some text", "cf_30" : "another field", }, "labels" : [101, 102] } }
Пример кода
curl -u [staff_email]:[api_key] -F "case[attachments][0]=@/path/to/file1.ext" -F "case[attachments][1]=@/path/to/file2.ext" -F "case[content]=I need help" -F "case[subject]=I need help" -F "case[user_email]=user@domain.ru" -F "case[user_full_name]=FullName" -F "case[language_id]=2" -F "case[custom_fields][cf_44]=3" -X POST https://[domain].omnidesk.ru/api/cases.json
https://[domain].omnidesk.ru/api/cases.json GET
Просмотр списка обращений.
Если в запросе не указывать параметры page и limit, отобразятся первые сто обращений.
ПАРАМЕТРЫ
Название | Тип | Описание |
page | number | Номер страницы (положительное целое число) |
limit | number | Лимит обращений на странице (целое число от 1 до 100) |
user_id | array/number | ID пользователя (выборка всех обращений конкретного пользователя) |
user_email | array/string | Поиск обращений по email-адресу пользователя (не менее 4-х символов) |
user_phone | array/string | Поиск обращений по номеру телефона пользователя (не менее 4-х символов) |
subject | string | Поиск обращений по определённой теме (не менее 4-х символов) |
staff_id | array/number | ID сотрудника (выборка всех обращений, в которых указанный сотрудник является ответственным). Выставите значение 0, если хотите получить список обращений без ответственного. |
group_id | array/number | ID группы (выборка всех обращений, в которых выбрана данная группа) |
channel | array/string | Канал обращения (возможные варианты: email, chat, twitter, facebook, idea,cch123) |
priority | array/string | Приоритет обращения (возможные варианты: low, normal, high, critical) |
filter | string | ID фильтра (выборка всех обращений, которые попадают под данный фильтр) |
status | array/string | Статус обращения (возможные варианты: open, waiting, closed) |
custom_fields | array |
Дополнительные поля данных. Фильтровать можно как по полям обращения, так и по полям пользователя. Достаточно лишь указать ID поля. В зависимости от типа поля, по которому выполняется фильтрация обращений, поиск осуществляется по-разному: - «текстовое поле» или «текстовая область» — производится поиск включения передаваемой строки; - «чекбокс» — производится поиск по наличию/отсутствию флага в зависимости от передаваемого значения; - «список» — производится поиск по ключу поиск, равному передаваемому значению. |
labels | array | Метки обращений для фильтрации |
show_merged_cases | boolean | Отображение поглощённых обращений. По умолчанию используется значение false. Пропишите параметр со значением true, чтобы в результатах были поглощённые обращения. |
show_active_chats | boolean | Отображение активных чатов. По умолчанию используется значение false. Пропишите параметр со значением true, чтобы в результатах были активные чаты. |
sort | string |
- updated_at_desc — по времени последнего изменения (от новых к старым); - updated_at_asc — по времени последнего изменения (от старых к новым); - created_at_desc — по времени создания обращения (от новых к старым); - created_at_asc — по времени создания обращения (от старых к новым); - response_asc — по времени последнего ответа обращения (от старых к новым); - response_desc — по времени последнего ответа обращения (от новых к старым); - priority_desc — по приоритету обращения (критические в начале); - priority_asc — по приоритету обращения (низкие в начале); - status_asc — по статусу обращения (открытые в начале); - status_desc — по статусу обращения (закрытые в начале). |
from_time | string / int | Начало периода для фильтра по дате добавления обращения (строковое значение или timestamp) |
to_time | string / int | Конец периода для фильтра по дате добавления обращения (строковое значение или timestamp) |
from_updated_time | string / int | Начало периода для фильтра по дате обновления обращения (строковое значение или timestamp) |
to_updated_time | string / int | Конец периода для фильтра по дате обновления обращения (строковое значение или timestamp) |
ОТВЕТ
{ "0": { "case" : { "case_id" : 2000, "case_number" : "664-245551", "subject" : "I need help", "user_id" : 123, "staff_id" : 22, "group_id" : 44, "status" : "open", "priority" : "low", "channel" : "web", "recipient" : "user@domain.ru", "cc_emails" : "user_cc@domain.ru,user_cc2@domain.ru", "bcc_emails" : "user_bcc@domain.ru", "deleted" : false, "spam" : false, "created_at" : "Mon, 05 May 2014 00:15:17 +0300", "updated_at" : "Tue, 23 Dec 2014 10:55:23 +0200", "language_id" : 2, "custom_fields" : { "cf_25" : "some text", "cf_30" : "another field", }, "labels" : [101, 102], "closing_speed" : 7 // значение в минутах. 0 - меньше минуты, // "-" - не закрыто } }, "1": { "case" : { "case_id" : 2001, "case_number" : "334-245651", "subject" : "Oh, help me please", "user_id" : 123, "staff_id" : 22, "group_id" : 44, "status" : "waiting", "priority" : "normal", "channel" : "facebook", "recipient" : "facebook", "cc_emails" : "", "bcc_emails" : "", "deleted" : false, "spam" : false, "created_at" : "Mon, 05 May 2014 00:15:17 +0300", "updated_at" : "Tue, 23 Dec 2014 10:55:23 +0200", "language_id" : 2, "custom_fields" : { "cf_25" : "some text", "cf_30" : "another field", }, "labels" : [101, 102], "closing_speed" : 0 } }, "2": { "case" : { "case_id" : 2002, "case_number" : "634-245651", "subject" : "Please, help me!", "user_id" : 123, "staff_id" : 22, "group_id" : 44, "status" : "closed", "priority" : "high", "channel" : "email", "recipient" : "user2@domain.ru", "cc_emails" : "user_cc@domain.ru,user_cc2@domain.ru", "bcc_emails" : "bcc@domain.ru", "deleted" : false, "spam" : false, "created_at" : "Mon, 05 May 2014 00:15:17 +0300", "updated_at" : "Tue, 23 Dec 2014 10:55:23 +0200", "language_id" : 1, "custom_fields" : { "cf_25" : "some text", "cf_30" : "another field", }, "labels" : [101, 102], "closing_speed" : "-" } }, "3": { "case" : { "case_id" : 2003, "case_number" : "134-245651", "subject" : "Help!!!", "user_id" : 123, "staff_id" : 22, "group_id" : 44, "status" : "closed", "priority" : "critical", "channel" : "email", "recipient" : "user3@domain.ru", "cc_emails" : "user_cc@domain.ru,user_cc2@domain.ru", "bcc_emails" : "user_bcc@domain.ru", "deleted" : false, "spam" : false, "created_at" : "Mon, 05 May 2014 00:15:17 +0300", "updated_at" : "Tue, 23 Dec 2014 10:55:23 +0200", "language_id" : 2, "custom_fields" : { "cf_25" : "some text", "cf_30" : "another field", }, "labels" : [101, 102] } }, "total_count":17 }
Пример кода (string)
curl -u [staff_email]:[api_key] -H "Content-Type: application/json" -g -X GET https://[domain].omnidesk.ru/api/cases.json?limit=50&page=2&custom_fields[cf_25]=data&custom_fields[cf_30]=anotherdata&status=open
Пример кода (array)
curl -u [staff_email]:[api_key] -H "Content-Type: application/json" -g -X GET https://[domain].omnidesk.ru/api/cases.json?limit=50&page=2&custom_fields[cf_25][]=data&custom_fields[cf_25][]=data_two&custom_fields[cf_30][]=1&custom_fields[cf_30][]=2&status[]=open&status[]=closed
https://[domain].omnidesk.ru/api/cases/[id].json GET
Просмотр данных конкретного обращения.
ОТВЕТ
{ "case" : { "case_id" : 2000, "case_number" : "664-245651", "subject" : "I need help", "user_id" : 123, "staff_id" : 22, "group_id" : 44, "status" : "waiting", "priority" : "normal", "channel" : "web", "recipient" : "user@domain.ru", "cc_emails" : "user_cc@domain.ru,user_cc2@domain.ru", "bcc_emails" : "user_bcc@domain.ru", "deleted" : false, "spam" : false, "created_at" : "Mon, 05 May 2014 00:15:17 +0300", "updated_at" : "Tue, 23 Dec 2014 10:55:23 +0200", "language_id" : 2, "custom_fields" : { "cf_25" : "some text", "cf_30" : "another field", }, "labels" : [101, 102] } }
Пример кода
curl -u [staff_email]:[api_key] -H "Content-Type: application/json" -X GET https://[domain].omnidesk.ru/api/cases/2000.json
https://[domain].omnidesk.ru/api/cases/[id]/messages.json GET
Просмотр ответов конкретного обращения.
Если в запросе не указывать параметры page и limit, отобразятся последние 100 ответов.
ПАРАМЕТРЫ
Название | Тип | Описание |
page | number | Номер страницы (положительное целое число) |
limit | number | Лимит обращений на странице (целое число от 1 до 100) |
order | string | Порядок сортировки ответов. Возможные варианты asc, desc. По умолчанию asc (от старых ответов к новым) |
ОТВЕТ
{ "0": { "message" : { "message_id" : 2000, "user_id" : 123, "staff_id" : 0, "content" : "", "content_html" : "Тестовый ответ пользователя", "attachments" : [], "note" : false, "sent_via_rule" : false, "created_at" : "Mon, 05 May 2014 00:15:17 +0300", } }, "1": { "message" : { "message_id" : 2001, "user_id" : 0, "staff_id" : 123, "content" : "", "content_html" : "Тестовый ответ сотрудника", "attachments" : [ { "file_id" : 345, "file_name" : "test.jpg", "file_size" : 40863, "mime_type" : "image/jpeg", "url" : "https://[domain].omnidesk.ru/some_path_here/345" } ], "note" : false, "sent_via_rule" : false, "created_at" : "Mon, 05 May 2014 00:28:43 +0300", } }, "total_count":17 }
Пример кода
curl -u [staff_email]:[api_key] -H "Content-Type: application/json" -X GET https://[domain].omnidesk.ru/api/cases/200/messages.json
https://[domain].omnidesk.ru/api/cases/[id]/messages.json POST
Добавление ответа сотрудника/пользователя к обращению.
ПАРАМЕТРЫ
Название | Тип | Описание |
content * | string | Содержание обращения |
content_html * | string | HTML содержание обращения (имеет больший приоритет, чем текстовое содержание) |
created_at | number | Этот параметр позволяет указать время создания сообщения (строковое значение или timestamp). Используйте его, если хотите перенести данные из сторонних сервисов и создать сообщение задним числом.
При наличии этого параметра в запросе обращение не проверяется правилами для изменённых обращений. |
staff_id | number | ID сотрудника, от имени которого добавляется ответ. Если этот параметр не указан, мы берем ID сотрудника, чей email-адрес используется для API авторизации. |
user_id | number | ID пользователя, от имени которого добавляется ответ. При наличии этого параметра staff_id игнорируется, и создаётся ответ от пользователя. |
do_not_send_email | boolean | Этот параметр относится только к каналу Email. По умолчанию используется значение false. Пропишите параметр со значением true, чтобы при добавлении ответа сотрудника пользователю (клиенту) не отправлялось письмо на почту. Опция полезна при переносе переписки по обращениям из сторонних сервисов в Омнидеск. |
ЗАПРОС
{ "message" : { "staff_id" : 123, "content" : "I need help" } }
ОТВЕТ
{ "message" : { "message_id" : 2001, "user_id" : 0, "staff_id" : 123, "content" : "I need help", "content_html" : "", "attachments" : [], "note" : false, "created_at" : "Mon, 06 May 2014 00:15:17 +0300", } } }
Пример кода
curl -u [staff_email]:[api_key] -H "Content-Type: application/json" -X POST -d '{ "message": { "content":"I need help", "staff_id":123 }}' https://[domain].omnidesk.ru/api/cases/200/messages.json
https://[domain].omnidesk.ru/api/cases/[id]/messages.json POST
Добавление ответа с файлами сотрудника/пользователя к обращению.
Важно! Содержание отправляемого запроса должно быть в виде multipart/form-data.
ОТВЕТ
{ "message" : { "message_id" : 2001, "user_id" : 0, "staff_id" : 123, "content" : "I need help", "content_html" : "", "attachments" : [ { "file_id" : 345, "file_name" : "test.jpg", "file_size" : 40863, "mime_type" : "image/jpeg", "url" : "https://[domain].omnidesk.ru/some_path_here/345" }, { "file_id" : 346, "file_name" : "new.jpg", "file_size" : 50863, "mime_type" : "image/jpeg", "url" : "https://[domain].omnidesk.ru/some_path_here/346" } ], "note" : false, "created_at" : "Mon, 06 May 2014 00:15:17 +0300", } } }
Пример кода
curl -u [staff_email]:[api_key] -F "message[attachments][0]=@/path/to/file1.ext" -F "message[attachments][1]=@/path/to/file2.ext" -F "message[content]=I need help" -F "message[staff_id]=123" -X POST https://[domain].omnidesk.ru/api/cases/200/messages.json
https://[domain].omnidesk.ru/api/cases/[case_id]/messages/[message_id].json PUT
Редактирование ответа сотрудника/пользователя к обращению.
ПАРАМЕТРЫ
Название | Тип | Описание |
content * | string | Содержание обращения |
ЗАПРОС
{ "message" : { "content" : "Edited content" } }
ОТВЕТ
{ "message" : { "message_id" : 2001, "user_id" : 0, "staff_id" : 123, "content" : "Edited content", "content_html" : "", "attachments" : [], "note" : false, "created_at" : "Mon, 06 May 2014 00:15:17 +0300", } } }
Пример кода
curl -u [staff_email]:[api_key] -H "Content-Type: application/json" -X PUT -d '{ "message": { "content":"Edited content" }}' https://[domain].omnidesk.ru/api/cases/200/messages/2001.json
https://[domain].omnidesk.ru/api/cases/[id]/note.json POST
Добавление заметки к обращению.
ПАРАМЕТРЫ
Название | Тип | Описание |
content * | string | Содержание заметки. Чтобы упомянуть в заметке сотрудника используйте @s[staff_id], а группу — @g[group_id] |
content_html * | string | HTML содержание обращения (имеет больший приоритет, чем текстовое содержание) Чтобы упомянуть в заметке сотрудника используйте @s[staff_id], а группу — @g[group_id] |
created_at | number | Этот параметр позволяет указать время создания заметки (строковое значение или timestamp). Используйте его, если хотите перенести данные из сторонних сервисов и создать заметку задним числом.
При наличии этого параметра в запросе обращение не проверяется правилами для изменённых обращений. |
note_staff_id | number | ID сотрудника, которому будет видна заметка. |
note_group_id | number | ID группы, сотрудникам которых будет видна заметка. Имеет больший приоритет, чем ID сотрудника. Если не указан ни один из параметров, заметка будет видна всем сотрудникам. |
ЗАПРОС
{ "message" : { "note_staff_id" : 123, "content" : "I need help" } }
ОТВЕТ
{ "message" : { "message_id" : 2001, "user_id" : 0, "staff_id" : 123, "content" : "I need help", "content_html" : "", "attachments" : [], "note" : true, "created_at" : "Mon, 06 May 2014 00:15:17 +0300", } } }
Пример кода
curl -u [staff_email]:[api_key] -H "Content-Type: application/json" -X POST -d '{ "message": { "content":"I need help", "note_staff_id":123 }}' https://[domain].omnidesk.ru/api/cases/200/notes.json
https://[domain].omnidesk.ru/api/cases/[id]/note.json POST
Добавление заметки с файлами к обращению.
Важно! Содержание отправляемого запроса должно быть в виде multipart/form-data.
ОТВЕТ
{ "message" : { "message_id" : 2001, "user_id" : 0, "staff_id" : 123, "content" : "I need help", "content_html" : "", "attachments" : [ { "file_id" : 345, "file_name" : "test.jpg", "file_size" : 40863, "mime_type" : "image/jpeg", "url" : "https://[domain].omnidesk.ru/some_path_here/345" }, { "file_id" : 346, "file_name" : "new.jpg", "file_size" : 50863, "mime_type" : "image/jpeg", "url" : "https://[domain].omnidesk.ru/some_path_here/346" } ], "note" : true, "created_at" : "Mon, 06 May 2014 00:15:17 +0300", } } }
Пример кода
curl -u [staff_email]:[api_key] -F "note[attachments][0]=@/path/to/file1.ext" -F "note[attachments][1]=@/path/to/file2.ext" -F "note[content]=I need help" -X POST https://[domain].omnidesk.ru/api/cases/200/note.json
https://[domain].omnidesk.ru/api/cases/[case_id]/note/[message_id].json PUT
Редактирование заметки.
ПАРАМЕТРЫ
Название | Тип | Описание |
content * | string | Содержание заметки. Чтобы упомянуть в заметке сотрудника используйте @s[staff_id], а группу — @g[group_id] |
ЗАПРОС
{ "message" : { "content" : "Edited content" } }
ОТВЕТ
{ "message" : { "message_id" : 2001, "user_id" : 0, "staff_id" : 123, "content" : "Edited content", "content_html" : "", "attachments" : [], "note" : true, "created_at" : "Mon, 06 May 2014 00:15:17 +0300", } } }
Пример кода
curl -u [staff_email]:[api_key] -H "Content-Type: application/json" -X PUT -d '{ "message": { "content":"Edited content" }}' https://[domain].omnidesk.ru/api/cases/200/messages/2001.json
https://[domain].omnidesk.ru/api/cases/[case_id]/idea_official_response.json PUT
Добавление/редактирование официального ответа предложения.
ПАРАМЕТРЫ
Название | Тип | Описание |
content * | string | Содержание обращения |
ЗАПРОС
{ "message" : { "content" : "New official response" } }
ОТВЕТ
{ "case" : { "case_id" : 2000, "case_number" : "664-245651", "subject" : "I need help", "user_id" : 123, "staff_id" : 22, "group_id" : 44, "status" : "waiting", "priority" : "normal", "channel" : "idea", "recipient" : "", "cc_emails" : "", "bcc_emails" : "", "deleted" : false, "spam" : false, "created_at" : "Mon, 05 May 2014 00:15:17 +0300", "updated_at" : "Tue, 23 Dec 2014 10:55:23 +0200", "idea" : { "official_response" : "New official response", "official_response_tstamp" : 1509007649, } } }
Пример кода
curl -u [staff_email]:[api_key] -H "Content-Type: application/json" -X PUT -d '{ "message": { "content":"New official response" }}' https://[domain].omnidesk.ru/api/cases/200/idea_official_response.json
https://[domain].omnidesk.ru/api/cases/[case_id]/idea.json PUT
Редактирование предложения.
ПАРАМЕТРЫ
Название | Тип | Описание |
content | string | Предложение клиента |
category_id | number | ID категории, которая будет выставлена для предложения |
stage | string | Этап реализации (возможные варианты: waiting, planned, in_progress, finished) |
ЗАПРОС
{ "message" : { "content" : "New content" "stage" : "planned" } }
ОТВЕТ
{ "case" : { "case_id" : 2000, "case_number" : "664-245651", "subject" : "I need help", "user_id" : 123, "staff_id" : 22, "group_id" : 44, "status" : "waiting", "priority" : "normal", "channel" : "idea", "recipient" : "", "cc_emails" : "", "bcc_emails" : "", "deleted" : false, "spam" : false, "created_at" : "Mon, 05 May 2014 00:15:17 +0300", "updated_at" : "Tue, 23 Dec 2014 10:55:23 +0200", "idea" : { "content" : "New content", "stage" : "planned" "category" : 319, } } }
Пример кода
curl -u [staff_email]:[api_key] -H "Content-Type: application/json" -X PUT -d '{ "message": { "content":"New content", "stage" : "planned" }}' https://[domain].omnidesk.ru/api/cases/200/idea.json
https://[domain].omnidesk.ru/api/cases/[id].json PUT
Изменение параметров конкретного обращения.
Массовое редактирование: https://[domain].omnidesk.ru/api/cases/[id],[id],[id].json.
ПАРАМЕТРЫ
Название | Тип | Описание |
add_cc_emails | array | Email-адреса, которые будут добавлены в копию обращения. Не более 30 штук. |
add_bcc_emails | array | Email-адреса, которые будут добавлены в скрытую копию обращения. Не более 30 штук. |
remove_cc_emails | array | Email-адреса, которые будут удалены из копии обращения. |
remove_bcc_emails | array | Email-адреса, которые будут удалены из скрытой копии обращения. |
subject | string | Тема обращения |
group_id | number | Группа обращения (должна существовать и быть активной) |
staff_id | number | Отвественный сотрудник (должен существовать и быть активным) |
status | string | Статус обращения (возможные варианты: open, waiting и closed) |
priority | string | Приоритет обращения (возможные варианты: low, normal, high и critical) |
language_id | number | язык пользователя (при передаче заменяет язык по умолчанию) |
custom_fields | array | Кастомные поля |
add_labels | array | Добавляемые метки |
delete_labels | array | Удаляемые метки |
ЗАПРОС
{ "case" : { "subject" : "Test subject changed", "status" : "closed", "priority" : "critical", "language_id" : 2, "custom_fields" : { "cf_25" : "some text", "cf_30" : "another field", }, "add_labels" : [103, 104] } }
ОТВЕТ
{ "case" : { "case_id" : 2000, "case_number" : "664-245651", "subject" : "Test subject changed", "user_id" : 123, "staff_id" : 22, "group_id" : 44, "status" : "closed", "priority" : "critical", "channel" : "web", "recipient" : "user@domain.ru", "deleted" : false, "spam" : false, "created_at" : "Mon, 05 May 2014 00:15:17 +0300", "updated_at" : "Tue, 23 Dec 2014 10:55:23 +0200", "language_id" : 2, "custom_fields" : { "cf_25" : "some text", "cf_30" : "another field", }, "labels" : [101, 102, 103, 104] } }
ОТВЕТ ПРИ МАССОВОМ РЕДАКТИРОВАНИИ
{ "case_success_id" : [101, 102, 103, 104] }
Пример кода
curl -u [staff_email]:[api_key] -H "Content-Type: application/json" -X PUT -d '{ "case": { "subject":"Test subject changed", "status":"closed", "priority":"critical","language_id":2, "custom_fields":{"cf_25":"some text", "cf_30":"another field"} }}' https://[domain].omnidesk.ru/api/cases/2000.json
https://[domain].omnidesk.ru/api/cases/[id]/trash.json PUT
Удаление обращения в корзину.
Массовое удаление: https://[domain].omnidesk.ru/api/cases/[id],[id],[id]/trash.json.
ОТВЕТ
{ "case" : { "case_id" : 2000, "case_number" : "664-245651", "subject" : "Test subject changed", "user_id" : 123, "staff_id" : 22, "group_id" : 44, "status" : "closed", "priority" : "critical", "channel" : "web", "recipient" : "user@domain.ru", "deleted" : true, "spam" : false, "created_at" : "Mon, 05 May 2014 00:15:17 +0300", "updated_at" : "Tue, 23 Dec 2014 10:55:23 +0200", "language_id" : 2, "custom_fields" : { "cf_25" : "some text", "cf_30" : "another field", }, "labels" : [101, 102] } }
ОТВЕТ ПРИ МАССОВОМ ПЕРЕНОСЕ В КОРЗИНУ
{ "case_success_id" : [101, 102, 103, 104] }
Пример кода
curl -u [staff_email]:[api_key] -H "Content-Type: application/json" -X PUT -d '' https://[domain].omnidesk.ru/api/cases/2000/trash.json
https://[domain].omnidesk.ru/api/cases/[id(,id,id)]/spam.json PUT
Перенос обращения в фильтр «Спам».
Массовый перенос: https://[domain].omnidesk.ru/api/cases/[id],[id],[id].json.
ОТВЕТ
{ "case" : { "case_id" : 2000, "case_number" : "664-245651", "subject" : "Test subject changed", "user_id" : 123, "staff_id" : 22, "group_id" : 44, "status" : "closed", "priority" : "critical", "channel" : "web", "recipient" : "user@domain.ru", "deleted" : false, "spam" : true, "created_at" : "Mon, 05 May 2014 00:15:17 +0300", "updated_at" : "Tue, 23 Dec 2014 10:55:23 +0200", "language_id" : 2, "custom_fields" : { "cf_25" : "some text", "cf_30" : "another field", }, "labels" : [101, 102] } }
ОТВЕТ ПРИ МАССОВОМ ПЕРЕНОСЕ В «СПАМ»
{ "case_success_id" : [101, 102, 103, 104] }
Пример кода
curl -u [staff_email]:[api_key] -H "Content-Type: application/json" -X PUT -d '' https://[domain].omnidesk.ru/api/cases/2000/spam.json
https://[domain].omnidesk.ru/api/cases/[id]/restore.json PUT
Восстановление обращения из корзины или спама.
Массовое восстановление: https://[domain].omnidesk.ru/api/cases/[id],[id],[id].json.
ОТВЕТ
{ "case" : { "case_id" : 2000, "case_number" : "664-245651", "subject" : "Test subject changed", "user_id" : 123, "staff_id" : 22, "group_id" : 44, "status" : "closed", "priority" : "critical", "channel" : "web", "recipient" : "user@domain.ru", "deleted" : false, "spam" : false, "created_at" : "Mon, 05 May 2014 00:15:17 +0300", "updated_at" : "Tue, 23 Dec 2014 10:55:23 +0200", "language_id" : 2, "custom_fields" : { "cf_25" : "some text", "cf_30" : "another field", }, "labels" : [101, 102] } }
ОТВЕТ ПРИ МАССОВОМ ВОССТАНОВЛЕНИИ
{ "case_success_id" : [101, 102, 103, 104] }
Пример кода
curl -u [staff_email]:[api_key] -H "Content-Type: application/json" -X PUT -d '' https://[domain].omnidesk.ru/api/cases/2000/restore.json
https://[domain].omnidesk.ru/api/cases/[case_id]/messages/[message_id].json DELETE
Удаление ответа
ОТВЕТ
HTTP Status: 200 OK
Пример кода
curl -u [staff_email]:[api_key] -H "Content-Type: application/json" -X DELETE https://[domain].omnidesk.ru/api/cases/2000/messages/123456.json
https://[domain].omnidesk.ru/api/cases/[case_id]/note/[message_id].json DELETE
Удаление заметки.
ОТВЕТ
HTTP Status: 200 OK
Пример кода
curl -u [staff_email]:[api_key] -H "Content-Type: application/json" -X DELETE https://[domain].omnidesk.ru/api/cases/2000/note/123456.json
https://[domain].omnidesk.ru/api/cases/[case_id]/idea_official_response.json DELETE
Удаление официального ответа предложения.
ОТВЕТ
HTTP Status: 200 OK
Пример кода
curl -u [staff_email]:[api_key] -H "Content-Type: application/json" -X DELETE https://[domain].omnidesk.ru/api/cases/2000/idea_official_response.json
https://[domain].omnidesk.ru/api/cases/[id].json DELETE
Безвозвратное удаление обращения. Доступно только для сотрудников с полным доступом.
ОТВЕТ
HTTP Status: 200 OK
Пример кода
curl -u [staff_email]:[api_key] -H "Content-Type: application/json" -X DELETE https://[domain].omnidesk.ru/api/cases/2000.json
https://[domain].omnidesk.ru/api/filters.json GET
Просмотр всех фильтров сотрудника, данные которого используются при аутентификации.
ОТВЕТ
{ "0" : { "filter" : { "filter_id" : unassigned, "filter_name" : "open", "isSelected" : true, "isCustom" : false } }, "1" : { "filter" : { "filter_id" : 234, "filter_name" : "Test filter", "isSelected" : false, "isCustom" : true } }, "total_count":10 }
Пример кода
curl -u [staff_email]:[api_key] -H "Content-Type: application/json" -X GET https://[domain].omnidesk.ru/api/filters.json
https://[domain].omnidesk.ru/api/labels.json POST
Добавление новой метки.
ПАРАМЕТРЫ
Название | Тип | Описание |
label_title * | string | Название метки |
ЗАПРОС
{ "label" : { "label_title" : "Test title", } }
ОТВЕТ
{ "label" : { "label_id" : 200, "label_title" : "Test title", } }
Пример кода
curl -u [staff_email]:[api_key] -H "Content-Type: application/json" -X POST -d '{ "labels": {"label_title":"Test title" }}' https://[domain].omnidesk.ru/api/labels.json
https://[domain].omnidesk.ru/api/labels.json GET
Просмотр списка меток.
ПАРАМЕТРЫ
Название | Тип | Описание |
page | number | Номер страницы (положительное целое число) |
limit | number | Лимит меток на странице (целое число от 1 до 100) |
ОТВЕТ
{ "0" : { "label" : { "label_id" : 200, "label_title" : "Test title" } }, "1" : { "label" : { "label_id" : 210, "label_title" : "Test title 2" } }, "total_count":10 }
Пример кода
curl -u [staff_email]:[api_key] -H "Content-Type: application/json" -X GET https://[domain].omnidesk.ru/api/labels.json?limit=50&page=2
https://[domain].omnidesk.ru/api/labels/[id].json PUT
Изменение метги.
ПАРАМЕТРЫ
Название | Тип | Описание |
label_title | string | Название метки |
ЗАПРОС
{ "label" : { "label_title" : "New label title" } }
ОТВЕТ
{ "label" : { "label_id" : 200, "label_title" : "New label title", } }
Пример кода
curl -u [staff_email]:[api_key] -H "Content-Type: application/json" -X PUT -d '{ "label": { "label_title":"New label title" }}' https://[domain].omnidesk.ru/api/labels/200.json
https://[domain].omnidesk.ru/api/labels/[id].json DELETE
Удаление метки.
ОТВЕТ
HTTP Status: 200 OK
Пример кода
curl -u [staff_email]:[api_key] -H "Content-Type: application/json" -X DELETE https://[domain].omnidesk.ru/api/labels/200.json
https://[domain].omnidesk.ru/api/users.json POST
Добавление нового пользователя.
ПАРАМЕТРЫ
Название | Тип | Описание |
user_email * | string | Валидный email-адрес пользователя (обязателен, если нет телефона) |
user_phone * | string | Валидный телефон пользователя (обязателен, если нет email-адреса) |
user_whatsapp_phone * | string | Валидный телефон пользователя, к которому привязан аккаунт в WhatsApp (обязателен, если нет email-адреса или телефона) |
user_telegram_data * | string | Username или валидный телефон пользователя, к которому привязан аккаунт в Телеграм (обязателен, если нет email-адреса или телефона) |
user_custom_id * | string | ID, по которому вы определяете пользователя при работе с кастомным каналом (обязателен, если нет email-адреса или телефона) |
user_custom_channel | string | ID кастомного канала (к примеру, cch101) Данный параметр нужно передавать только при создании пользователя по user_custom_id |
user_full_name | string | Полное имя пользователя |
company_name | string | Имя компании пользователя |
company_position | string | Должность пользователя |
user_note | string | Заметка по пользователю |
language_id | number | язык пользователя |
custom_fields | array | Кастомные поля |
ЗАПРОС
{ "user" : { "user_email" : "user@domain.ru", "user_whatsapp_phone" : "+79261234567" "user_full_name" : "User's full name", "company_name" : "User's company name", "company_position" : "User's position", "user_note" : "Some note", "language_id" : 2, "custom_fields" : { "cf_20" : "some data", "cf_23" : true, } } }
ОТВЕТ
{ "user" : { "user_id" : 200, "user_full_name" : "User's full name", "company_name" : "User's company name", "company_position" : "User's position", "thumbnail" : "", "confirmed" : false, "active" : true, "deleted" : false, "created_at" : "Mon, 05 May 2014 00:15:17 +0300", "updated_at" : "Tue, 23 Dec 2014 10:55:23 +0200", "password" : "bsdegs", "type" : "email", "user_email" : "user@domain.ru", "language_id" : 2, "custom_fields" : { "cf_20" : "some data", "cf_23" : true, }, "linked_users" : [123,456] } }
Пример кода
curl -u [staff_email]:[api_key] -H "Content-Type: application/json" -X POST -d '{ "user": { "user_email":"user@domain.ru", "user_full_name":"User\u0027s full name", "language_id":2, "custom_fields":{"cf_20":"some data", "cf_23":true} }}' https://[domain].omnidesk.ru/api/users.json
https://[domain].omnidesk.ru/api/users.json GET
Просмотр списка пользователей.
Если в запросе не указывать параметры page и limit, то в результате отобразятся первые сто пользователей.
ПАРАМЕТРЫ
Название | Тип | Описание |
page | number | Номер страницы (положительное целое число) |
limit | number | Лимит пользователей на странице (целое число от 1 до 100) |
user_email | string | Поиск пользователей по email-адресу (не менее 3-х символов) |
user_phone | string | Поиск пользователей по телефону (не менее 3-х символов) |
language_id | number | язык пользователя |
custom_fields | array |
Дополнительные поля данных. В зависимости от типа поля, по которому выполняется фильтрация обращений, поиск осуществляется по-разному: - «текстовое поле» или «текстовая область» — производится поиск включения передаваемой строки; - «чекбокс» — производится поиск по наличию/отсутствию флага в зависимости от передаваемого значения; - «список» — производится поиск по ключу поиск, равному передаваемому значению. |
amount_of_cases | boolean | Количество обращений пользователя. Параметр может быть true или false (по умолчанию). |
from_time | string / int | Начало периода для фильтра по дате добавления пользователя (строковое значение или timestamp) |
to_time | string / int | Конец периода для фильтра по дате добавления пользователя (строковое значение или timestamp) |
from_updated_time | string / int | Начало периода для фильтра по дате обновления пользователя (строковое значение или timestamp) |
to_updated_time | string / int | Конец периода для фильтра по дате обновления пользователя (строковое значение или timestamp) |
ОТВЕТ
{ "0": { "user" : { "user_id" : 200, "user_full_name" : "User's full name", "company_name" : "User's company name", "company_position" : "User's position", "thumbnail" : "", "confirmed" : false, "active" : true, "deleted" : false, "created_at" : "Mon, 05 May 2014 00:15:17 +0300", "updated_at" : "Tue, 23 Dec 2014 10:55:23 +0200", "type" : "email", "user_email" : "user@domain.ru", "language_id" : 2, "custom_fields" : { "cf_20" : "some data", "cf_23" : true, } } }, "1": { "user" : { "user_id" : 300, "user_full_name" : "Second user's full name", "company_name" : "Second user's company name", "company_position" : "Second user's position", "thumbnail" : "", "confirmed" : false, "active" : true, "deleted" : false, "created_at" : "Mon, 05 May 2014 00:15:17 +0300", "updated_at" : "Tue, 23 Dec 2014 10:55:23 +0200", "type" : "facebook", "facebook_id" : 123123123, "language_id" : 2, "custom_fields" : { "cf_20" : "some data", "cf_23" : true, } } }, "2": { "user" : { "user_id" : 400, "user_full_name" : "Third user's full name", "company_name" : "Third user's company name", "company_position" : "Third user's position", "thumbnail" : "", "confirmed" : false, "active" : true, "deleted" : false, "created_at" : "Mon, 05 May 2014 00:15:17 +0300", "updated_at" : "Tue, 23 Dec 2014 10:55:23 +0200", "type" : "twitter", "facebook_id" : 3333333, "language_id" : 1, "custom_fields" : { "cf_20" : "some data", "cf_23" : true, } } }, "total_count":20 }
Пример кода
curl -u [staff_email]:[api_key] -H "Content-Type: application/json" -g -X GET "https://[domain].omnidesk.ru/api/users.json?limit=50&page=2&language_id=2&custom_fields[cf_20]=data"
https://[domain].omnidesk.ru/api/users/[id].json GET
Просмотр данных конкретного пользователя.
ОТВЕТ
{ "user" : { "user_id" : 200, "user_full_name" : "User's full name", "company_name" : "User's company name", "company_position" : "User's position", "thumbnail" : "", "confirmed" : false, "active" : true, "deleted" : false, "created_at" : "Mon, 05 May 2014 00:15:17 +0300", "updated_at" : "Tue, 23 Dec 2014 10:55:23 +0200", "type" : "email", "user_email" : "user@domain.ru", "language_id" : 2, "custom_fields" : { "cf_20" : "some data", "cf_23" : true, }, "linked_users" : [123,456] } }
Пример кода
curl -u [staff_email]:[api_key] -H "Content-Type: application/json" -X GET https://[domain].omnidesk.ru/api/users/200.json
https://[domain].omnidesk.ru/api/users/[id].json PUT
Изменение данных конкретного пользователя.
ПАРАМЕТРЫ
Название | Тип | Описание |
user_email | string | Новый email-адрес пользователя (можно менять только пока он не подтвержден) |
user_full_name | string | Полное имя |
company_name | string | Имя компании пользователя |
company_position | string | Должность пользователя |
user_note | string | Заметка по пользователю |
language_id | number | язык пользователя |
custom_fields | array | Кастомные поля |
ЗАПРОС
{ "user" : { "user_full_name" : "User's full name changed", "language_id" : 1, "custom_fields" : { "cf_20" : "some data", "cf_23" : true, } } }
ОТВЕТ
{ "user" : { "user_id" : 200, "user_full_name" : "User's full name changed", "company_name" : "User's company name", "company_position" : "User's position", "thumbnail" : "", "confirmed" : false, "active" : true, "deleted" : false, "created_at" : "Mon, 05 May 2014 00:15:17 +0300", "updated_at" : "Tue, 23 Dec 2014 10:55:23 +0200", "type" : "email", "user_email" : "user@domain.ru", "language_id" : 1, "custom_fields" : { "cf_20" : "some data", "cf_23" : true, } } }
Пример кода
curl -u [staff_email]:[api_key] -H "Content-Type: application/json" -X PUT -d '{ "user": { "user_full_name":"User\u0027s full name changed", "language_id":2, "custom_fields":{"cf_20":"some data", "cf_23":true} }}' https://[domain].omnidesk.ru/api/users/200.json
https://[domain].omnidesk.ru/api/users/[id]/disable.json PUT
Удаление пользователя. В этом случае пользователь переносится в список удалённых и при необходимости его можно восстановить.
ОТВЕТ
{ "user" : { "user_id" : 200, "user_full_name" : "User's full name changed", "company_name" : "User's company name", "company_position" : "User's position", "thumbnail" : "", "confirmed" : false, "active" : true, "deleted" : true, "created_at" : "Mon, 05 May 2014 00:15:17 +0300", "updated_at" : "Tue, 23 Dec 2014 10:55:23 +0200", "type" : "email", "user_email" : "user@domain.ru", "language_id" : 2, "custom_fields" : { "cf_20" : "some data", "cf_23" : true, } } }
Пример кода
curl -u [staff_email]:[api_key] -H "Content-Type: application/json" -X PUT -d '' https://[domain].omnidesk.ru/api/users/200/disable.json
https://[domain].omnidesk.ru/api/users/[id]/block.json PUT
Блокирование пользователя.
ОТВЕТ
{ "user" : { "user_id" : 200, "user_full_name" : "User's full name changed", "company_name" : "User's company name", "company_position" : "User's position", "thumbnail" : "", "confirmed" : false, "active" : false, "deleted" : false, "created_at" : "Mon, 05 May 2014 00:15:17 +0300", "updated_at" : "Tue, 23 Dec 2014 10:55:23 +0200", "type" : "email", "user_email" : "user@domain.ru", "language_id" : 2, "custom_fields" : { "cf_20" : "some data", "cf_23" : true, } } }
Пример кода
curl -u [staff_email]:[api_key] -H "Content-Type: application/json" -X PUT -d '' https://[domain].omnidesk.ru/api/users/200/block.json
https://[domain].omnidesk.ru/api/users/[id]/restore.json PUT
Включение пользователя после блокировки или восстановление после удаления.
ОТВЕТ
{ "user" : { "user_id" : 200, "user_full_name" : "User's full name changed", "company_name" : "User's company name", "company_position" : "User's position", "thumbnail" : "", "confirmed" : false, "active" : true, "deleted" : false, "created_at" : "Mon, 05 May 2014 00:15:17 +0300", "updated_at" : "Tue, 23 Dec 2014 10:55:23 +0200", "type" : "email", "user_email" : "user@domain.ru", "language_id" : 2, "custom_fields" : { "cf_20" : "some data", "cf_23" : true, } } }
Пример кода
curl -u [staff_email]:[api_key] -H "Content-Type: application/json" -X PUT -d '' https://[domain].omnidesk.ru/api/users/200/restore.json
https://[domain].omnidesk.ru/api/users/[id].json DELETE
Безвозвратное удаление пользователя. Доступно только для сотрудников с полным доступом.
ОТВЕТ
HTTP Status: 200 OK
Пример кода
curl -u [staff_email]:[api_key] -H "Content-Type: application/json" -X DELETE https://[domain].omnidesk.ru/api/users/200.json
https://[domain].omnidesk.ru/api/companies.json POST
Добавление новой компании.
ПАРАМЕТРЫ
Название | Тип | Описание |
company_name * | string | Название компании |
company_domains | string | Можно указывать несколько доменов через запятую |
company_default_group | string | ID группы |
company_address | string | Адрес компании |
company_note | string | Заметка |
сompany_users | string | Через запятую ID пользователей, которые должны попасть в компанию |
ЗАПРОС
{ "company" : { "company_name" : "New Company", "company_domains" : "company.ru", "company_default_group" : 492, "company_address" : "Some address", "company_note" : "Some note", "сompany_users" : "1351,1348,1347" } }
ОТВЕТ
{ "company" : { "company_id" : 200, "company_name" : "New Company", "company_domains" : "company.ru", "company_default_group" : 492, "company_address" : "Some address", "company_note" : "Some note", "active" : true, "deleted" : false, "created_at" : "Mon, 05 May 2014 00:15:17 +0300", "updated_at" : "Tue, 23 Dec 2014 10:55:23 +0200" } }
Пример кода
curl -u [staff_email]:[api_key] -H "Content-Type: application/json" -X POST -d '{ "company": {"company_name":"New Company","company_domains":"company.ru","company_default_group":492,"company_address":"Some address","company_note":"Some note","сompany_users":"1351,1348,1347"}}' https://[domain].omnidesk.ru/api/companies.json
https://[domain].omnidesk.ru/api/companies.json GET
Просмотр списка компаний.
Если в запросе не указывать параметры page и limit, то в результате отобразятся первые сто компаний.
ПАРАМЕТРЫ
Название | Тип | Описание |
page | number | Номер страницы (положительное целое число) |
limit | number | Лимит компаний на странице (целое число от 1 до 100) |
company_name | string | Поиск компаний по названию (не менее 3-х символов) |
company_domains | string | Поиск компаний по домену (не менее 3-х символов) |
company_address | string | Поиск компаний по адресу (не менее 3-х символов) |
company_note | string | Поиск компаний по заметке (не менее 3-х символов) |
amount_of_users | boolean | Количество пользователей компании. Параметр может быть true или false (по умолчанию). |
amount_of_cases | boolean | Количество обращений компании. Параметр может быть true или false (по умолчанию). |
ОТВЕТ
{ "0": { "company" : { "company_id" : 200, "company_name" : "New Company", "company_domains" : "company.ru", "company_default_group" : 492, "company_address" : "Some address", "company_note" : "Some note", "active" : true, "deleted" : false, "created_at" : "Mon, 05 May 2014 00:15:17 +0300", "updated_at" : "Tue, 23 Dec 2014 10:55:23 +0200", "amount_of_users" : 125 }, "1": { "company" : { "company_id" : 300, "company_name" : "New Company 2", "company_domains" : "company.ru", "company_default_group" : 492, "company_address" : "Some address", "company_note" : "Some note", "active" : true, "deleted" : false, "created_at" : "Mon, 05 May 2014 00:15:17 +0300", "updated_at" : "Tue, 23 Dec 2014 10:55:23 +0200" "amount_of_users" : 125 }, "total_count":20 }
Пример кода
curl -u [staff_email]:[api_key] -H "Content-Type: application/json" -X GET https://[domain].omnidesk.ru/api/companies.json?limit=50&page=2&amount_of_users=true
https://[domain].omnidesk.ru/api/companies/[id].json GET
Просмотр данных конкретной компании.
ОТВЕТ
{ "company" : { "company_id" : 200, "company_name" : "New Company", "company_domains" : "company.ru", "company_default_group" : 492, "company_address" : "Some address", "company_note" : "Some note", "active" : true, "deleted" : false, "created_at" : "Mon, 05 May 2014 00:15:17 +0300", "updated_at" : "Tue, 23 Dec 2014 10:55:23 +0200", } }
Пример кода
curl -u [staff_email]:[api_key] -H "Content-Type: application/json" -X GET https://[domain].omnidesk.ru/api/companies/200.json
https://[domain].omnidesk.ru/api/companies/[id].json PUT
Изменение данных конкретной компании.
ПАРАМЕТРЫ
Название | Тип | Описание |
company_name | string | Название компании |
add_company_domains | string | Добавление доменов для автоматической привязки пользователей (можно указывать несколько доменов через запятую) |
remove_company_domains | string | Удаление доменов для автоматической привязки пользователей (можно указывать несколько доменов через запятую) |
company_default_group | string | ID группы |
company_address | string | Адрес компании |
company_note | string | Заметка |
add_сompany_users | string | Через запятую ID пользователей, которых нужно добавить в компанию |
remove_сompany_users | string | Через запятую ID пользователей, которых нужно удалить из компании |
ЗАПРОС
{ "company" : { "company_name" : "Company's full name changed", "company_note" : "New note", "add_company_domains" : "newcompany.ru", "remove_company_domains" : "company.ru" } }
ОТВЕТ
{ "company" : { "company_id" : 200, "company_name" : "Company's full name changed", "company_domains" : "newcompany.ru", "company_default_group" : 492, "company_address" : "Some address", "company_note" : "New note", "active" : true, "deleted" : false, "created_at" : "Mon, 05 May 2014 00:15:17 +0300", "updated_at" : "Tue, 23 Dec 2014 10:55:23 +0200" } }
Пример кода
curl -u [staff_email]:[api_key] -H "Content-Type: application/json" -X PUT -d '{ "company": {"company_name":"Company's full name changed","company_note":"New note","add_company_domains":"newcompany.ru","remove_company_domains":"company.ru"}}' https://[domain].omnidesk.ru/api/companies/200.json
https://[domain].omnidesk.ru/api/companies/[id]/disable.json PUT
Удаление компании. В этом случае компания переносится в список удалённых и при необходимости её можно восстановить.
ОТВЕТ
{ "company" : { "company_id" : 200, "company_name" : "Company's full name changed", "company_domains" : "newcompany.ru", "company_default_group" : 492, "company_address" : "Some address", "company_note" : "New note", "active" : true, "deleted" : true, "created_at" : "Mon, 05 May 2014 00:15:17 +0300", "updated_at" : "Tue, 23 Dec 2014 10:55:23 +0200" } }
Пример кода
curl -u [staff_email]:[api_key] -H "Content-Type: application/json" -X PUT -d '' https://[domain].omnidesk.ru/api/companies/200/disable.json
https://[domain].omnidesk.ru/api/companies/[id]/block.json PUT
Блокирование компании.
ОТВЕТ
{ "company" : { "company_id" : 200, "company_name" : "Company's full name changed", "company_domains" : "newcompany.ru", "company_default_group" : 492, "company_address" : "Some address", "company_note" : "New note", "active" : false, "deleted" : false, "created_at" : "Mon, 05 May 2014 00:15:17 +0300", "updated_at" : "Tue, 23 Dec 2014 10:55:23 +0200" } }
Пример кода
curl -u [staff_email]:[api_key] -H "Content-Type: application/json" -X PUT -d '' https://[domain].omnidesk.ru/api/companies/200/block.json
https://[domain].omnidesk.ru/api/companies/[id]/restore.json PUT
Включение компании после блокировки или восстановление после удаления.
ОТВЕТ
{ "company" : { "company_id" : 200, "company_name" : "Company's full name changed", "company_domains" : "newcompany.ru", "company_default_group" : 492, "company_address" : "Some address", "company_note" : "New note", "active" : true, "deleted" : false, "created_at" : "Mon, 05 May 2014 00:15:17 +0300", "updated_at" : "Tue, 23 Dec 2014 10:55:23 +0200" } }
Пример кода
curl -u [staff_email]:[api_key] -H "Content-Type: application/json" -X PUT -d '' https://[domain].omnidesk.ru/api/companies/200/restore.json
https://[domain].omnidesk.ru/api/companies/[id].json DELETE
Безвозвратное удаление компании. Доступно только для сотрудников с полным доступом.
ОТВЕТ
HTTP Status: 200 OK
Пример кода
curl -u [staff_email]:[api_key] -H "Content-Type: application/json" -X DELETE https://[domain].omnidesk.ru/api/companies/200.json
https://[domain].omnidesk.ru/api/groups.json POST
Создание группы.
ПАРАМЕТРЫ
Название | Тип | Описание |
group_title * | string | Название группы |
group_from_name | string | Групповое имя оптравителя для использования в ответах сотрудников |
group_signature | string | Групповая подпись для использования в ответах сотрудников |
ЗАПРОС
{ "group" : { "group_title" : "Test group", "group_from_name" : "Test group from name", "group_signature" : "Test group signature" } }
ОТВЕТ
{ "group" : { "group_id" : 200, "group_title" : "Test group", "group_from_name" : "Test group from name", "group_signature" : "Test group signature", "active" : true, "created_at" : Mon, 05 May 2014 00:15:17 +0300, "updated_at" : Tue, 23 Dec 2014 10:55:23 +0200 } }
Пример кода
curl -u [staff_email]:[api_key] -H "Content-Type: application/json" -X POST -d '{ "group": { "group_title":"Test group", "group_from_name":"Test group from name", "group_signature":"Test group signature" }}' https://[domain].omnidesk.ru/api/groups.json
https://[domain].omnidesk.ru/api/groups.json GET
Просмотр списка групп.
ПАРАМЕТРЫ
Название | Тип | Описание |
page | number | Номер страницы (положительное целое число) |
limit | number | Лимит групп на странице (целое число от 1 до 100) |
ОТВЕТ
{ "0" : { "group" : { "group_id" : 200, "group_title" : "Test group", "group_from_name" : "Test group from name", "group_signature" : "Test group signature", "active" : true, "created_at" : Mon, 05 May 2014 00:15:17 +0300, "updated_at" : Tue, 23 Dec 2014 10:55:23 +0200 } }, "1" : { "group" : { "group_id" : 202, "group_title" : "Test group 2", "group_from_name" : "Test group 2 from name", "group_signature" : "Test group 2 signature", "active" : false, "created_at" : Mon, 15 May 2014 00:15:17 +0300, "updated_at" : Tue, 13 Dec 2014 10:55:23 +0200 } }, "total_count":10 }
Пример кода
curl -u [staff_email]:[api_key] -H "Content-Type: application/json" -X GET https://[domain].omnidesk.ru/api/groups.json?limit=50&page=2
https://[domain].omnidesk.ru/api/groups/[id].json GET
Просмотр конкретной группы.
ОТВЕТ
{ "group" : { "group_id" : 200, "group_title" : "Test group", "group_from_name" : "Test group from name", "group_signature" : "Test group signature", "active" : true, "created_at" : Mon, 05 May 2014 00:15:17 +0300, "updated_at" : Tue, 23 Dec 2014 10:55:23 +0200 } }
Пример кода
curl -u [staff_email]:[api_key] -H "Content-Type: application/json" -X GET https://[domain].omnidesk.ru/api/groups/200.json
https://[domain].omnidesk.ru/api/groups/[id].json PUT
Изменение данных конкретной группы.
ПАРАМЕТРЫ
Название | Тип | Описание |
group_title | string | Название группы |
group_from_name | string | Групповое имя оптравителя для использования в ответах сотрудников |
group_signature | string | Групповая подпись для использования в ответах сотрудников |
ЗАПРОС
{ "group" : { "group_title" : "Test group 2", "group_from_name" : "Test group 2 from name" } }
ОТВЕТ
{ "group" : { "group_id" : 200, "group_title" : "Test group 2", "group_from_name" : "Test group 2 from name", "group_signature" : "Test group 2 signature", "active" : true, "created_at" : Mon, 05 May 2014 00:15:17 +0300, "updated_at" : Tue, 23 Dec 2014 10:55:23 +0200 } }
Пример кода
curl -u [staff_email]:[api_key] -H "Content-Type: application/json" -X PUT -d '{ "group": { "group_title":"Test group 2", "group_from_name":"Test group 2 from name" }}' https://[domain].omnidesk.ru/api/groups/200.json
https://[domain].omnidesk.ru/api/groups/[id]/disable.json PUT
Отключение группы.
При отключении группы мы меняем её в: правилах, обращениях, шаблонах и т.д. Поэтому сама процедура выполняется кроном (не мгновенно) и может занимать какое-то время.
ПАРАМЕТРЫ
Название | Тип | Описание |
replace_group_id | number | ID группы, которая заменит отключаемую. Необходима в случае, если отключаемая группа где-то (в правилах, обращениях, шаблонах и т.д.) задействована. |
ЗАПРОС
{ "group" : { "replace_group_id" : 300 } }
ОТВЕТ
{ "group" : { "group_id" : 200, "group_title" : "Test group 2", "group_from_name" : "Test group 2 from name", "group_signature" : "Test group 2 signature", "active" : false, "created_at" : Mon, 05 May 2014 00:15:17 +0300, "updated_at" : Tue, 23 Dec 2014 10:55:23 +0200 } }
Пример кода
curl -u [staff_email]:[api_key] -H "Content-Type: application/json" -X PUT -d '{ "group": { "replace_group_id":"300" }}' https://[domain].omnidesk.ru/api/groups/200/disable.json
https://[domain].omnidesk.ru/api/groups/[id]/enable.json PUT
Включение группы.
ОТВЕТ
{ "group" : { "group_id" : 200, "group_title" : "Test group 2", "group_from_name" : "Test group 2 from name", "group_signature" : "Test group 2 signature", "active" : true, "created_at" : Mon, 05 May 2014 00:15:17 +0300, "updated_at" : Tue, 23 Dec 2014 10:55:23 +0200 } }
Пример кода
curl -u [staff_email]:[api_key] -H "Content-Type: application/json" -X PUT -d '' https://[domain].omnidesk.ru/groups/api/200/enable.json
https://[domain].omnidesk.ru/api/groups/[id].json DELETE
Удаление группы.
При удалении группы мы меняем её в: правилах, обращениях, шаблонах и т.д. Поэтому сама процедура выполняется кроном (не мгновенно) и может занимать какое-то время.
ПАРАМЕТРЫ
Название | Тип | Описание |
replace_group_id | number | ID группы, которая заменит удаляемую. Необходима в случае, если отключаемая группа где-то (в правилах, обращениях, шаблонах и т.д.) задействована. |
ЗАПРОС
{ "group" : { "replace_group_id" : 300 } }
ОТВЕТ
HTTP Status: 200 OK
Пример кода
curl -u [staff_email]:[api_key] -H "Content-Type: application/json" -X DELETE https://[domain].omnidesk.ru/api/groups/200.json
https://[domain].omnidesk.ru/api/staff.json POST
Добавление нового сотрудника.
ПАРАМЕТРЫ
Название | Тип | Описание |
staff_email * | string | Валидный email-адреса сотрудника |
staff_full_name | string | Полное имя сотрудника |
staff_signature | string | Подпись сотрудника |
ЗАПРОС
{ "staff" : { "staff_email" : "staff@domain.ru", "staff_full_name" : "Staff full name", "staff_signature" : "Staff signature" } }
ОТВЕТ
{ "staff" : { "staff_id" : 200, "staff_email" : "staff@domain.ru", "staff_full_name" : "Staff full name", "staff_signature" : "Staff signature", "thumbnail" : "", "active" : false, "created_at" : Mon, 05 May 2014 00:15:17 +0300, "updated_at" : Tue, 23 Dec 2014 10:55:23 +0200 } }
Пример кода
curl -u [staff_email]:[api_key] -H "Content-Type: application/json" -X POST -d '{ "staff": { "staff_email":"staff@domain.ru", "staff_full_name":"Staff full name", "staff_signature":"Staff signature" }}' https://[domain].omnidesk.ru/api/staff.json
https://[domain].omnidesk.ru/api/staff.json GET
Просмотр списка сотрудников.
ПАРАМЕТРЫ
Название | Тип | Описание |
page | number | Номер страницы (положительное целое число) |
limit | number | Лимит сотрудников на странице (целое число от 1 до 100) |
ОТВЕТ
{ "0" : { "staff" : { "staff_id" : 200, "staff_email" : "staff@domain.ru", "staff_full_name" : "Staff full name", "staff_signature" : "Staff signature", "thumbnail" : "", "active" : false, "status" : "online/away/offline", "created_at" : Mon, 05 May 2014 00:15:17 +0300, "updated_at" : Tue, 23 Dec 2014 10:55:23 +0200 } }, "1" : { "staff" : { "staff_id" : 210, "staff_email" : "staff2@domain.ru", "staff_full_name" : "Staff 2 full name", "staff_signature" : "Staff 2 signature", "thumbnail" : "http://[domain].omnidesk.ru/path/avatar.jpeg", "active" : true, "status" : "online/away/offline", "created_at" : Mon, 05 May 2014 00:15:17 +0300, "updated_at" : Tue, 23 Dec 2014 10:55:23 +0200 } }, "total_count":10 }
Пример кода
curl -u [staff_email]:[api_key] -H "Content-Type: application/json" -X GET https://[domain].omnidesk.ru/api/staff.json?limit=50&page=2
https://[domain].omnidesk.ru/api/staff/[id].json GET
Просмотр данных конкретного сотрудника.
ОТВЕТ
{ "staff" : { "staff_id" : 200, "staff_email" : "staff@domain.ru", "staff_full_name" : "Staff full name", "staff_signature" : "Staff signature", "thumbnail" : "", "active" : false, "status" : "online/away/offline", "created_at" : Mon, 05 May 2014 00:15:17 +0300, "updated_at" : Tue, 23 Dec 2014 10:55:23 +0200 } }
Пример кода
curl -u [staff_email]:[api_key] -H "Content-Type: application/json" -X GET https://[domain].omnidesk.ru/api/staff/200.json
https://[domain].omnidesk.ru/api/staff/[id].json PUT
Изменение данных конкретного сотрудника.
ПАРАМЕТРЫ
Название | Тип | Описание |
staff_email | string | Новый email-адрес сотрудника |
staff_full_name | string | Полное имя сотрудника |
staff_signature | string | Подпись сотрудника |
ЗАПРОС
{ "staff" : { "staff_full_name" : "Staff full name changed" } }
ОТВЕТ
{ "staff" : { "staff_id" : 200, "staff_email" : "staff@domain.ru", "staff_full_name" : "Staff full name changed", "staff_signature" : "Staff signature", "thumbnail" : "", "active" : false, "created_at" : Mon, 05 May 2014 00:15:17 +0300, "updated_at" : Tue, 23 Dec 2014 10:55:23 +0200 } }
Пример кода
curl -u [staff_email]:[api_key] -H "Content-Type: application/json" -X PUT -d '{ "staff": { "staff_full_name":"Staff full name changed" }}' https://[domain].omnidesk.ru/api/staff/200.json
https://[domain].omnidesk.ru/api/staff/[id]/disable.json PUT
Отключение сотрудника.
При отключении сотрудника мы меняем его в: настройках правил, общих шаблонов и параметрах обращений со статусом «открытое» и «в ожидании». Поэтому сама процедура выполняется кроном (не мгновенно) и может занимать какое-то время.
ПАРАМЕТРЫ
Название | Тип | Описание |
replace_staff_id | number | ID сотрудника, который заменит отключаемого в настройках правил, общих шаблонов и параметрах обращений со статусом «открыт» и «в ожидании». |
ЗАПРОС
{ "staff" : { "replace_staff_id" : 300 } }
ОТВЕТ
{ "staff" : { "staff_id" : 200, "staff_email" : "staff@domain.ru", "staff_full_name" : "Staff full name changed", "staff_signature" : "Staff signature", "active" : false, "created_at" : Mon, 05 May 2014 00:15:17 +0300, "updated_at" : Tue, 23 Dec 2014 10:55:23 +0200 } }
Пример кода
curl -u [staff_email]:[api_key] -H "Content-Type: application/json" -X PUT -d '{ "staff": { "replace_staff_id":"300" }}' https://[domain].omnidesk.ru/api/staff/200/disable.json
https://[domain].omnidesk.ru/api/staff/[id]/enable.json PUT
Включение сотрудника.
ОТВЕТ
{ "staff" : { "staff_id" : 200, "staff_email" : "staff@domain.ru", "staff_full_name" : "Staff full name changed", "staff_signature" : "Staff signature", "active" : true, "created_at" : Mon, 05 May 2014 00:15:17 +0300, "updated_at" : Tue, 23 Dec 2014 10:55:23 +0200 } }
Пример кода
curl -u [staff_email]:[api_key] -H "Content-Type: application/json" -X PUT -d '' https://[domain].omnidesk.ru/api/staff/200/enable.json
https://[domain].omnidesk.ru/api/staff/[id].json DELETE
Удаление сотрудника.
При удалении сотрудника мы меняем его в: настройках правил, общих шаблонов и параметрах всех обращений (с любым статусом). Поэтому сама процедура выполняется кроном (не мгновенно) и может занимать какое-то время.
ПАРАМЕТРЫ
Название | Тип | Описание |
replace_staff_id | number | ID сотрудника, который заменит удаляемого в настройках правил, общих шаблонов и параметрах всех обращений (с любым статусом). |
ЗАПРОС
{ "staff" : { "replace_staff_id" : 300 } }
ОТВЕТ
HTTP Status: 200 OK
Пример кода
curl -u [staff_email]:[api_key] -H "Content-Type: application/json" -X DELETE https://[domain].omnidesk.ru/api/staff/200.json
https://[domain].omnidesk.ru/api/custom_fields.json GET
Просмотр всех дополнительных полей. Принадлежность поля (к обращению или пользователю) указана в параметре "field_level".
ОТВЕТ
{ "0" : { "custom_field" : { "field_id" : 5, "title" : "Field title 1", "field_type" : "text", "field_level" : "user", "active" : true, "field_data" : "" } }, "1" : { "custom_field" : { "field_id" : 6, "title" : "Field title 2", "field_type" : "textarea", "field_level" : "case", "active" : true, "field_data" : "" } }, "2" : { "custom_field" : { "field_id" : 7, "title" : "Field title 3", "field_type" : "checkbox", "field_level" : "user", "active" : true, "field_data" : "" } }, "3" : { "custom_field" : { "field_id" : 9, "title" : "Field title 4", "field_type" : "select", "field_level" : "case", "active" : true, "field_data" : { "1" : "First choice", "2" : "Second choice", "3" : "Third choice" } } }, "4" : { "custom_field" : { "field_id" : 9, "title" : "Field title 5", "field_type" : "date", "field_level" : "case", "active" : true, "field_data" : "" } }, "total_count":10 }
Пример кода
curl -u [staff_email]:[api_key] -H "Content-Type: application/json" -X GET https://[domain].omnidesk.ru/api/custom_fields.json
https://[domain].omnidesk.ru/api/custom_channels.json GET
Просмотр всех кастомных каналов.
ОТВЕТ
{ "0": { "custom_channel": { "channel_id": 1, "channel_api_key": "cch1", "title": "Custom Channel", "channel_type": "async", "icon": "fa-question-circle", "webhook_url": "http://example.ru/wh/omni_wh/", "active": true } }, "1": { "custom_channel": { "channel_id": 3, "channel_api_key": "cch3", "title": "Custom Channel Chat", "channel_type": "sync", "icon": "fa-bullhorn", "webhook_url": "http://example.ru/wh/omni_wh_chat/", "active": true } }, "total_count": 2 }
Пример кода
curl -u [staff_email]:[api_key] -H "Content-Type: application/json" -X GET https://[domain].omnidesk.ru/api/custom_channels.json
https://[domain].omnidesk.ru/api/languages.json GET
Просмотр всех языков клиента.
ОТВЕТ
{ "0" : { "language" : { "language_id" : 1, "code" : "RUS", "title" : "Русский", "active" : true } }, "1" : { "language" : { "language_id" : 2, "code" : "ENG", "title" : "English", "active" : false } }, "total_count":2 }
Пример кода
curl -u [staff_email]:[api_key] -H "Content-Type: application/json" -X GET https://[domain].omnidesk.ru/api/languages.json
https://[domain].omnidesk.ru/api/kb_category.json POST
Создание категории.
ПАРАМЕТРЫ
Название | Тип | Описание |
category_title * | string/array | Название категории. Если у вас включена мультиязычность, и база знаний доступна на нескольких языках, вы можете сразу указать название категории на разных языках. Для этого нужно передать массив с ID языка и названием для каждой языковой версии категории. |
ЗАПРОС
{ "kb_category" : { "category_title" : "Test category", } }
{ "kb_category" : { "category_title" : { "1" : "Название категории", "2" : "Category name", } }
ОТВЕТ
{ "kb_category" : { "category_id" : 234, "category_title" : "Test category", "active" : true, "created_at" : Mon, 05 May 2014 00:15:17 +0300, "updated_at" : Tue, 23 Dec 2014 10:55:23 +0200 } }
Пример кода
curl -u [staff_email]:[api_key] -H "Content-Type: application/json" -X POST -d '{ "kb_category": { "category_title":"Test category" }}' https://[domain].omnidesk.ru/api/kb_category.json
https://[domain].omnidesk.ru/api/kb_category.json GET
Получение списка категорий.
ПАРАМЕТРЫ
Название | Тип | Описание |
page | number | Номер страницы (положительное целое число) |
limit | number | Лимит категорий на странице (целое число от 1 до 100) |
language_id | string | По умолчанию в ответе мы выводим список категорий на основном языке. Если требуется просмотреть список категорий на нужном языке, передайте этот параметр с ID языка. Также можно передать этот параметр со значением "all", чтобы названия каждой категории отображались на всех настроенных языках. |
ОТВЕТ
{ "0" : { "kb_category" : { "category_id" : 234, "category_title" : "Test category 1", "active" : true, "created_at" : Mon, 05 May 2014 00:15:17 +0300, "updated_at" : Tue, 23 Dec 2014 10:55:23 +0200 } }, "1" : { "kb_category" : { "category_id" : 235, "category_title" : "Test category 2", "active" : false, "created_at" : Mon, 15 May 2014 00:15:17 +0300, "updated_at" : Tue, 13 Dec 2014 10:55:23 +0200 } }, "total_count":10 }
{ "0" : { "kb_category" : { "category_id" : 234, "category_title" : { "1" :"Тест 1", "2" :"Test category 1" } "active" : true, "created_at" : Mon, 05 May 2014 00:15:17 +0300, "updated_at" : Tue, 23 Dec 2014 10:55:23 +0200 } }, "1" : { "kb_category" : { "category_id" : 235, "category_title" : { "1" :"Тест 2", "2" :"Test category 2" } "active" : false, "created_at" : Mon, 15 May 2014 00:15:17 +0300, "updated_at" : Tue, 13 Dec 2014 10:55:23 +0200 } }, "total_count":10 }
Пример кода
curl -u [staff_email]:[api_key] -H "Content-Type: application/json" -X GET https://[domain].omnidesk.ru/api/kb_category.json?limit=50&page=2
https://[domain].omnidesk.ru/api/kb_category/[id].json GET
Просмотр категории.
ПАРАМЕТРЫ
Название | Тип | Описание |
language_id | string | По умолчанию в ответе мы выводим категорию на основном языке. Если требуется просмотреть категорию на нужном языке, передайте этот параметр с ID языка. Также можно передать этот параметр со значением "all", чтобы название категории отображалось на всех настроенных языках. |
ОТВЕТ
{ "kb_category" : { "category_id" : 234, "category_title" : "Test category", "active" : true, "created_at" : Mon, 05 May 2014 00:15:17 +0300, "updated_at" : Tue, 23 Dec 2014 10:55:23 +0200 } }
{ "kb_category" : { "category_id" : 234, "category_title" : { "1" :"Тест 1", "2" :"Test category 1" } "active" : true, "created_at" : Mon, 05 May 2014 00:15:17 +0300, "updated_at" : Tue, 23 Dec 2014 10:55:23 +0200 } }
Пример кода
curl -u [staff_email]:[api_key] -H "Content-Type: application/json" -X GET https://[domain].omnidesk.ru/api/kb_category/234.json
https://[domain].omnidesk.ru/api/kb_category/[id].json PUT
Редактирование категории.
ПАРАМЕТРЫ
Название | Тип | Описание |
category_title | string/array | Название категории. Если у вас включена мультиязычность, и база знаний доступна на нескольких языках, вы можете сразу указать название категории на разных языках. Для этого нужно передать массив с ID языка и названием для каждой языковой версии категории. |
ЗАПРОС
{ "kb_category" : { "category_title" : "Test category 2", } }
{ "kb_category" : { "category_title" : { "1" :"Тест 2", "2" :"Test category 2" } } }
ОТВЕТ
{ "kb_category" : { "category_id" : 234, "category_title" : "Test category 2", "active" : true, "created_at" : Mon, 05 May 2014 00:15:17 +0300, "updated_at" : Tue, 23 Dec 2014 10:55:23 +0200 } }
Пример кода
curl -u [staff_email]:[api_key] -H "Content-Type: application/json" -X PUT -d '{ "kb_category": { "category_title":"Test category 2" }}' https://[domain].omnidesk.ru/api/kb_category/234.json
https://[domain].omnidesk.ru/api/kb_category/[id]/disable.json PUT
Выключение категории.
ОТВЕТ
{ "kb_category" : { "category_id" : 234, "category_title" : "Test category 2", "active" : false, "created_at" : Mon, 05 May 2014 00:15:17 +0300, "updated_at" : Tue, 23 Dec 2014 10:55:23 +0200 } }
Пример кода
curl -u [staff_email]:[api_key] -H "Content-Type: application/json" -X PUT -d '' https://[domain].omnidesk.ru/api/kb_category/234/disable.json
https://[domain].omnidesk.ru/api/kb_category/[id]/enable.json PUT
Включение категории.
ОТВЕТ
{ "kb_category" : { "category_id" : 234, "category_title" : "Test category 2", "active" : true, "created_at" : Mon, 05 May 2014 00:15:17 +0300, "updated_at" : Tue, 23 Dec 2014 10:55:23 +0200 } }
Пример кода
curl -u [staff_email]:[api_key] -H "Content-Type: application/json" -X PUT -d '' https://[domain].omnidesk.ru/api/kb_category/234/enable.json
https://[domain].omnidesk.ru/api/kb_category/[id]/moveup.json PUT
Переместить на шаг вверх.
ОТВЕТ
{ "kb_category" : { "category_id" : 234, "category_title" : "Test category 2", "active" : true, "created_at" : Mon, 05 May 2014 00:15:17 +0300, "updated_at" : Tue, 23 Dec 2014 10:55:23 +0200 } }
Пример кода
curl -u [staff_email]:[api_key] -H "Content-Type: application/json" -X PUT -d '' https://[domain].omnidesk.ru/api/kb_category/234/moveup.json
https://[domain].omnidesk.ru/api/kb_category/[id]/movedown.json PUT
Переместить на шаг вниз.
ОТВЕТ
{ "kb_category" : { "category_id" : 234, "category_title" : "Test category 2", "active" : true, "created_at" : Mon, 05 May 2014 00:15:17 +0300, "updated_at" : Tue, 23 Dec 2014 10:55:23 +0200 } }
Пример кода
curl -u [staff_email]:[api_key] -H "Content-Type: application/json" -X PUT -d '' https://[domain].omnidesk.ru/api/kb_category/234/movedown.json
https://[domain].omnidesk.ru/api/kb_category/[id].json DELETE
Удаление категории.
ОТВЕТ
HTTP Status: 200 OK
Пример кода
curl -u [staff_email]:[api_key] -H "Content-Type: application/json" -X DELETE https://[domain].omnidesk.ru/api/kb_category/234.json
https://[domain].omnidesk.ru/api/kb_section.json POST
Создание раздела.
ПАРАМЕТРЫ
Название | Тип | Описание |
section_title * | string/array | Название раздела. Если у вас включена мультиязычность, и база знаний доступна на нескольких языках, вы можете сразу указать название раздела на разных языках. Для этого нужно передать массив с ID языка и названием для каждой языковой версии раздела. |
section_description | string/array | Описание раздела. Если у вас включена мультиязычность, и база знаний доступна на нескольких языках, вы можете сразу указать описание раздела на разных языках. Для этого нужно передать массив с ID языка и описанием для каждой языковой версии раздела. |
category_id * | string | Id категории |
ЗАПРОС
{ "kb_section" : { "section_title" : "Test section", "section_description" : "Test section description", "category_id": 1 } }
{ "kb_section" : { "section_title" : { "1" :"Тест 1", "2" :"Test section 1" }, "section_description" : { "1" :"Тест описание 1", "2" :"Test section description 1" }, "category_id": 1 } }
ОТВЕТ
{ "kb_section" : { "section_id" : 10, "category_id" : 1, "section_title" : "Test section", "section_description" : "Test section description", "active" : true, "created_at" : Mon, 05 May 2014 00:15:17 +0300, "updated_at" : Tue, 23 Dec 2014 10:55:23 +0200 } }
Пример кода
curl -u [staff_email]:[api_key] -H "Content-Type: application/json" -X POST -d '{ "kb_section": { "section_title":"Test section", "section_description":"Test section description", "category_id":1 }}' https://[domain].omnidesk.ru/api/kb_section.json
https://[domain].omnidesk.ru/api/kb_section.json GET
Получение списка разделов.
ПАРАМЕТРЫ
Название | Тип | Описание |
page | number | Номер страницы (положительное целое число) |
limit | number | Лимит разделов на странице (целое число от 1 до 100) |
category_id * | string | Id категории |
language_id | string | По умолчанию в ответе мы выводим список разделов на основном языке. Если требуется просмотреть список разделов на нужном языке, передайте этот параметр с ID языка. Также можно передать этот параметр со значением "all", чтобы данные каждого раздела отображались на всех настроенных языках. |
ОТВЕТ
{ "0" : { "kb_section" : { "section_id" : 10, "category_id" : 1, "section_title" : "Test section", "section_description" : "Test section description", "active" : true, "created_at" : Mon, 05 May 2014 00:15:17 +0300, "updated_at" : Tue, 23 Dec 2014 10:55:23 +0200 } }, "1" : { "kb_section" : { "section_id" : 11, "category_id" : 1, "section_title" : "Test section 2", "section_description" : "Test section 2 description", "active" : false, "created_at" : Mon, 15 May 2014 00:15:17 +0300, "updated_at" : Tue, 13 Dec 2014 10:55:23 +0200 } }, "total_count":10 }
{ "0" : { "kb_section" : { "section_id" : 10, "category_id" : 1, "section_title" : { "1" :"Тест 1", "2" :"Test section 1" }, "section_description" : { "1" :"Тест описание 1", "2" :"Test section description 1" }, "active" : true, "created_at" : Mon, 05 May 2014 00:15:17 +0300, "updated_at" : Tue, 23 Dec 2014 10:55:23 +0200 } }, "1" : { "kb_section" : { "section_id" : 11, "category_id" : 1, "section_title" : { "1" :"Тест 2", "2" :"Test section 2" }, "section_description" : { "1" :"Тест описание 2", "2" :"Test section description 2" }, "active" : false, "created_at" : Mon, 15 May 2014 00:15:17 +0300, "updated_at" : Tue, 13 Dec 2014 10:55:23 +0200 } }, "total_count":10 }
Пример кода
curl -u [staff_email]:[api_key] -H "Content-Type: application/json" -X GET https://[domain].omnidesk.ru/api/kb_section.json?category_id=1&limit=50&page=2
https://[domain].omnidesk.ru/api/kb_section/[id].json GET
Просмотр раздела.
ПАРАМЕТРЫ
Название | Тип | Описание |
language_id | string | По умолчанию в ответе мы выводим раздел на основном языке. Если требуется просмотреть раздел на нужном языке, передайте этот параметр с ID языка. Также можно передать этот параметр со значением "all", чтобы данные по разделу отображались на всех настроенных языках. |
ОТВЕТ
{ "kb_section" : { "section_id" : 10, "category_id" : 1, "section_title" : "Test section", "section_description" : "Test section description", "active" : true, "created_at" : Mon, 05 May 2014 00:15:17 +0300, "updated_at" : Tue, 23 Dec 2014 10:55:23 +0200 } }
{ "kb_section" : { "section_id" : 10, "category_id" : 1, "section_title" : { "1" :"Тест 1", "2" :"Test section 1" }, "section_description" : { "1" :"Тест описание 1", "2" :"Test section description 1" }, "active" : true, "created_at" : Mon, 05 May 2014 00:15:17 +0300, "updated_at" : Tue, 23 Dec 2014 10:55:23 +0200 } }
Пример кода
curl -u [staff_email]:[api_key] -H "Content-Type: application/json" -X GET https://[domain].omnidesk.ru/api/kb_section/10.json
https://[domain].omnidesk.ru/api/kb_section/[id].json PUT
Редактирование раздела.
ПАРАМЕТРЫ
Название | Тип | Описание |
section_title | string | Название раздела. Если у вас включена мультиязычность, и база знаний доступна на нескольких языках, вы можете сразу указать название раздела на разных языках. Для этого нужно передать массив с ID языка и названием для каждой языковой версии раздела. |
section_description | string | Описание раздела. Если у вас включена мультиязычность, и база знаний доступна на нескольких языках, вы можете сразу указать описание раздела на разных языках. Для этого нужно передать массив с ID языка и описанием для каждой языковой версии раздела. |
category_id | string | Id категории |
ЗАПРОС
{ "kb_section" : { "section_title" : "Test section 2", "section_description" : "Test section 2 description", "category_id": 2 } }
{ "kb_section" : { "section_title" : { "1" :"Тест 2", "2" :"Test section 2" }, "section_description" : { "1" :"Тест описание 2", "2" :"Test section description 2" }, "category_id": 2 } }
ОТВЕТ
{ "kb_section" : { "section_id" : 10, "category_id" : 2, "section_title" : "Test section 2", "section_description" : "Test section 2 description", "active" : true, "created_at" : Mon, 05 May 2014 00:15:17 +0300, "updated_at" : Tue, 23 Dec 2014 10:55:23 +0200 } }
Пример кода
curl -u [staff_email]:[api_key] -H "Content-Type: application/json" -X PUT -d '{ "kb_section": { "section_title":"Test section 2", "section_description":"Test section 2 description", "category_id": 2 }}' https://[domain].omnidesk.ru/api/kb_section/10.json
https://[domain].omnidesk.ru/api/kb_section/[id]/disable.json PUT
Выключение раздела.
ОТВЕТ
{ "kb_section" : { "section_id" : 10, "category_id" : 2, "section_title" : "Test section 2", "section_description" : "Test section 2 description", "active" : false, "created_at" : Mon, 05 May 2014 00:15:17 +0300, "updated_at" : Tue, 23 Dec 2014 10:55:23 +0200 } }
Пример кода
curl -u [staff_email]:[api_key] -H "Content-Type: application/json" -X PUT -d '' https://[domain].omnidesk.ru/api/kb_section/10/disable.json
https://[domain].omnidesk.ru/api/kb_section/[id]/enable.json PUT
Включение раздела.
ОТВЕТ
{ "kb_section" : { "section_id" : 10, "category_id" : 2, "section_title" : "Test section 2", "section_description" : "Test section 2 description", "active" : true, "created_at" : Mon, 05 May 2014 00:15:17 +0300, "updated_at" : Tue, 23 Dec 2014 10:55:23 +0200 } }
Пример кода
curl -u [staff_email]:[api_key] -H "Content-Type: application/json" -X PUT -d '' https://[domain].omnidesk.ru/api/kb_section/10/enable.json
https://[domain].omnidesk.ru/api/kb_section/[id]/moveup.json PUT
Переместить на шаг вверх.
ОТВЕТ
{ "kb_section" : { "section_id" : 10, "category_id" : 2, "section_title" : "Test section 2", "section_description" : "Test section 2 description", "active" : true, "created_at" : Mon, 05 May 2014 00:15:17 +0300, "updated_at" : Tue, 23 Dec 2014 10:55:23 +0200 } }
Пример кода
curl -u [staff_email]:[api_key] -H "Content-Type: application/json" -X PUT -d '' https://[domain].omnidesk.ru/api/kb_section/10/moveup.json
https://[domain].omnidesk.ru/api/kb_section/[id]/movedown.json PUT
Переместить на шаг вниз.
ОТВЕТ
{ "kb_section" : { "section_id" : 10, "category_id" : 2, "section_title" : "Test section 2", "section_description" : "Test section 2 description", "active" : true, "created_at" : Mon, 05 May 2014 00:15:17 +0300, "updated_at" : Tue, 23 Dec 2014 10:55:23 +0200 } }
Пример кода
curl -u [staff_email]:[api_key] -H "Content-Type: application/json" -X PUT -d '' https://[domain].omnidesk.ru/api/kb_section/10/movedown.json
https://[domain].omnidesk.ru/api/kb_section/[id].json DELETE
Удаление раздела.
ОТВЕТ
HTTP Status: 200 OK
Пример кода
curl -u [staff_email]:[api_key] -H "Content-Type: application/json" -X DELETE https://[domain].omnidesk.ru/api/kb_section/10.json
https://[domain].omnidesk.ru/api/kb_article.json POST
Создание статьи.
ПАРАМЕТРЫ
Название | Тип | Описание |
article_title * | string/array | Название статьи. Если у вас включена мультиязычность, и база знаний доступна на нескольких языках, вы можете сразу указать название статьи на разных языках. Для этого нужно передать массив с ID языка и названием для каждой языковой версии статьи. |
article_content * | string/array | Содержание статьи. Если у вас включена мультиязычность, и база знаний доступна на нескольких языках, вы можете сразу указать содержание статьи на разных языках. Для этого нужно передать массив с ID языка и содержанием для каждой языковой версии статьи. |
article_tags | string/array | Ключевые слова для поиска. Если у вас включена мультиязычность, и база знаний доступна на нескольких языках, вы можете сразу указать ключевые слова для поиска на разных языках. Для этого нужно передать массив с ID языка и ключевыми словами для каждой языковой версии статьи. |
section_id * | string | Id раздела |
access_type | string | Уровень доступа (public или staff_only). По умолчанию - public |
ЗАПРОС
{ "kb_article" : { "article_title" : "Test article title", "article_content" : "Test article content", "article_tags" : "test,article,content", "section_id": 10 } }
{ "kb_article" : { "article_title" : { "1" :"Название статьи", "2" :"Test article title" }, "article_content" : { "1" :"Содержание статьи", "2" :"Test article content" }, "article_tags" : { "1" :"тег,тег,тег", "2" :"tag,tag,tag" }, "section_id": 10 } }
ОТВЕТ
{ "kb_article" : { "article_id" : 100, "section_id" : 10, "article_title" : "Test article title", "article_content" : "Test article content", "article_tags" : "tag,tag,tag", "access_type" : "public", "active" : true, "created_at" : Mon, 05 May 2014 00:15:17 +0300, "updated_at" : Tue, 23 Dec 2014 10:55:23 +0200 } }
Пример кода
curl -u [staff_email]:[api_key] -H "Content-Type: application/json" -X POST -d '{ "kb_article": { "article_title":"Test article title", "article_content":"Test article content", "section_id": 10 }}' https://[domain].omnidesk.ru/api/kb_article.json
https://[domain].omnidesk.ru/api/kb_article.json GET
Получение списка статей.
ПАРАМЕТРЫ
Название | Тип | Описание |
page | number | Номер страницы (положительное целое число) |
limit | number | Лимит статей на странице (целое число от 1 до 100) |
search | string | Строка для поиска (по необходимости, не менее 3 символов) |
section_id | string | ID раздела для вывода статей только конкретного раздела |
language_id | string | По умолчанию в ответе мы выводим список статей на основном языке. Если требуется просмотреть список статей на нужном языке, передайте этот параметр с ID языка. Также можно передать этот параметр со значением "all", чтобы данные каждой статьи отображались на всех настроенных языках. |
ОТВЕТ
{ "0" : { "kb_article" : { "article_id" : 100, "section_id" : 10, "article_title" : "Test article title", "article_content" : "Test article content", "article_tags" : "tag,tag,tag", "access_type" : "public", "active" : true, "created_at" : Mon, 05 May 2014 00:15:17 +0300, "updated_at" : Tue, 23 Dec 2014 10:55:23 +0200 } }, "1" : { "kb_article" : { "article_id" : 101, "section_id" : 11, "article_title" : "Test article title 2", "article_content" : "Test article content", "article_tags" : "tag,tag,tag", "access_type" : "public", "active" : false, "created_at" : Mon, 15 May 2014 00:15:17 +0300, "updated_at" : Tue, 13 Dec 2014 10:55:23 +0200 } } }
{ "0" : { "kb_article" : { "article_id" : 100, "section_id" : 10, "article_title" : { "1" :"Название статьи", "2" :"Test article title" }, "article_content" : { "1" :"Содержание статьи", "2" :"Test article content" }, "article_tags" : { "1" :"тег,тег,тег", "2" :"tag,tag,tag" }, "access_type" : "public", "active" : true, "created_at" : Mon, 05 May 2014 00:15:17 +0300, "updated_at" : Tue, 23 Dec 2014 10:55:23 +0200 } }, "1" : { "kb_article" : { "article_id" : 101, "section_id" : 11, "article_title" : { "1" :"Название статьи 2", "2" :"Test article title 2" }, "article_content" : { "1" :"Содержание статьи", "2" :"Test article content" }, "article_tags" : { "1" :"тег,тег,тег", "2" :"tag,tag,tag" }, "access_type" : "public", "active" : false, "created_at" : Mon, 15 May 2014 00:15:17 +0300, "updated_at" : Tue, 13 Dec 2014 10:55:23 +0200 } } }
Пример кода
curl -u [staff_email]:[api_key] -H "Content-Type: application/json" -X GET https://[domain].omnidesk.ru/api/kb_article.json?limit=50&page=2
https://[domain].omnidesk.ru/api/kb_article/[id].json GET
Просмотр статьи.
ПАРАМЕТРЫ
Название | Тип | Описание |
language_id | string | По умолчанию в ответе мы выводим статью на основном языке. Если требуется просмотреть статью на нужном языке, передайте этот параметр с ID языка. Также можно передать этот параметр со значением "all", чтобы данные статьи отображались на всех настроенных языках. |
ОТВЕТ
{ "kb_article" : { "article_id" : 100, "section_id" : 10, "article_title" : "Test article title", "article_content" : "Test article content", "article_tags" : "tag,tag,tag", "access_type" : "public", "active" : true, "created_at" : Mon, 05 May 2014 00:15:17 +0300, "updated_at" : Tue, 23 Dec 2014 10:55:23 +0200 } }
{ "kb_article" : { "article_id" : 100, "section_id" : 10, "article_title" : { "1" :"Название статьи", "2" :"Test article title" }, "article_content" : { "1" :"Содержание статьи", "2" :"Test article content" }, "article_tags" : { "1" :"тег,тег,тег", "2" :"tag,tag,tag" }, "access_type" : "public", "active" : true, "created_at" : Mon, 05 May 2014 00:15:17 +0300, "updated_at" : Tue, 23 Dec 2014 10:55:23 +0200 } }
Пример кода
curl -u [staff_email]:[api_key] -H "Content-Type: application/json" -X GET https://[domain].omnidesk.ru/api/kb_article/100.json
https://[domain].omnidesk.ru/api/kb_article/[id].json PUT
Редактирование статьи.
ПАРАМЕТРЫ
Название | Тип | Описание |
article_title | string/array | Название статьи. Если у вас включена мультиязычность, и база знаний доступна на нескольких языках, вы можете сразу указать название статьи на разных языках. Для этого нужно передать массив с ID языка и названием для каждой языковой версии статьи. |
article_content | string/array | Содержание статьи. Если у вас включена мультиязычность, и база знаний доступна на нескольких языках, вы можете сразу указать содержание статьи на разных языках. Для этого нужно передать массив с ID языка и содержанием для каждой языковой версии статьи. |
article_tags | string/array | Ключевые слова для поиска. Если у вас включена мультиязычность, и база знаний доступна на нескольких языках, вы можете сразу указать ключевые слова для поиска на разных языках. Для этого нужно передать массив с ID языка и ключевыми словами для каждой языковой версии статьи. |
section_id | string | Id раздела |
access_type | string | Уровень доступа (public или staff_only) |
ЗАПРОС
{ "kb_article" : { "article_title" : "Test article title 2", "article_content" : "Test article 2 content", "article_tags" : "tag,tag_new", "section_id": 20 } }
{ "kb_article" : { "article_title" : { "1" :"Название статьи 2", "2" :"Test article title 2" }, "article_content" : { "1" :"Содержание статьи 2", "2" :"Test article content2" }, "article_tags" : { "1" :"тег,те", "2" :"tag,tag" }, "section_id": 20 } }
ОТВЕТ
{ "kb_article" : { "article_id" : 100, "section_id" : 20, "article_title" : "Test article title 2", "article_content" : "Test article 2 content", "article_tags" : "tag,tag_new", "access_type" : "public", "active" : true, "created_at" : Mon, 05 May 2014 00:15:17 +0300, "updated_at" : Tue, 23 Dec 2014 10:55:23 +0200 } }
Пример кода
curl -u [staff_email]:[api_key] -H "Content-Type: application/json" -X PUT -d '{ "kb_article": { "article_title":"Test article title 2", "article_content":"Test article 2 content", "section_id": 20 }}' https://[domain].omnidesk.ru/api/kb_article/100.json
https://[domain].omnidesk.ru/api/kb_article/[id]/disable.json PUT
Выключение статьи.
ОТВЕТ
{ "kb_article" : { "article_id" : 100, "section_id" : 20, "article_title" : "Test article title 2", "article_content" : "Test article 2 content", "article_tags" : "tag,tag,tag", "access_type" : "public", "active" : false, "created_at" : Mon, 05 May 2014 00:15:17 +0300, "updated_at" : Tue, 23 Dec 2014 10:55:23 +0200 } }
Пример кода
curl -u [staff_email]:[api_key] -H "Content-Type: application/json" -X PUT -d '' https://[domain].omnidesk.ru/api/kb_article/100/disable.json
https://[domain].omnidesk.ru/api/kb_article/[id]/enable.json PUT
Включение статьи.
ОТВЕТ
{ "kb_article" : { "article_id" : 100, "section_id" : 20, "article_title" : "Test article title 2", "article_content" : "Test article 2 content", "article_tags" : "tag,tag,tag", "access_type" : "public", "active" : true, "created_at" : Mon, 05 May 2014 00:15:17 +0300, "updated_at" : Tue, 23 Dec 2014 10:55:23 +0200 } }
Пример кода
curl -u [staff_email]:[api_key] -H "Content-Type: application/json" -X PUT -d '' https://[domain].omnidesk.ru/api/kb_article/100/enable.json
https://[domain].omnidesk.ru/api/kb_article/[id]/moveup.json PUT
Переместить на шаг вверх.
ОТВЕТ
{ "kb_article" : { "article_id" : 100, "section_id" : 20, "article_title" : "Test article title 2", "article_content" : "Test article 2 content", "article_tags" : "tag,tag,tag", "access_type" : "public", "active" : true, "created_at" : Mon, 05 May 2014 00:15:17 +0300, "updated_at" : Tue, 23 Dec 2014 10:55:23 +0200 } }
Пример кода
curl -u [staff_email]:[api_key] -H "Content-Type: application/json" -X PUT -d '' https://[domain].omnidesk.ru/api/kb_article/100/moveup.json
https://[domain].omnidesk.ru/api/kb_article/[id]/movedown.json PUT
Переместить на шаг вниз.
ОТВЕТ
{ "kb_article" : { "article_id" : 100, "section_id" : 20, "article_title" : "Test article title 2", "article_content" : "Test article 2 content", "article_tags" : "tag,tag,tag", "access_type" : "public", "active" : true, "created_at" : Mon, 05 May 2014 00:15:17 +0300, "updated_at" : Tue, 23 Dec 2014 10:55:23 +0200 } }
Пример кода
curl -u [staff_email]:[api_key] -H "Content-Type: application/json" -X PUT -d '' https://[domain].omnidesk.ru/api/kb_article/100/movedown.json
https://[domain].omnidesk.ru/api/kb_article/[id].json DELETE
Удаление статьи.
ОТВЕТ
HTTP Status: 200 OK
Пример кода
curl -u [staff_email]:[api_key] -H "Content-Type: application/json" -X DELETE https://[domain].omnidesk.ru/api/kb_article/100.json
https://[domain].omnidesk.ru/api/stats_lb_staff.json GET
Лучшие в команде по сотрудникам.
Средние скорость первого ответа и скорость закрытия выводятся в секундах.
ПАРАМЕТРЫ
Название | Тип | Описание |
from_time * | string | Начало периода для отображения статистики (строковое значение) |
to_time * | string | Конец периода для отображения статистики (строковое значение) |
ОТВЕТ
{ "staff" : { "staff_id" : 100, "staff_name" : "Viktor Persov", "cases_with_first_reply" : 36, "first_reply_speed" : 28, "total_amount_of_replies" : 89, "closed_cases" : 17, "closing_speed" : 445, "average_rating" : 84% }, "staff" : { "staff_id" : 102, "staff_name" : "Stas Pokrasin", "cases_with_first_reply" : 61, "first_reply_speed" : 43, "total_amount_of_replies" : 137, "closed_cases" : 29, "closing_speed" : 409, "average_rating" : 79% }, }
Пример кода
curl -u [staff_email]:[api_key] -H "Content-Type: application/json" -X GET "https://[domain].omnidesk.ru/api/stats_lb_staff.json?from_time=01+Jan+2015+00%3A00%3A00+%2B0300&to_time=05+Dec+2015+00%3A00%3A00+%2B0300"
https://[domain].omnidesk.ru/api/stats_lb_groups.json GET
Лучшие в команде по группам.
Средние скорость первого ответа и скорость закрытия выводятся в секундах.
ПАРАМЕТРЫ
Название | Тип | Описание |
from_time * | string | Начало периода для отображения статистики (строковое значение) |
to_time * | string | Конец периода для отображения статистики (строковое значение) |
ОТВЕТ
{ "group" : { "group_id" : 21, "group_name" : "General questions", "cases_with_first_reply" : 86, "first_reply_speed" : 36, "total_amount_of_replies" : 194, "closed_cases" : 57, "closing_speed" : 458, "average_rating" : 82% }, "staff" : { "group_id" : 22, "group_name" : "Billing questions", "cases_with_first_reply" : 34, "first_reply_speed" : 42, "total_amount_of_replies" : 91, "closed_cases" : 13, "closing_speed" : 607, "average_rating" : 89% }, }
Пример кода
curl -u [staff_email]:[api_key] -H "Content-Type: application/json" -X GET "https://[domain].omnidesk.ru/api/stats_lb_groups.json?from_time=01+Jan+2015+00%3A00%3A00+%2B0300&to_time=05+Dec+2015+00%3A00%3A00+%2B0300"
https://[domain].omnidesk.ru/api/ideas_category.json POST
Создание категории.
ПАРАМЕТРЫ
Название | Тип | Описание |
category_title * | string | Название категории |
ЗАПРОС
{ "ideas_category" : { "category_title" : "Test category", } }
ОТВЕТ
{ "ideas_category" : { "category_id" : 234, "category_title" : "Test category", "active" : true, } }
Пример кода
curl -u [staff_email]:[api_key] -H "Content-Type: application/json" -X POST -d '{ "ideas_category": { "category_title":"Test category" }}' https://[domain].omnidesk.ru/api/ideas_category.json
https://[domain].omnidesk.ru/api/ideas_category.json GET
Получение списка категорий.
ПАРАМЕТРЫ
Название | Тип | Описание |
page | number | Номер страницы (положительное целое число) |
limit | number | Лимит категорий на странице (целое число от 1 до 100) |
ОТВЕТ
{ "0" : { "ideas_category" : { "category_id" : 234, "category_title" : "Test category 1", "active" : true, } }, "1" : { "ideas_category" : { "category_id" : 235, "category_title" : "Test category 2", "active" : false, } }, "total_count":10 }
Пример кода
curl -u [staff_email]:[api_key] -H "Content-Type: application/json" -X GET https://[domain].omnidesk.ru/api/ideas_category.json?limit=50&page=2
https://[domain].omnidesk.ru/api/ideas_category/[id].json GET
Просмотр категории.
ОТВЕТ
{ "ideas_category" : { "category_id" : 234, "category_title" : "Test category", "active" : true, } }
Пример кода
curl -u [staff_email]:[api_key] -H "Content-Type: application/json" -X GET https://[domain].omnidesk.ru/api/ideas_category/234.json
https://[domain].omnidesk.ru/api/ideas_category/[id].json PUT
Редактирование категории.
ПАРАМЕТРЫ
Название | Тип | Описание |
category_title | string | Название категории |
ЗАПРОС
{ "ideas_category" : { "category_title" : "Test category 2", } }
ОТВЕТ
{ "ideas_category" : { "category_id" : 234, "category_title" : "Test category 2", "active" : true, } }
Пример кода
curl -u [staff_email]:[api_key] -H "Content-Type: application/json" -X PUT -d '{ "ideas_category": { "category_title":"Test category 2" }}' https://[domain].omnidesk.ru/api/ideas_category/234.json
https://[domain].omnidesk.ru/api/ideas_category/[id]/disable.json PUT
Выключение категории.
ОТВЕТ
{ "ideas_category" : { "category_id" : 234, "category_title" : "Test category 2", "active" : false, } }
Пример кода
curl -u [staff_email]:[api_key] -H "Content-Type: application/json" -X PUT -d '' https://[domain].omnidesk.ru/api/ideas_category/234/disable.json
https://[domain].omnidesk.ru/api/ideas_category/[id]/enable.json PUT
Включение категории.
ОТВЕТ
{ "ideas_category" : { "category_id" : 234, "category_title" : "Test category 2", "active" : true, "created_at" : Mon, 05 May 2014 00:15:17 +0300, "updated_at" : Tue, 23 Dec 2014 10:55:23 +0200 } }
Пример кода
curl -u [staff_email]:[api_key] -H "Content-Type: application/json" -X PUT -d '' https://[domain].omnidesk.ru/api/ideas_category/234/enable.json
https://[domain].omnidesk.ru/api/ideas_category/[id].json DELETE
Удаление категории.
ОТВЕТ
HTTP Status: 200 OK
Пример кода
curl -u [staff_email]:[api_key] -H "Content-Type: application/json" -X DELETE https://[domain].omnidesk.ru/api/ideas_category/234.json
https://[domain].omnidesk.ru/api/client_emails.json GET
Просмотр всех email-адресов клиента.
ОТВЕТ
{ "0": { "client_emails": { "email_id": 7, "email": "example@gmail.com", "active": true } }, "1": { "client_emails": { "email_id": 9, "email": "support@example.omnidesk.ru", "active": true } }, "2": { "client_emails": { "email_id": 127, "email": "test@example.omnidesk.ru", "active": false } }, "total_count": 3
Пример кода
curl -u [staff_email]:[api_key] -H "Content-Type: application/json" -X GET https://[domain].omnidesk.ru/api/client_emails.json