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 | Компания пользователя |
initiator_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 | Метки обращения |
ЗАПРОС
{ "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/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