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_full_name | string | Полное имя пользователя |
| user_company_name | string | Компания пользователя |
| user_custom_id | string | ID, по которому вы сами определяете пользователя. Данный параметр нужно передавать только при создании обращения по кастомному каналу (обязателен, если нет email-адреса/телефона) |
| initiator_id | int | ID сотрудника, от имени которого создаётся обращение. При этом на почту пользователя отправляется письмо. Если этот параметр не задан, обращение создаётся от имени пользователя. |
| staff_id | int | ID ответственного сотрудника. |
| subject * | string | Тема обращения |
| content * | string | Содержание обращения |
| content_html * | string | HTML содержание обращения (имеет больший приоритет, чем текстовое содержание) |
| 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" : {
"user_email" : "user@domain.ru",
"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",
"recipient_cc" : "",
"recipient_bcc" : "",
"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",
"recipient_cc" : "",
"recipient_bcc" : "",
"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) |
| 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, чтобы в результатах были поглощённые обращения. |
| 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 — по статусу обращения (закрытые в начале). |
ОТВЕТ
{
"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",
"recipient_cc" : "user_cc@domain.ru,user_cc2@domain.ru,user_cc3@domain.ru",
"recipient_bcc" : "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",
"recipient_cc" : "",
"recipient_bcc" : "",
"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",
"recipient_cc" : "user_cc@domain.ru,user_cc2@domain.ru,user_cc3@domain.ru",
"recipient_bcc" : "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",
"recipient_cc" : "user_cc@domain.ru,user_cc2@domain.ru,user_cc3@domain.ru",
"recipient_bcc" : "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",
"recipient_cc" : "user_cc@domain.ru,user_cc2@domain.ru,user_cc3@domain.ru",
"recipient_bcc" : "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 содержание обращения (имеет больший приоритет, чем текстовое содержание) |
| staff_id | number | ID сотрудника, от имени которого добавляется ответ. Если этот параметр не указан, мы берем ID сотрудника, чей email-адрес используется для API авторизации. |
| user_id | number | ID пользователя, от имени которого добавляется ответ. При наличии этого параметра staff_id игнорируется, и создаётся ответ от пользователя. |
ЗАПРОС
{
"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] |
| 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" : "",
"recipient_cc" : "",
"recipient_bcc" : "",
"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" : "",
"recipient_cc" : "",
"recipient_bcc" : "",
"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.
ПАРАМЕТРЫ
| Название | Тип | Описание |
| 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_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_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 (по умолчанию). |
ОТВЕТ
{
"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,
"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,
"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,
"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"
}
}
},
"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" : "РУС",
"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 | Название категории |
ЗАПРОС
{
"kb_category" : {
"category_title" : "Test category",
}
}
ОТВЕТ
{
"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) |
ОТВЕТ
{
"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
}
Пример кода
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
Просмотр категории.
ОТВЕТ
{
"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 GET https://[domain].omnidesk.ru/api/kb_category/234.json
https://[domain].omnidesk.ru/api/kb_category/[id].json PUT
Редактирование категории.
ПАРАМЕТРЫ
| Название | Тип | Описание |
| category_title | string | Название категории |
ЗАПРОС
{
"kb_category" : {
"category_title" : "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 | Название раздела |
| section_description | string | Описание раздела |
| category_id * | string | Id категории |
ЗАПРОС
{
"kb_section" : {
"section_title" : "Test section",
"section_description" : "Test section description",
"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 категории |
ОТВЕТ
{
"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
}
Пример кода
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
Просмотр раздела.
ОТВЕТ
{
"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 GET https://[domain].omnidesk.ru/api/kb_section/10.json
https://[domain].omnidesk.ru/api/kb_section/[id].json PUT
Редактирование раздела.
ПАРАМЕТРЫ
| Название | Тип | Описание |
| section_title | string | Название раздела |
| section_description | string | Описание раздела |
| category_id | string | Id категории |
ЗАПРОС
{
"kb_section" : {
"section_title" : "Test section 2",
"section_description" : "Test section 2 description",
"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 | Название статьи |
| article_content * | string | Содержание статьи |
| section_id * | string | Id раздела |
| access_type | string | Уровень доступа (public или staff_only). По умолчанию - public |
ЗАПРОС
{
"kb_article" : {
"article_title" : "Test article title",
"article_content" : "Test article content",
"section_id": 10
}
}
ОТВЕТ
{
"kb_article" : {
"article_id" : 100,
"section_id" : 10,
"article_title" : "Test article title",
"article_content" : "Test article content",
"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 раздела для вывода статей только конкретного раздела |
ОТВЕТ
{
"0" : {
"kb_article" : {
"article_id" : 100,
"section_id" : 10,
"article_title" : "Test article title",
"article_content" : "Test article content",
"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",
"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
Просмотр статьи.
ОТВЕТ
{
"kb_article" : {
"article_id" : 100,
"section_id" : 10,
"article_title" : "Test article title",
"article_content" : "Test article content",
"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 | Название статьи |
| article_content | string | Содержание статьи |
| section_id | string | Id раздела |
| access_type | string | Уровень доступа (public или staff_only) |
ЗАПРОС
{
"kb_article" : {
"article_title" : "Test article title 2",
"article_content" : "Test article 2 content",
"section_id": 20
}
}
ОТВЕТ
{
"kb_article" : {
"article_id" : 100,
"section_id" : 20,
"article_title" : "Test article title 2",
"article_content" : "Test article 2 content",
"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",
"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",
"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",
"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",
"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
