HelpDeskEddy API V2

Общие моменты

HOST: https://домен_системы/api/v2

Авторизация

Авторизация производиться при помощи Basic Authorization, в качестве параметров необходимо передавать э-почту пользователя и API ключ. API ключ администратора системы, находится в Управление->Глобальные настройки->Система он виден только главному администратору.

Ключ в заголовке “Authorization: Basic”- это комбинация email:api_key закодированной с помощью base64 (т.е. base64(email:api_key))

Пример заголовка авторизации:

Authorization: Basic bmlraXRhLmFudG9ub3ZAaGVscGRlc2tlZGR5LmNvbTphMzI4NThiNC1hNjVlLTQ5ZWYtYTk2MC0wYjdlOGQ1ZDFlNDc=

Права доступа

Каждый пользотель в системе имеет API ключ, ключ можно получить через методы получить пользователя и список пользователей. Права доступа к API определяются правами пользователя в системе. В правах доступа допущены некоторые условные разрешения для полноценной интеграции через одного пользователя.

Лимит

Лимит API по умолчанию составляет 300 запросов в минуту (RPM). В случае привышения лимита доступ будет заблокирован на 48 часов.

Департаменты

Департаменты

Cписок департаментов
GET/departments/

Пример CURL

curl -X GET -H "Authorization: Basic bmlraXRhLmFudG9ub3ZAaGVscGRlc2tlZGR5LmNvbTphMzI4NThiNC1hNjVlLTQ5ZWYtYTk2MC0wYjdlOGQ1ZDFlNDc=" -H "Cache-Control: no-cache" "https://домен_системы/api/v2/departments/"

Пример URI

GET https://домен_системы/api/v2/departments/
Ответ  200
СпрятатьПоказать
Заголовок
Content-Type: application/json
Тело
{
    "data": {
        {
            "id":1,
            "name":{
                "ru":"Департамент поддержки",
                "en":"Support Department",
                "ua":"Департамент поддержки"
            }
        },{
            "id":2,
            "name":{
                "ru":"Тестивый департамент",
                "en":"Test department",
                "ua":"Тестивый департамент"
        }
    }
}

Работа с заявками

Заявки

Получить заявки
GET/tickets/{?page,search,user_list,status_list}

Пример CURL

curl -X GET -H "Authorization: Basic bmlraXRhLmFudG9ub3ZAaGVscGRlc2tlZGR5LmNvbTphMzI4NThiNC1hNjVlLTQ5ZWYtYTk2MC0wYjdlOGQ1ZDFlNDc=" -H "Cache-Control: no-cache" "https://домен_системы/api/v2/tickets/?page=2&search=John"

Пример URI

GET https://домен_системы/api/v2/tickets/?page=2&search=John&user_list=1,14,22&status_list=open,closed
Параметры
СпрятатьПоказать
page
число (необязательный) Пример: 2

Номер страницы

search
строка (необязательный) Пример: John

Поиск по заявкам

user_list
строка (необязательный) Пример: 1,14,22

Поиск заявок по ID владельца, через запятую

owner_list
строка (необязательный) Пример: 1,44,21

Поиск заявок по ID исполнителя заявки, через запятую

status_list
строка (необязательный) Пример: open,closed

Поиск заявок по ID статуса заявки, через запятую

priority_list
строка (необязательный) Пример: 1,3

Поиск заявок по ID приоритета заявки, через запятую

type_list
строка (необязательный) Пример: 0,1

Поиск заявок по ID типа заявки, через запятую

freeze
число (необязательный) Пример: 0

Фильтр по замороженным заявкам. Значение 0 - только активные заявки, значение 1 - только замороженные заявки. По умолчанию в списке все заявки.

deleted
число (необязательный) Пример: 0

Фильтр по удалённым заявкам. Значение 0 - только активные заявки, значение 1 - только удалённые заявки. Значение по умолчанию 0.

from_date_created
строка (необязательный) Пример: 2017-12-31 00:00:00

Дата создания заявки от

to_date_created
строка (необязательный) Пример: 2017-12-31 00:00:00

Дата создания заявки до

from_date_updated
строка (необязательный) Пример: 2017-12-31 00:00:00

Дата изменения заявки от

to_date_updated
строка (необязательный) Пример: 2017-12-31 00:00:00

Дата изменения заявки до

order_by
строка (необязательный) 

Сортировка заявок, можно указать через запятую. Заявки можно сортировать по параметрам: date_created, date_updated, viewed_by_staff, viewed_by_client. Порядок сортировки {asc} (по возрастанию) и {desc} (по убыванию). Значение по умолчани: date_created{desc}

Ответ  200
СпрятатьПоказать
Заголовок
Content-Type: application/json
Тело
{
    "data": {
        "10": {
            "id":10,
            "unique_id":"YWP-43009",
            "date_created":"2017-01-13 12:36:58",
            "date_updated":"2017-01-17 13:36:46",
            "title":"New ticket",
            "status_id":"open",
            "priority_id":2,
            "type_id":0,
            "department_id":2,
            "department_name":"\u041e\u0442\u0434\u0435\u043b \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0438",
            "owner_id":1,
            "owner_name":"Ivan",
            "owner_lastname":"Petrov",
            "owner_email":"ivan.petrov@example.com",
            "user_id":41,
            "user_name":"John",
            "user_lastname":"Doe",
            "user_email":"john.doe@example.com",
            "cc": [],
            "bcc": [],
            "followers": [],
            "ticket_lock":0,
            "sla_date":"13.01.2017 12:36",
            "freeze_date":"null",
            "freeze":0,
            "deleted":0,
            "viewed_by_staff":1,
            "viewed_by_client":1,
            "rate": "like",
            "rate_comment": "Nice",
            "rate_date": "2017-01-17 13:33:30",
            "custom_fields":[
                {
                    "id":3,
                    "field_type":"textarea",
                    "field_value":"4345"
                },{
                    "id":4,
                    "field_type":"checkbox",
                    "field_value":1
                }
            ]
        },
        "9": {
            "id":9,
            "unique_id":"IQV-84397",
            "date_created":"2016-08-15 17:05:19",
            "date_updated":"2017-01-18 11:44:13",
            "title":"Test ticket",
            "status_id":"process",
            "priority_id":3,
            "type_id":1,
            "department_id":2,
            "department_name":"\u041e\u0442\u0434\u0435\u043b \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0438",
            "owner_id":1,
            "owner_name":"Ivan",
            "owner_lastname":"Petrov",
            "owner_email":"ivan.petrov@example.com",
            "user_id":41,
            "user_name":"John",
            "user_lastname":"Doe",
            "user_email":"john.doe@example.com",
            "cc": [],
            "bcc": [],
            "followers": [],
            "ticket_lock":0,
            "sla_date":"17.01.2017 16:00",
            "freeze_date":"null",
            "freeze":0,
            "deleted":0,
            "viewed_by_staff":1,
            "viewed_by_client":1,
            "rate": "",
            "rate_comment": "",
            "rate_date": "",
            "custom_fields":[
                {
                    "id":3,
                    "field_type":"textarea",
                    "field_value":"4345"
                },{
                    "id":4,
                    "field_type":"checkbox",
                    "field_value":1
                }
            ]
        },
    }, "pagination": {
        "total":"2",
        "per_page":30,
        "current_page":1,
        "total_pages":1
    }
}

Создать заявку
POST/tickets/

Пример CURL

curl -X POST -H "Authorization: Basic bmlraXRhLmFudG9ub3ZAaGVscGRlc2tlZGR5LmNvbTphMzI4NThiNC1hNjVlLTQ5ZWYtYTk2MC0wYjdlOGQ1ZDFlNDc=" -H "Content-Type: application/x-www-form-urlencoded" -H "Cache-Control: no-cache" -d 'title=Problem with email&description=Problem with email info@example.com' "https://домен_системы/api/v2/tickets/"

Пример URI

POST https://домен_системы/api/v2/tickets/
Параметры
СпрятатьПоказать
title
строка (обязательный) Пример: Problem with email

Название заявки

description
строка (обязательный) Пример: <p>Problem with email info@example.com</p>

Текст заявки

sla_date
дата (необязательный) Пример: 01.01.1970 00:00

Дата и время SLA

freeze_date
дата (необязательный) Пример: 01.01.1970 00:00

Заморозка заявки до даты и времени

status_id
строка (необязательный) Пример: process

Статус заявки

priority_id
число (необязательный) Пример: 1

ID приоритета

type_id
число (необязательный) Пример: 2

ID типа

department_id
число (необязательный) Пример: 1

ID департамента

ticket_lock
булево (необязательный) Пример: false

Блокировка заявки. true - блокировать заявку. false - разблокировать заявку.

owner_id
число (необязательный) Пример: 1

ID исполнителя

user_id
число (необязательный) Пример: 2

ID владельца заявки

user_email
число (необязательный) Пример: email@example.com

Если не задан ID владельца заявки, то для создания заявки будет использоваться э-почта пользователя, если пользователь не существует, то он будет автоматически создан

cc
массив почтовых ящиков (необязательный) 

Копия письма

bcc
массив почтовых ящиков (необязательный) 

Скрытая копия письма

followers
массив user_id (необязательный) 

Список пользователей следящих за заявкой, пользователь должен быть сотрудником.

create_from_user
число (необязательный) Пример: 1

Первый ответ в заявке от имени сотрудника – 0, от имени пользователя 1, по умолчанию 1

custom_fields
массив (необязательный) Пример: [1 => 3, 2 => 0]

Массив индивидуальных полей заявки, пример: custom_fields[field_id] = value, в случае иерархического поля, необходимо указывать уровень custom_fields[field_id][level] = value

files
массив файлов (необязательный) 

Массив приложений

Ответ  200
СпрятатьПоказать
Заголовок
Content-Type: application/json
Тело
{
  "data": {
    "id": 9,
    "unique_id": "IQV-84397",
    "date_created": "2016-08-15 17:05:19",
    "date_updated": "2017-01-18 11:44:13",
    "title": "Test ticket",
    "status_id": "process",
    "priority_id": 3,
    "type_id": 1,
    "department_id": 2,
    "department_name": "Отдел поддержки",
    "owner_id": 1,
    "owner_name": "Ivan",
    "owner_lastname": "Petrov",
    "owner_email": "ivan.petrov@example.com",
    "user_id": 41,
    "user_name": "John",
    "user_lastname": "Doe",
    "user_email": "john.doe@example.com",
    "cc": [],
    "bcc": [],
    "followers": [],
    "ticket_lock": 0,
    "sla_date": "17.01.2017 16:00",
    "freeze_date": "null",
    "freeze": 0,
    "deleted": 0,
    "viewed_by_staff": 1,
    "viewed_by_client": 1,
    "rate": "",
    "rate_comment": "",
    "rate_date": "",
    "custom_fields": [
      {
        "id": 3,
        "field_type": "textarea",
        "field_value": "4345"
      },
      {
        "id": 4,
        "field_type": "checkbox",
        "field_value": 1
      }
    ]
  }
}
Ответ  400
СпрятатьПоказать
Заголовок
Content-Type: application/json
Тело
{
  "errors": [
    {
      "code": "e-411",
      "title": "Bad request",
      "details": "Field {sla_date} value is incorrect or empty (date format 01.01.1970 00:00)"
    },
    {
      "code": "e-411",
      "title": "Bad request",
      "details": "Field {owner_id} with id {5} does not exist"
    },
    {
      "code": "e-411",
      "title": "Bad request",
      "details": "Field {owner_id} value is incorrect, user must be with staff permissions"
    },
    {
      "code": "e-411",
      "title": "Bad request",
      "details": "Field {type_id} value is incorrect or empty"
    }
  ]
}

Получить заявку
GET/tickets/{id}

Пример CURL

curl -X GET -H "Authorization: Basic bmlraXRhLmFudG9ub3ZAaGVscGRlc2tlZGR5LmNvbTphMzI4NThiNC1hNjVlLTQ5ZWYtYTk2MC0wYjdlOGQ1ZDFlNDc=" -H "Cache-Control: no-cache" "https://домен_системы/api/v2/tickets/9"

Пример URI

GET https://домен_системы/api/v2/tickets/9
Параметры
СпрятатьПоказать
id
число (обязательный) Пример: 9

ID заявки

Ответ  200
СпрятатьПоказать
Заголовок
Content-Type: application/json
Тело
{
  "data": {
    "id": 9,
    "unique_id": "IQV-84397",
    "date_created": "2016-08-15 17:05:19",
    "date_updated": "2017-01-18 11:44:13",
    "title": "Test ticket",
    "status_id": "process",
    "priority_id": 3,
    "type_id": 1,
    "department_id": 2,
    "department_name": "Отдел поддержки",
    "owner_id": 1,
    "owner_name": "Ivan",
    "owner_lastname": "Petrov",
    "owner_email": "ivan.petrov@example.com",
    "user_id": 41,
    "user_name": "John",
    "user_lastname": "Doe",
    "user_email": "john.doe@example.com",
    "cc": [],
    "bcc": [],
    "followers": [],
    "ticket_lock": 0,
    "sla_date": "17.01.2017 16:00",
    "freeze_date": "null",
    "freeze": 0,
    "deleted": 0,
    "viewed_by_staff": 1,
    "viewed_by_client": 1,
    "rate": "",
    "rate_comment": "",
    "rate_date": "",
    "custom_fields": [
      {
        "id": 3,
        "field_type": "textarea",
        "field_value": "4345"
      },
      {
        "id": 4,
        "field_type": "checkbox",
        "field_value": 1
      }
    ]
  }
}
Ответ  404
СпрятатьПоказать
Заголовок
Content-Type: application/json
Тело
{
  "errors": [
    {
      "code": "e-404",
      "title": "Not found",
      "details": "Ticket with id {9} does not exist"
    }
  ]
}

Обновить заявку
PUT/tickets/{id}

Пример CURL

curl -X PUT -H "Authorization: Basic bmlraXRhLmFudG9ub3ZAaGVscGRlc2tlZGR5LmNvbTphMzI4NThiNC1hNjVlLTQ5ZWYtYTk2MC0wYjdlOGQ1ZDFlNDc=" -H "Content-Type: application/json" -H "Cache-Control: no-cache" -d '{"status_id":"process","type_id":"2", "owner_id": "1"}' "https://домен_системы/api/v2/tickets/9"

Пример URI

PUT https://домен_системы/api/v2/tickets/9
Параметры
СпрятатьПоказать
id
число (обязательный) Пример: 9

ID заявки

title
строка (необязательный) Пример: Problem with email

Название заявки

sla_date
дата (необязательный) Пример: 01.01.1970 00:00

Дата и время SLA

freeze_date
дата (необязательный) Пример: 01.01.1970 00:00

Заморозка заявки до даты и времени

status_id
строка (необязательный) Пример: process

Статус заявки

priority_id
число (необязательный) Пример: 1

ID приоритета

type_id
число (необязательный) Пример: 2

ID типа

department_id
число (необязательный) Пример: 1

ID департамента

cc
массив почтовых ящиков (необязательный) 

Копия письма

bcc
массив почтовых ящиков (необязательный) 

Скрытая копия письма

followers
массив user_id (необязательный) 

Список пользователей следящих за заявкой, пользователь должен быть сотрудником.

ticket_lock
булево (необязательный) Пример: false

Блокировка заявки. true - блокировать заявку. false - разблокировать заявку.

owner_id
число (необязательный) Пример: 1

ID исполнителя

user_id
число (необязательный) Пример: 2

ID владельца заявки

custom_fields
массив (необязательный) Пример: [1 => 3, 2 => 0]

Массив индивидуальных полей заявки, пример: custom_fields[field_id] = value, в случае иерархического поля, необходимо указывать уровень custom_fields[field_id][level] = value

Ответ  200
СпрятатьПоказать
Заголовок
Content-Type: application/json
Тело
{
  "data": {
    "id": 9,
    "unique_id": "IQV-84397",
    "date_created": "2016-08-15 17:05:19",
    "date_updated": "2017-01-18 11:44:13",
    "title": "Test ticket",
    "status_id": "process",
    "priority_id": 3,
    "type_id": 1,
    "department_id": 2,
    "department_name": "Отдел поддержки",
    "owner_id": 1,
    "owner_name": "Ivan",
    "owner_lastname": "Petrov",
    "owner_email": "ivan.petrov@example.com",
    "user_id": 41,
    "user_name": "John",
    "user_lastname": "Doe",
    "user_email": "john.doe@example.com",
    "cc": [],
    "bcc": [],
    "followers": [],
    "ticket_lock": 0,
    "sla_date": "17.01.2017 16:00",
    "freeze_date": "null",
    "freeze": 0,
    "deleted": 0,
    "viewed_by_staff": 1,
    "viewed_by_client": 1,
    "rate": "",
    "rate_comment": "",
    "rate_date": "",
    "custom_fields": [
      {
        "id": 3,
        "field_type": "textarea",
        "field_value": "4345"
      },
      {
        "id": 4,
        "field_type": "checkbox",
        "field_value": 1
      }
    ]
  }
}
Ответ  400
СпрятатьПоказать
Заголовок
Content-Type: application/json
Тело
{
  "errors": [
    {
      "code": "e-411",
      "title": "Bad request",
      "details": "Field {sla_date} value is incorrect or empty (date format 01.01.1970 00:00)"
    },
    {
      "code": "e-411",
      "title": "Bad request",
      "details": "Field {owner_id} with id {5} does not exist"
    },
    {
      "code": "e-411",
      "title": "Bad request",
      "details": "Field {owner_id} value is incorrect, user must be with staff permissions"
    },
    {
      "code": "e-411",
      "title": "Bad request",
      "details": "Field {type_id} value is incorrect or empty"
    }
  ]
}
Ответ  404
СпрятатьПоказать
Заголовок
Content-Type: application/json
Тело
{
  "errors": [
    {
      "code": "e-404",
      "title": "Not found",
      "details": "Ticket with id {9} does not exist"
    }
  ]
}

Удалить заявку
DELETE/tickets/{id}{?delete}

Пример CURL

curl -X DELETE -H "Authorization: Basic bmlraXRhLmFudG9ub3ZAaGVscGRlc2tlZGR5LmNvbTphMzI4NThiNC1hNjVlLTQ5ZWYtYTk2MC0wYjdlOGQ1ZDFlNDc=" -H "Content-Type: application/x-www-form-urlencoded" -H "Cache-Control: no-cache" "https://домен_системы/api/v2/tickets/9"

Пример URI

DELETE https://домен_системы/api/v2/tickets/9?delete=true
Параметры
СпрятатьПоказать
id
число (обязательный) Пример: 9

ID заявки

delete
булево (необязательный) Пример: true

false - перенос заявки в удаленные. true - полное удаление заявки. По умолчанию значение false

Ответ  200
СпрятатьПоказать
Заголовок
Content-Type: application/json
Тело
{
  "errors": [
    {
      "code": "s-204",
      "title": "No content",
      "details": "Ticket with id {9} successfully deleted"
    }
  ]
}
Ответ  404
СпрятатьПоказать
Заголовок
Content-Type: application/json
Тело
{
  "errors": [
    {
      "code": "e-404",
      "title": "Not found",
      "details": "Ticket with id {9} does not exist"
    }
  ]
}

Ответы в заявке

Получить ответы
GET/tickets/{ticketId}/posts/

Пример CURL

curl -X GET -H "Authorization: Basic bmlraXRhLmFudG9ub3ZAaGVscGRlc2tlZGR5LmNvbTphMzI4NThiNC1hNjVlLTQ5ZWYtYTk2MC0wYjdlOGQ1ZDFlNDc=" -H "Cache-Control: no-cache" "https://домен_системы/api/v2/tickets/9/posts/?page=1"

Пример URI

GET https://домен_системы/api/v2/tickets/9/posts/
Параметры
СпрятатьПоказать
ticketId
число (обязательный) Пример: 9

ID заявки,

page
число (необязательный) Пример: 1

Номер страницы

Ответ  200
СпрятатьПоказать
Заголовок
Content-Type: application/json
Тело
{
    "data":[
        {
            "ticket_id":9,
            "id":139,
            "user_id":1,
            "text":"<p>post content</p>",
            "date_created":"17:45:00 26.01.2017",
            "date_updated":"17:45:00 26.01.2017",
            "files":[]
        },{
            "ticket_id":9,
            "id":138,
            "user_id":1,
            "text":"<p>1</p><p>2</p><p>3</p>",
            "date_created":"14:59:00 17.01.2017",
            "date_updated":"14:59:00 17.01.2017",
            "files":[
                {
                    "name":"test.gif",
                    "url":"https://домен_системы/ru/file/download/f8bb43e593d867d27c965d38dfec721fbb084cf9",
                    "data_type":"gif"
                },{
                    "name":"test.png",
                    "url":"https://домен_системы/ru/file/download/b818daf594dd3b61098cce7fef7954bc0314edd5",
                    "data_type":"png"
                }
            ]
        },
    ],
    "pagination":{
                "total":85,
                "per_page":30,
                "current_page":1,
                "total_pages":3
    }
}

Добавить ответ
POST/tickets/{ticketId}/posts/

Пример CURL

curl -X POST -H "Authorization: Basic bmlraXRhLmFudG9ub3ZAaGVscGRlc2tlZGR5LmNvbTphMzI4NThiNC1hNjVlLTQ5ZWYtYTk2MC0wYjdlOGQ1ZDFlNDc=" -H "Content-Type: application/x-www-form-urlencoded" -H "Cache-Control: no-cache" -d 'text=Problem with email' "https://домен_системы/api/v2/tickets/9/posts/"

Пример URI

POST https://домен_системы/api/v2/tickets/9/posts/
Параметры
СпрятатьПоказать
ticketId
число (обязательный) Пример: 9

ID заявки

text
строка (обязательный) Пример: Problem with email

Текст комментария

user_id
число (необязательный) Пример: 1

Владелец комментария, в случае если не будет указан - владельцем будет пользователь API.

files
массив файлов (необязательный) 

Массив приложений

Ответ  200
СпрятатьПоказать
Заголовок
Content-Type: application/json
Тело
{
  "data": {
    "ticket_id": 9,
    "id": 150,
    "user_id": 1,
    "text": "<p>Problem with email</p>",
    "date_created": "17:02:00 17.01.2017",
    "date_updated": "17:02:00 17.01.2017",
    "files": [
      {
        "name": "test.gif",
        "url": "https://домен_системы/ru/file/download/f8bb43e593d867d27c965d38dfec721fbb084cf9",
        "data_type": "gif"
      },
      {
        "name": "test.png",
        "url": "https://домен_системы/ru/file/download/b818daf594dd3b61098cce7fef7954bc0314edd5",
        "data_type": "png"
      }
    ]
  }
}
Ответ  400
СпрятатьПоказать
Заголовок
Content-Type: application/json
Тело
{
  "errors": [
    {
      "code": "e-411",
      "title": "Required {text} request",
      "details": "Required field is missing or empty"
    }
  ]
}
Ответ  404
СпрятатьПоказать
Заголовок
Content-Type: application/json
Тело
{
  "errors": [
    {
      "code": "e-404",
      "title": "Not found",
      "details": "Ticket with id {9} does not exist"
    }
  ]
}

Обновить ответ
PUT/tickets/{ticketId}/posts/{id}

Пример CURL

curl -X PUT -H "Authorization: Basic bmlraXRhLmFudG9ub3ZAaGVscGRlc2tlZGR5LmNvbTphMzI4NThiNC1hNjVlLTQ5ZWYtYTk2MC0wYjdlOGQ1ZDFlNDc=" -H "Content-Type: application/x-www-form-urlencoded" -H "Cache-Control: no-cache" -d 'text=Problem with email' "https://домен_системы/api/v2/tickets/9/posts/150"

Пример URI

PUT https://домен_системы/api/v2/tickets/9/posts/15
Параметры
СпрятатьПоказать
ticketId
число (обязательный) Пример: 9

ID заявки

id
число (обязательный) Пример: 15

ID поста

text
строка (обязательный) Пример: Problem with email

Текст комментария

files
массив файлов (необязательный) 

Массив приложений

Ответ  200
СпрятатьПоказать
Заголовок
Content-Type: application/json
Тело
{
  "data": {
    "ticket_id": 9,
    "id": 150,
    "user_id": 1,
    "text": "<p>Problem with email</p>",
    "date_created": "17:02:00 17.01.2017",
    "date_updated": "17:02:00 17.01.2017",
    "files": [
      {
        "name": "test.gif",
        "url": "https://домен_системы/ru/file/download/f8bb43e593d867d27c965d38dfec721fbb084cf9",
        "data_type": "gif"
      },
      {
        "name": "test.png",
        "url": "https://домен_системы/ru/file/download/b818daf594dd3b61098cce7fef7954bc0314edd5",
        "data_type": "png"
      }
    ]
  }
}
Ответ  404
СпрятатьПоказать
Заголовок
Content-Type: application/json
Тело
{
  "errors": [
    {
      "code": "e-404",
      "title": "Not found",
      "details": "Ticket with id {9} does not exist"
    }
  ]
}

Удалить ответ
DELETE/tickets/{ticketId}/posts/{id}

Пример CURL

curl -X DELETE -H "Authorization: Basic bmlraXRhLmFudG9ub3ZAaGVscGRlc2tlZGR5LmNvbTphMzI4NThiNC1hNjVlLTQ5ZWYtYTk2MC0wYjdlOGQ1ZDFlNDc=" -H "Cache-Control: no-cache" "https://домен_системы/api/v2/tickets/9/posts/15"

Пример URI

DELETE https://домен_системы/api/v2/tickets/9/posts/15
Параметры
СпрятатьПоказать
ticketId
число (обязательный) Пример: 9

ID заявки

id
число (обязательный) Пример: 15

ID поста

Ответ  200
СпрятатьПоказать
Заголовок
Content-Type: application/json
Тело
{
  "errors": [
    {
      "code": "s-204",
      "title": "No content",
      "details": "Post with id {15} in ticket with id {9} successfully deleted"
    }
  ]
}
Ответ  404
СпрятатьПоказать
Заголовок
Content-Type: application/json
Тело
{
  "errors": [
    {
      "code": "e-404",
      "title": "Not found",
      "details": "Post with id {15} in ticket with id {9} does not exist"
    }
  ]
}

Комментарии

Получить комментарии
GET/tickets/{ticketId}/comments/

Пример CURL

curl -X GET -H "Authorization: Basic bmlraXRhLmFudG9ub3ZAaGVscGRlc2tlZGR5LmNvbTphMzI4NThiNC1hNjVlLTQ5ZWYtYTk2MC0wYjdlOGQ1ZDFlNDc=" -H "Cache-Control: no-cache" "https://домен_системы/api/v2/tickets/9/comments/?page=1"

Пример URI

GET https://домен_системы/api/v2/tickets/9/comments/
Параметры
СпрятатьПоказать
ticketId
число (обязательный) Пример: 9

ID заявки

page
число (необязательный) Пример: 1

Номер страницы

Ответ  200
СпрятатьПоказать
Заголовок
Content-Type: application/json
Тело
{
  "data": [
    {
      "ticket_id": 9,
      "id": 6,
      "user_id": 1,
      "text": "test",
      "date_created": "18:18:34 05.01.2017",
      "visible": "staff",
      "files": [
        {
          "name": "test.gif",
          "url": "https://домен_системы/ru/file/download/f8bb43e593d867d27c965d38dfec721fbb084cf9",
          "data_type": "gif"
        },
        {
          "name": "test.png",
          "url": "https://домен_системы/ru/file/download/b818daf594dd3b61098cce7fef7954bc0314edd5",
          "data_type": "png"
        }
      ]
    }
  ],
  "pagination": {
    "total": 1,
    "per_page": 30,
    "current_page": 1,
    "total_pages": 1
  }
}

Добавить комментарий
POST/tickets/{ticketId}/comments/

Пример CURL

curl -X POST -H "Authorization: Basic bmlraXRhLmFudG9ub3ZAaGVscGRlc2tlZGR5LmNvbTphMzI4NThiNC1hNjVlLTQ5ZWYtYTk2MC0wYjdlOGQ1ZDFlNDc=" -H "Content-Type: application/x-www-form-urlencoded" -H "Cache-Control: no-cache" -d 'text=Problem with email' "https://домен_системы/api/v2/tickets/9/comments/"

Пример URI

POST https://домен_системы/api/v2/tickets/9/comments/
Параметры
СпрятатьПоказать
ticketId
число (обязательный) Пример: 9

ID заявки

text
строка (обязательный) Пример: Problem with email

Текст комментария

user_id
число (необязательный) Пример: 1

Владелец комментария, в случае если не будет указан - владельцем будет пользователь API.

files
массив файлов (необязательный) 

Массив приложений

Ответ  200
СпрятатьПоказать
Заголовок
Content-Type: application/json
Тело
{
  "data": {
    "ticket_id": 9,
    "id": 6,
    "user_id": 1,
    "text": "test",
    "date_created": "18:18:34 05.01.2017",
    "visible": "staff",
    "files": [
      {
        "name": "test.gif",
        "url": "https://домен_системы/ru/file/download/f8bb43e593d867d27c965d38dfec721fbb084cf9",
        "data_type": "gif"
      },
      {
        "name": "test.png",
        "url": "https://домен_системы/ru/file/download/b818daf594dd3b61098cce7fef7954bc0314edd5",
        "data_type": "png"
      }
    ]
  }
}
Ответ  400
СпрятатьПоказать
Заголовок
Content-Type: application/json
Тело
{
  "errors": [
    {
      "code": "e-411",
      "title": "Required {text} request",
      "details": "Required field is missing or empty"
    }
  ]
}
Ответ  404
СпрятатьПоказать
Заголовок
Content-Type: application/json
Тело
{
  "errors": [
    {
      "code": "e-404",
      "title": "Not found",
      "details": "Ticket with id {9} does not exist"
    }
  ]
}

Обновить комментарий
PUT/tickets/{ticketId}/comments/{id}

Пример CURL

curl -X PUT -H "Authorization: Basic bmlraXRhLmFudG9ub3ZAaGVscGRlc2tlZGR5LmNvbTphMzI4NThiNC1hNjVlLTQ5ZWYtYTk2MC0wYjdlOGQ1ZDFlNDc=" -H "Content-Type: application/x-www-form-urlencoded" -H "Cache-Control: no-cache" -d 'text=Problem with email' "https://домен_системы/api/v2/tickets/9/comments/6"

Пример URI

PUT https://домен_системы/api/v2/tickets/9/comments/6
Параметры
СпрятатьПоказать
ticketId
число (обязательный) Пример: 9

ID заявки

id
число (обязательный) Пример: 6

ID комментария

text
строка (обязательный) Пример: Problem with email

Текст комментария

files
массив файлов (необязательный) 

Массив приложений

Ответ  200
СпрятатьПоказать
Заголовок
Content-Type: application/json
Тело
{
  "data": {
    "ticket_id": 9,
    "id": 6,
    "user_id": 1,
    "text": "Problem with email",
    "date_created": "18:18:34 05.01.2017",
    "visible": "staff",
    "files": [
      {
        "name": "test.gif",
        "url": "https://домен_системы/ru/file/download/f8bb43e593d867d27c965d38dfec721fbb084cf9",
        "data_type": "gif"
      },
      {
        "name": "test.png",
        "url": "https://домен_системы/ru/file/download/b818daf594dd3b61098cce7fef7954bc0314edd5",
        "data_type": "png"
      }
    ]
  }
}
Ответ  404
СпрятатьПоказать
Заголовок
Content-Type: application/json
Тело
{
  "errors": [
    {
      "code": "e-404",
      "title": "Not found",
      "details": "Ticket with id {9} does not exist"
    }
  ]
}

Удалить комментарий
DELETE/tickets/{ticketId}/comments/{id}

Пример CURL

curl -X DELETE -H "Authorization: Basic bmlraXRhLmFudG9ub3ZAaGVscGRlc2tlZGR5LmNvbTphMzI4NThiNC1hNjVlLTQ5ZWYtYTk2MC0wYjdlOGQ1ZDFlNDc=" -H "Cache-Control: no-cache" "https://домен_системы/api/v2/tickets/9/comments/15"

Пример URI

DELETE https://домен_системы/api/v2/tickets/9/comments/15
Параметры
СпрятатьПоказать
ticketId
число (обязательный) Пример: 9

ID заявки

id
число (обязательный) Пример: 15

ID комментария

Ответ  200
СпрятатьПоказать
Заголовок
Content-Type: application/json
Тело
{
  "errors": [
    {
      "code": "s-204",
      "title": "No content",
      "details": "Comment with id {15} in ticket with id {9} successfully deleted"
    }
  ]
}
Ответ  404
СпрятатьПоказать
Заголовок
Content-Type: application/json
Тело
{
  "errors": [
    {
      "code": "e-404",
      "title": "Not found",
      "details": "Comment with id {15} in ticket with id {9} does not exist"
    }
  ]
}

Аудит

Аудит заявки
GET/tickets/{id}/audit/

Пример CURL

curl -X GET -H "Authorization: Basic bmlraXRhLmFudG9ub3ZAaGVscGRlc2tlZGR5LmNvbTphMzI4NThiNC1hNjVlLTQ5ZWYtYTk2MC0wYjdlOGQ1ZDFlNDc=" -H "Cache-Control: no-cache" "https://домен_системы/api/v2/tickets/11/audit/?page=1"

Пример URI

GET https://домен_системы/api/v2/tickets/11/audit/
Параметры
СпрятатьПоказать
id
число (обязательный) Пример: 11

ID заявки

page
число (необязательный) Пример: 1

Номер страницы

Ответ  200
СпрятатьПоказать
Заголовок
Content-Type: application/json
Тело
{
  "data": {
    "0": {
      "id": 2012,
      "text": {
        "ru": "Просмотр заявки",
        "en": "View request",
        "ua": "Перегляд заявки"
      },
      "user_id": 1,
      "user_name": "Никита",
      "date_created": "11:11:27 30.01.2017"
    },
    "1": {
      "id": 2009,
      "text": {
        "ru": "Добавление ответа на заявку",
        "en": "Add a response to the request",
        "ua": "Додавання відповіді на заявку"
      },
      "user_id": 1,
      "user_name": "Никита",
      "date_created": "11:11:23 30.01.2017"
    },
    "2": {
      "id": 2010,
      "text": {
        "ru": "Отправление письма на э-почту \"info@helpdeskeddy.com\"</strong>",
        "en": "Send a message to email \"info@helpdeskeddy.com\"</strong>",
        "ua": "Відправлення листа на е-пошту \"info@helpdeskeddy.com\"</strong>"
      },
      "user_id": 1,
      "user_name": "Никита",
      "date_created": "11:11:23 30.01.2017"
    },
    "3": {
      "id": 2011,
      "text": {
        "ru": "Просмотр заявки",
        "en": "View request",
        "ua": "Перегляд заявки"
      },
      "user_id": 1,
      "user_name": "Никита",
      "date_created": "11:11:23 30.01.2017"
    },
    "4": {
      "id": 2008,
      "text": {
        "ru": "Просмотр заявки",
        "en": "View request",
        "ua": "Перегляд заявки"
      },
      "user_id": 1,
      "user_name": "Никита",
      "date_created": "11:11:17 30.01.2017"
    },
    "5": {
      "id": 2006,
      "text": {
        "ru": "Просмотр заявки",
        "en": "View request",
        "ua": "Перегляд заявки"
      },
      "user_id": 1,
      "user_name": "Никита",
      "date_created": "11:10:57 30.01.2017"
    },
    "6": {
      "id": 2005,
      "text": {
        "ru": "Изменение статуса заявки с \"Открыто\"</strong> на \"В процессе\"</strong>",
        "en": "Changing request status from \"Открыто\"</strong> to \"В процессе\"</strong>",
        "ua": "Зміна статусу заявки з \"Открыто\"</strong> на \"В процессе\"</strong>"
      },
      "user_id": 1,
      "user_name": "Никита",
      "date_created": "11:10:56 30.01.2017"
    },
    "7": {
      "id": 2004,
      "text": {
        "ru": "Изменение исполнителя заявки с \"Неприсвоенный\"</strong> на \"Никита \"</strong>",
        "en": "Changing responsible party from \"Unassigned\"</strong> to \"Никита \"</strong>",
        "ua": "Зміна виконавця заявки з \"Неприсвоений\"</strong> на \"Никита \"</strong>"
      },
      "user_id": 1,
      "user_name": "Никита",
      "date_created": "11:10:51 30.01.2017"
    },
    "8": {
      "id": 2003,
      "text": {
        "ru": "Просмотр заявки",
        "en": "View request",
        "ua": "Перегляд заявки"
      },
      "user_id": 1,
      "user_name": "Никита",
      "date_created": "11:10:46 30.01.2017"
    }
  },
  "pagination": {
    "total": "9",
    "per_page": 30,
    "current_page": 1,
    "total_pages": 1
  }
}

Поля заявки

Поля заявки
GET/custom_fields/

Пример CURL

curl -X GET -H "Authorization: Basic bmlraXRhLmFudG9ub3ZAaGVscGRlc2tlZGR5LmNvbTphMzI4NThiNC1hNjVlLTQ5ZWYtYTk2MC0wYjdlOGQ1ZDFlNDc=" -H "Cache-Control: no-cache" "https://домен_системы/api/v2/custom_fields/"

Пример URI

GET https://домен_системы/api/v2/custom_fields/
Ответ  200
СпрятатьПоказать
Заголовок
Content-Type: application/json
Тело
{
  "data": {
    "1": {
      "id": 1,
      "name": {
        "ru": "Text field",
        "en": "Text field"
      },
      "field_type": "text",
      "permissions": {
        "staff": {
          "view": false,
          "edit": true,
          "required_to_created_ticket": false,
          "required_to_close_ticket": false
        },
        "user": {
          "view": true,
          "edit": false,
          "required_to_created_ticket": false,
          "required_to_close_ticket": false
        }
      }
    },
    "2": {
      "id": 2,
      "name": {
        "ru": "Select",
        "en": "Select"
      },
      "field_type": "select",
      "permissions": {
        "staff": {
          "view": true,
          "edit": true,
          "required_to_created_ticket": false,
          "required_to_close_ticket": false
        },
        "user": {
          "view": true,
          "edit": true,
          "required_to_created_ticket": false,
          "required_to_close_ticket": false
        }
      },
      "options": [
        {
          "id": 1,
          "name": {
            "ru": "First",
            "en": "First"
          }
        },
        {
          "id": 2,
          "name": {
            "ru": "Second",
            "en": "Second"
          }
        }
      ]
    },
    "3": {
      "id": 3,
      "name": {
        "ru": "Textarea",
        "en": "Textarea"
      },
      "field_type": "textarea",
      "permissions": {
        "staff": {
          "view": true,
          "edit": true,
          "required_to_created_ticket": false,
          "required_to_close_ticket": false
        },
        "user": {
          "view": true,
          "edit": true,
          "required_to_created_ticket": false,
          "required_to_close_ticket": false
        }
      }
    },
    "4": {
      "id": 4,
      "name": {
        "ru": "Checkbox",
        "en": "Checkbox"
      },
      "field_type": "checkbox",
      "permissions": {
        "staff": {
          "view": true,
          "edit": true,
          "required_to_created_ticket": false,
          "required_to_close_ticket": false
        },
        "user": {
          "view": true,
          "edit": true,
          "required_to_created_ticket": false,
          "required_to_close_ticket": false
        }
      }
    },
    "5": {
      "id": 5,
      "name": {
        "ru": "Date",
        "en": "Date"
      },
      "field_type": "date",
      "permissions": {
        "staff": {
          "view": true,
          "edit": true,
          "required_to_created_ticket": false,
          "required_to_close_ticket": false
        },
        "user": {
          "view": true,
          "edit": true,
          "required_to_created_ticket": false,
          "required_to_close_ticket": false
        }
      }
    },
    "6": {
      "id": 6,
      "name": {
        "ru": "число",
        "en": "число"
      },
      "field_type": "число",
      "permissions": {
        "staff": {
          "view": true,
          "edit": true,
          "required_to_created_ticket": false,
          "required_to_close_ticket": false
        },
        "user": {
          "view": true,
          "edit": true,
          "required_to_created_ticket": false,
          "required_to_close_ticket": false
        }
      }
    },
    "7": {
      "id": 7,
      "name": {
        "1": {
          "ru": "Hierarchy level 1",
          "en": "Hierarchy level 1"
        },
        "2": {
          "ru": "Hierarchy level 2",
          "en": "Hierarchy level 2"
        },
        "3": {
          "ru": "Hierarchy level 3",
          "en": "Hierarchy level 3"
        },
        "4": {
          "ru": "Hierarchy level 4",
          "en": "Hierarchy level 4"
        }
      },
      "field_type": "hierarchy",
      "permissions": {
        "staff": {
          "view": true,
          "edit": true,
          "required_to_created_ticket": false,
          "required_to_close_ticket": false
        },
        "user": {
          "view": true,
          "edit": true,
          "required_to_created_ticket": false,
          "required_to_close_ticket": false
        }
      },
      "options": [
        {
          "id": 3,
          "pid": 0,
          "name": {
            "ru": "Option 1",
            "en": "Option 1"
          }
        },
        {
          "id": 4,
          "pid": 0,
          "name": {
            "ru": "Option 2",
            "en": "Option 2"
          }
        },
        {
          "id": 5,
          "pid": 0,
          "name": {
            "ru": "Option 3",
            "en": "Option 3"
          }
        },
        {
          "id": 8,
          "pid": 0,
          "name": {
            "ru": "Option 4",
            "en": "Option 4"
          }
        },
        {
          "id": 6,
          "pid": 3,
          "name": {
            "ru": "Option 1-1",
            "en": "Option 1-1"
          }
        },
        {
          "id": 7,
          "pid": 6,
          "name": {
            "ru": "Option 1-1-1",
            "en": "Option 1-1-1"
          }
        },
        {
          "id": 9,
          "pid": 4,
          "name": {
            "ru": "Option 2-1",
            "en": "Option 2-1"
          }
        },
        {
          "id": 10,
          "pid": 9,
          "name": {
            "ru": "Option 2-1-1",
            "en": "Option 2-1-1"
          }
        },
        {
          "id": 11,
          "pid": 10,
          "name": {
            "ru": "Option 2-1-1-1",
            "en": "Option 2-1-1-1"
          }
        }
      ]
    }
  }
}

Статусы

Cписок статусов
GET/statuses/

Пример CURL

curl -X GET -H "Authorization: Basic bmlraXRhLmFudG9ub3ZAaGVscGRlc2tlZGR5LmNvbTphMzI4NThiNC1hNjVlLTQ5ZWYtYTk2MC0wYjdlOGQ1ZDFlNDc=" -H "Cache-Control: no-cache" "https://домен_системы/api/v2/statuses/"

Пример URI

GET https://домен_системы/api/v2/statuses/
Ответ  200
СпрятатьПоказать
Заголовок
Content-Type: application/json
Тело
{
  "data": [
    {
      "id": "open",
      "name": {
        "ru": "Открыто",
        "en": "Open",
        "ua": "Открыто"
      }
    },
    {
      "id": "process",
      "name": {
        "ru": "В процессе",
        "en": "In progress",
        "ua": "В процессе"
      }
    },
    {
      "id": "closed",
      "name": {
        "ru": "Выполнено",
        "en": "Closed",
        "ua": "Выполнено"
      }
    }
  ]
}

Приоритеты

Cписок приоритетов
GET/priorities/

Пример CURL

curl -X GET -H "Authorization: Basic bmlraXRhLmFudG9ub3ZAaGVscGRlc2tlZGR5LmNvbTphMzI4NThiNC1hNjVlLTQ5ZWYtYTk2MC0wYjdlOGQ1ZDFlNDc=" -H "Cache-Control: no-cache" "https://домен_системы/api/v2/priorities/"

Пример URI

GET https://домен_системы/api/v2/priorities/
Ответ  200
СпрятатьПоказать
Заголовок
Content-Type: application/json
Тело
{
  "data": [
    {
      "id": 2,
      "name": {
        "ru": "Стандартно",
        "en": "Standard",
        "ua": "Стандартно"
      }
    },
    {
      "id": 3,
      "name": {
        "ru": "Средний",
        "en": "Medium",
        "ua": "Средний"
      }
    },
    {
      "id": 1,
      "name": {
        "ru": "Срочно",
        "en": "Very urgent",
        "ua": "Срочно"
      }
    }
  ]
}

Типы

Cписок типов
GET/types/

Пример CURL

curl -X GET -H "Authorization: Basic bmlraXRhLmFudG9ub3ZAaGVscGRlc2tlZGR5LmNvbTphMzI4NThiNC1hNjVlLTQ5ZWYtYTk2MC0wYjdlOGQ1ZDFlNDc=" -H "Cache-Control: no-cache" "https://домен_системы/api/v2/types/"

Пример URI

GET https://домен_системы/api/v2/types/
Ответ  200
СпрятатьПоказать
Заголовок
Content-Type: application/json
Тело
{
  "data": [
    {
      "id": 0,
      "name": {
        "ru": "Без типа",
        "en": "Without type",
        "ua": "Без типа"
      }
    },
    {
      "id": 1,
      "name": {
        "ru": "Проблема",
        "en": "Problem",
        "ua": "Проблема"
      }
    },
    {
      "id": 2,
      "name": {
        "ru": "Задание",
        "en": "Task",
        "ua": "Задание"
      }
    },
    {
      "id": 3,
      "name": {
        "ru": "Ошибка",
        "en": "Bug",
        "ua": "Ошибка"
      }
    }
  ]
}

Работа с контактами

Пользователи

Список пользователей
GET/users/{?page,search,group_id}

Пример CURL

curl -X GET -H "Authorization: Basic bmlraXRhLmFudG9ub3ZAaGVscGRlc2tlZGR5LmNvbTphMzI4NThiNC1hNjVlLTQ5ZWYtYTk2MC0wYjdlOGQ1ZDFlNDc=" -H "Cache-Control: no-cache" "https://домен_системы/api/v2/users/?page=1"

Пример URI

GET https://домен_системы/api/v2/users/?page=1&search=John Doe&group_id=1
Параметры
СпрятатьПоказать
page
число (необязательный) Пример: 1

Номер страницы

search
строка (необязательный) Пример: John Doe

Поиск по пользователям

group_id
число (необязательный) Пример: 1

ID группы

from_date_created
строка (необязательный) Пример: 2018-12-31 00:00:00

Дата создания заявки от

to_date_created
строка (необязательный) Пример: 2018-12-31 00:00:00

Дата создания заявки до

from_date_updated
строка (необязательный) Пример: 2018-12-31 00:00:00

Дата изменения заявки от

to_date_updated
строка (необязательный) Пример: 2018-12-31 00:00:00

Дата изменения заявки до

order_by
строка (необязательный) 

Сортировка пользователей, можно указать через запятую. Пользователей можно сортировать по параметрам: date_created, date_updated, name. Порядок сортировки {asc} (по возрастанию) и {desc} (по убыванию). Значение по умолчани: name{asc}

Ответ  200
СпрятатьПоказать
Заголовок
Content-Type: application/json
Тело
{
  "data": [
    {
      "id": 1,
      "date_created": "2019-01-01 00:00:00",
      "date_updated": "2019-01-01 00:00:00",
      "name": "Admin",
      "lastname": "",
      "email": "test@helpdeskeddy.com",
      "phone": "+37129770143",
      "skype": "",
      "website": "",
      "organization": "",
      "status": "active",
      "language": "en",
      "notifications": 0,
      "api_key": "a32858b4-a65e-49ef-a960-0b7e8d5d1e47",
      "group": {
        "id": 2,
        "type": "staff",
        "name": {
          "ru": "Администратор",
          "en": "Administrator",
          "ua": ""
        },
        "disable": 0
      },
      "department": [
        1,
        2
      ],
      "custom_fields": [
        {
          "id": 87,
          "field_type": "textarea",
          "field_value": "test"
        },
        {
          "id": 88,
          "field_type": "checkbox",
          "field_value": 1
        }
      ]
    },
    {
      "id": 6,
      "date_created": "2019-01-01 00:00:00",
      "date_updated": "2019-01-01 00:00:00",
      "name": "Test",
      "lastname": "",
      "email": "test@test.lv",
      "phone": "",
      "skype": "",
      "website": "",
      "organization": "",
      "status": "active",
      "language": "en",
      "notifications": 0,
      "api_key": "a43e6bdc-2ff9-483b-8ebf-ea3ade763864",
      "group": {
        "id": 1,
        "type": "user",
        "name": {
          "ru": "Клиент",
          "en": "Client",
          "ua": "Клиент"
        },
        "disable": 0
      },
      "department": [
        1,
        2
      ],
      "custom_fields": [
        {
          "id": 87,
          "field_type": "textarea",
          "field_value": "test"
        },
        {
          "id": 88,
          "field_type": "checkbox",
          "field_value": 1
        }
      ]
    }
  ],
  "pagination": {
    "total": 2,
    "per_page": 30,
    "current_page": 1,
    "total_pages": 1
  }
}

Получить пользователя
GET/users/{id}

Пример CURL

curl -X GET -H "Authorization: Basic bmlraXRhLmFudG9ub3ZAaGVscGRlc2tlZGR5LmNvbTphMzI4NThiNC1hNjVlLTQ5ZWYtYTk2MC0wYjdlOGQ1ZDFlNDc=" -H "Cache-Control: no-cache" "https://домен_системы/api/v2/users/1"

Пример URI

GET https://домен_системы/api/v2/users/1
Параметры
СпрятатьПоказать
id
число (обязательный) Пример: 1

ID пользователя

Ответ  200
СпрятатьПоказать
Заголовок
Content-Type: application/json
Тело
{
  "data": {
    "id": 1,
    "date_created": "2019-01-01 00:00:00",
    "date_updated": "2019-01-01 00:00:00",
    "name": "Admin",
    "lastname": "",
    "email": "test@helpdeskeddy.com",
    "phone": "+37129770143",
    "skype": "",
    "website": "",
    "organization": "",
    "status": "active",
    "language": "en",
    "notifications": 0,
    "api_key": "a32858b4-a65e-49ef-a960-0b7e8d5d1e47",
    "group": {
      "id": 2,
      "type": "staff",
      "name": {
        "ru": "Администратор",
        "en": "Administrator",
        "ua": "Администратор"
      },
      "disable": 0
    },
    "department": [
      1,
      2
    ],
    "custom_fields": [
      {
        "id": 87,
        "field_type": "textarea",
        "field_value": "test"
      },
      {
        "id": 88,
        "field_type": "checkbox",
        "field_value": 1
      }
    ]
  }
}

Добавить пользователя
POST/users/{?group_id}

Пример CURL

curl -X POST -H "Authorization: Basic bmlraXRhLmFudG9ub3ZAaGVscGRlc2tlZGR5LmNvbTphMzI4NThiNC1hNjVlLTQ5ZWYtYTk2MC0wYjdlOGQ1ZDFlNDc=" -H "Content-Type: application/x-www-form-urlencoded" -H "Cache-Control: no-cache" -d 'name=John&email=info@example.com3&group_id=1&department[0]=1&department[1]=2&password=12345678' "https://домен_системы/api/v2/users/"

Пример URI

POST https://домен_системы/api/v2/users/?group_id=1
Параметры
СпрятатьПоказать
name
строка (обязательный) Пример: John

Имя

lastname
строка (необязательный) Пример: Doe

Фамилия

email
строка (обязательный) Пример: info@example.com

Почта

phone
строка (необязательный) Пример: 37192345678

Телефон

skype
строка (необязательный) Пример: ``

Скайп

website
строка (необязательный) Пример: http://example.com

Вебсайт

organization
строка (необязательный) Пример: Organization

Организация. Навание новой огранизации. Если заполнено — поле organiz_id не учитывается.

organiz_id
число (необязательный) Пример: ``

ID существующей огранизации

status
строка (необязательный) Пример: test user

Статус пользователя. Доступные статусы: active, inactive, disabled, fired.

language
строка (необязательный) Пример: en

Язык пользователя. Доступны все активные языки в системе.

notifications
число (необязательный) Пример: 1

Уведомления на почту. 0 - отколючены. Доступные значения 1 и 0

group_id
число (обязательный) Пример: 1

ID группы

department
массив (обязательный) Пример: [0 => 1, 1 => 2]

Департаменты пользователя

password
строка (обязательный) Пример: 123456

Пароль

custom_fields
массив (необязательный) Пример: [87 => 'test', 2 => 1]

Массив индивидуальных полей контактов, пример: custom_fields[field_id] = value, в случае иерархического поля, необходимо указывать уровень custom_fields[field_id][level] = value

Ответ  200
СпрятатьПоказать
Заголовок
Content-Type: application/json
Тело
{
  "data": {
    "id": 22,
    "date_created": "2019-01-01 00:00:00",
    "date_updated": "2019-01-01 00:00:00",
    "name": "John",
    "lastname": "Doe",
    "email": "info@example.com",
    "phone": "37192345678",
    "skype": "",
    "website": "http://example.com",
    "organization": {
      "id": 8,
      "name": "Organization",
      "domains": "",
      "address": "",
      "phone": "37192345678",
      "email": "info@example.com",
      "web": "http://example.com"
    },
    "status": "active",
    "language": "en",
    "notifications": 0,
    "api_key": "cf780f93-8bd4-460d-8a56-1f6adadb8e46",
    "group": {
      "id": 1,
      "type": "user",
      "name": {
        "ru": "Клиент",
        "en": "Client",
        "ua": "Клиент"
      },
      "disable": 0
    },
    "department": [
      1,
      2
    ],
    "custom_fields": [
      {
        "id": 87,
        "field_type": "textarea",
        "field_value": "test"
      },
      {
        "id": 88,
        "field_type": "checkbox",
        "field_value": 1
      }
    ]
  }
}
Ответ  400
СпрятатьПоказать
Заголовок
Content-Type: application/json
Тело
{
  "errors": [
    {
      "code": "e-411",
      "title": "Required {name} field",
      "details": "Required field {name} is missing or empty"
    },
    {
      "code": "e-411",
      "title": "Required {email} field",
      "details": "Required field {email} is missing or empty"
    },
    {
      "code": "e-411",
      "title": "Required {group_id} field",
      "details": "Required field {group_id} is missing or empty"
    },
    {
      "code": "e-411",
      "title": "Required {department} field",
      "details": "Required field {department} is missing or empty"
    },
    {
      "code": "e-411",
      "title": "Required {password} field",
      "details": "Required field {password} is missing or empty"
    }
  ]
}

Обновить пользователя
PUT/users/{id}{?group_id}

Пример CURL

curl -X PUT -H "Authorization: Basic bmlraXRhLmFudG9ub3ZAaGVscGRlc2tlZGR5LmNvbTphMzI4NThiNC1hNjVlLTQ5ZWYtYTk2MC0wYjdlOGQ1ZDFlNDc=" -H "Content-Type: application/json" -H "Cache-Control: no-cache" -d '{"lastname":"Doe"}' "https://домен_системы/api/v2/users/22"

Пример URI

PUT https://домен_системы/api/v2/users/22?group_id=1
Параметры
СпрятатьПоказать
id
число (необязательный) Пример: 22

ID пользователя

lastname
строка (необязательный) Пример: Doe

Фамилия

email
строка (необязательный) Пример: info@example.com

Почта

phone
строка (необязательный) Пример: 37192345678

Телефон

skype
строка (необязательный) Пример: ``

Скайп

website
строка (необязательный) Пример: http://example.com

Вебсайт

organization
строка (необязательный) Пример: Organization

Организация. Навание новой огранизации. Если заполнено — поле organiz_id не учитывается.

organiz_id
число (необязательный) Пример: ``

ID существующей огранизации

status
строка (необязательный) Пример: test user

Статус пользователя. Доступные статусы: active, inactive, disabled, fired.

language
строка (необязательный) Пример: en

Язык пользователя. Доступны все активные языки в системе.

notifications
число (необязательный) Пример: 1

Уведомления на почту. 0 - отколючены. Доступные значения 1 и 0

group_id
число (необязательный) Пример: 1

ID группы

department
массив (обязательный) Пример: [0 => 1, 1 => 2]

Департаменты пользователя

password
строка (необязательный) Пример: 123456

Пароль

custom_fields
массив (необязательный) Пример: [87 => 'test', 2 => 1]

Массив индивидуальных полей контактов, пример: custom_fields[field_id] = value, в случае иерархического поля, необходимо указывать уровень custom_fields[field_id][level] = value

Ответ  200
СпрятатьПоказать
Заголовок
Content-Type: application/json
Тело
{
  "data": {
    "id": 22,
    "date_created": "2019-01-01 00:00:00",
    "date_updated": "2019-01-01 00:00:00",
    "name": "John",
    "lastname": "Doe",
    "email": "info@example.com",
    "phone": "37192345678",
    "skype": "",
    "website": "http://example.com",
    "organization": {
      "id": 8,
      "name": "Organization",
      "domains": "",
      "address": "",
      "phone": "37192345678",
      "email": "info@example.com",
      "web": "http://example.com"
    },
    "status": "active",
    "language": "en",
    "notifications": 0,
    "api_key": "cf780f93-8bd4-460d-8a56-1f6adadb8e46",
    "group": {
      "id": 1,
      "type": "user",
      "name": {
        "ru": "Клиент",
        "en": "Client",
        "ua": "Клиент"
      },
      "disable": 0
    },
    "department": [
      1,
      2
    ],
    "custom_fields": [
      {
        "id": 87,
        "field_type": "textarea",
        "field_value": "test"
      },
      {
        "id": 88,
        "field_type": "checkbox",
        "field_value": 1
      }
    ]
  }
}
Ответ  400
СпрятатьПоказать
Заголовок
Content-Type: application/json
Тело
{
  "errors": [
    {
      "code": "e-411",
      "title": "Required {name} field",
      "details": "Required field {name} is missing or empty"
    },
    {
      "code": "e-411",
      "title": "Required {email} field",
      "details": "Required field {email} is missing or empty"
    },
    {
      "code": "e-411",
      "title": "Required {group_id} field",
      "details": "Required field {group_id} is missing or empty"
    },
    {
      "code": "e-411",
      "title": "Required {department} field",
      "details": "Required field {department} is missing or empty"
    },
    {
      "code": "e-411",
      "title": "Required {password} field",
      "details": "Required field {password} is missing or empty"
    }
  ]
}

Удалить пользователя
DELETE/users/{id}

Пример CURL

curl -X DELETE -H "Authorization: Basic bmlraXRhLmFudG9ub3ZAaGVscGRlc2tlZGR5LmNvbTphMzI4NThiNC1hNjVlLTQ5ZWYtYTk2MC0wYjdlOGQ1ZDFlNDc=" -H "Cache-Control: no-cache" "https://домен_системы/api/v2/users/22"

Пример URI

DELETE https://домен_системы/api/v2/users/22
Параметры
СпрятатьПоказать
id
число (обязательный) Пример: 22

ID пользователя

Ответ  200
СпрятатьПоказать
Заголовок
Content-Type: application/json
Тело
{
  "errors": [
    {
      "code": "s-204",
      "title": "No content",
      "details": "User with id {22} successfully deleted"
    }
  ]
}
Ответ  404
СпрятатьПоказать
Заголовок
Content-Type: application/json
Тело
{
  "errors": [
    {
      "code": "e-404",
      "title": "Not found",
      "details": "User with id {22} does not exist"
    }
  ]
}

Поля пользователей
GET/users/

Пример CURL

curl -X GET -H "Authorization: Basic bmlraXRhLmFudG9ub3ZAaGVscGRlc2tlZGR5LmNvbTphMzI4NThiNC1hNjVlLTQ5ZWYtYTk2MC0wYjdlOGQ1ZDFlNDc=" -H "Cache-Control: no-cache" "https://домен_системы/api/v2/users/custom_fields"

Пример URI

GET https://домен_системы/api/v2/users/
Ответ  200
СпрятатьПоказать
Заголовок
Content-Type: application/json
Тело
{
  "data": {
    "40": {
      "id": 40,
      "name": {
        "ru": "Text",
        "en": "Text"
      },
      "field_type": "text",
      "permissions": {
        "staff": {
          "view": true,
          "edit": true,
          "required": false
        },
        "user": {
          "view": false,
          "edit": false,
          "required": false
        }
      }
    },
    "42": {
      "id": 42,
      "name": {
        "ru": "Select",
        "en": "Select"
      },
      "field_type": "select",
      "permissions": {
        "staff": {
          "view": true,
          "edit": true,
          "required": false
        },
        "user": {
          "view": false,
          "edit": false,
          "required": false
        }
      },
      "options": [
        {
          "id": 139,
          "name": {
            "ru": "1",
            "en": "1",
            "ua": "1"
          }
        },
        {
          "id": 140,
          "name": {
            "ru": "2",
            "en": "2",
            "ua": "2"
          }
        }
      ]
    },
    "44": {
      "id": 44,
      "name": {
        "ru": "Date",
        "en": "Date"
      },
      "field_type": "date",
      "permissions": {
        "staff": {
          "view": true,
          "edit": true,
          "required": false
        },
        "user": {
          "view": false,
          "edit": false,
          "required": false
        }
      }
    },
    "45": {
      "id": 45,
      "name": {
        "ru": "Number",
        "en": "Number"
      },
      "field_type": "number",
      "permissions": {
        "staff": {
          "view": true,
          "edit": true,
          "required": false
        },
        "user": {
          "view": false,
          "edit": false,
          "required": false
        }
      }
    },
    "87": {
      "id": 87,
      "name": {
        "ru": "Textarea",
        "en": "Textarea"
      },
      "field_type": "textarea",
      "permissions": {
        "staff": {
          "view": true,
          "edit": true,
          "required": false
        },
        "user": {
          "view": false,
          "edit": false,
          "required": false
        }
      }
    },
    "88": {
      "id": 88,
      "name": {
        "ru": "Checkbox",
        "en": "Checkbox"
      },
      "field_type": "checkbox",
      "permissions": {
        "staff": {
          "view": true,
          "edit": true,
          "required": false
        },
        "user": {
          "view": false,
          "edit": false,
          "required": false
        }
      }
    }
  }
}

Примечания пользователей

Получить примечание
GET/users/{user_id}/notes/{?page}

Пример CURL

curl -X GET -H "Authorization: Basic bmlraXRhLmFudG9ub3ZAaGVscGRlc2tlZGR5LmNvbTphMzI4NThiNC1hNjVlLTQ5ZWYtYTk2MC0wYjdlOGQ1ZDFlNDc=" -H "Cache-Control: no-cache" "https://домен_системы/api/v2/users/22/notes"

Пример URI

GET https://домен_системы/api/v2/users/22/notes/?page=1
Параметры
СпрятатьПоказать
user_id
число (обязательный) Пример: 22

ID пользователя

page
число (необязательный) Пример: 1

Номер страницы

Ответ  200
СпрятатьПоказать
Заголовок
Content-Type: application/json
Тело
{
  "data": [
    {
      "id": 79,
      "creator_id": 1,
      "user_id": 22,
      "text": "",
      "date_created": "19:41:09 19.03.2019",
      "date_updated": "19:41:09 19.03.2019",
      "file": {
        "name": "test_image_png.png",
        "url": "https://домен_системы/ru/file/download/d73a880871041e53a70bac2f05c439b6fd5ed0c7",
        "data_type": "png"
      }
    },
    {
      "id": 78,
      "creator_id": 1,
      "user_id": 22,
      "text": "test",
      "date_created": "19:40:52 19.03.2019",
      "date_updated": "19:40:53 19.03.2019",
      "file": []
    }
  ],
  "pagination": {
    "total": 2,
    "per_page": 30,
    "current_page": 1,
    "total_pages": 1
  }
}
Ответ  404
СпрятатьПоказать
Заголовок
Content-Type: application/json
Тело
{
  "errors": [
    {
      "code": "e-404",
      "title": "Not found",
      "details": "User with id {22} does not exist"
    }
  ]
}

Добавить примечание
POST/users/{user_id}/notes/

Пример CURL

curl -X POST -H "Authorization: Basic bmlraXRhLmFudG9ub3ZAaGVscGRlc2tlZGR5LmNvbTphMzI4NThiNC1hNjVlLTQ5ZWYtYTk2MC0wYjdlOGQ1ZDFlNDc=" -H "Content-Type: application/x-www-form-urlencoded" -H "Cache-Control: no-cache" -d 'text=test' "https://домен_системы/api/v2/users/22/notes"

Пример URI

POST https://домен_системы/api/v2/users/22/notes/
Параметры
СпрятатьПоказать
user_id
число (обязательный) Пример: 22

ID пользователя

text
строка (необязательный) Пример: test

Текст примечания

file
файл (необязательный) Пример: ``

Файл примечания

Ответ  200
СпрятатьПоказать
Заголовок
Content-Type: application/json
Тело
{
  "data": {
    "id": 81,
    "creator_id": 1,
    "user_id": 22,
    "text": "test",
    "date_created": "19:46:56 19.03.2019",
    "date_updated": "19:46:56 19.03.2019",
    "file": []
  }
}
Ответ  404
СпрятатьПоказать
Заголовок
Content-Type: application/json
Тело
{
  "errors": [
    {
      "code": "e-404",
      "title": "Not found",
      "details": "User with id {22} does not exist"
    }
  ]
}

Удалить примечание
DELETE/users/{user_id}/notes/{note_id}

Пример CURL

curl -X DELETE -H "Authorization: Basic bmlraXRhLmFudG9ub3ZAaGVscGRlc2tlZGR5LmNvbTphMzI4NThiNC1hNjVlLTQ5ZWYtYTk2MC0wYjdlOGQ1ZDFlNDc=" -H "Cache-Control: no-cache" "https://домен_системы/api/v2/users/22/notes/80"

Пример URI

DELETE https://домен_системы/api/v2/users/22/notes/80
Параметры
СпрятатьПоказать
user_id
число (обязательный) Пример: 22

ID пользователя

note_id
число (обязательный) Пример: 80

ID примечания

Ответ  200
СпрятатьПоказать
Заголовок
Content-Type: application/json
Тело
{
  "errors": [
    {
      "code": "s-204",
      "title": "No content",
      "details": "Note with id {80} successfully deleted"
    }
  ]
}
Ответ  404
СпрятатьПоказать
Заголовок
Content-Type: application/json
Тело
{
  "errors": [
    {
      "code": "s-204",
      "title": "No content",
      "details": "Note with id {80} in user with id {22} does not exist"
    }
  ]
}

Организации

Cписок организаций
GET/organizations/{?page,search}

Пример CURL

curl -X GET -H "Authorization: Basic bmlraXRhLmFudG9ub3ZAaGVscGRlc2tlZGR5LmNvbTphMzI4NThiNC1hNjVlLTQ5ZWYtYTk2MC0wYjdlOGQ1ZDFlNDc=" -H "Cache-Control: no-cache" "https://домен_системы/api/v2/organizations/?page=1"

Пример URI

GET https://домен_системы/api/v2/organizations/?page=1&search=hde
Параметры
СпрятатьПоказать
page
число (необязательный) Пример: 1

Номер страницы

search
строка (необязательный) Пример: hde

Поиск по организациям

from_date_created
строка (необязательный) Пример: 2018-12-31 00:00:00

Дата создания заявки от

to_date_created
строка (необязательный) Пример: 2018-12-31 00:00:00

Дата создания заявки до

from_date_updated
строка (необязательный) Пример: 2018-12-31 00:00:00

Дата изменения заявки от

to_date_updated
строка (необязательный) Пример: 2018-12-31 00:00:00

Дата изменения заявки до

order_by
строка (необязательный) 

Сортировка организаций, можно указать через запятую. Организации можно сортировать по параметрам: date_created, date_updated, name. Порядок сортировки {asc} (по возрастанию) и {desc} (по убыванию). Значение по умолчани: name{asc}

Ответ  200
СпрятатьПоказать
Заголовок
Content-Type: application/json
Тело
{
  "data": [
    {
      "id": 2,
      "date_created": "2019-01-01 00:00:00",
      "date_updated": "2019-01-01 00:00:00",
      "name": "Helpdeskeddy",
      "domains": "@helpdeskeddy.com",
      "address": "",
      "phone": "",
      "email": "",
      "web": "https://helpdeskeddy.ru",
      "minute_limit": 0,
      "employees": [
        1506760,
        1506763,
        1506743
      ],
      "managers": [],
      "custom_fields": [
        {
          "id": 89,
          "field_type": "textarea",
          "field_value": "test"
        },
        {
          "id": 90,
          "field_type": "checkbox",
          "field_value": 1
        }
      ]
    },
    {
      "id": 11,
      "date_created": "2019-01-01 00:00:00",
      "date_updated": "2019-01-01 00:00:00",
      "name": "Test",
      "domains": "@hde.com",
      "address": "",
      "phone": "",
      "email": "1555@hde.com",
      "web": "",
      "minute_limit": 10000,
      "employees": [
        1506780,
        1506782,
        1506783
      ],
      "managers": [
        1506783
      ],
      "custom_fields": [
        {
          "id": 89,
          "field_type": "textarea",
          "field_value": "test"
        },
        {
          "id": 90,
          "field_type": "checkbox",
          "field_value": 1
        }
      ]
    }
  ],
  "pagination": {
    "total": "2",
    "per_page": 30,
    "current_page": 1,
    "total_pages": 1
  }
}

Получить организацию
GET/organizations/{id}

Пример CURL

curl -X GET -H "Authorization: Basic bmlraXRhLmFudG9ub3ZAaGVscGRlc2tlZGR5LmNvbTphMzI4NThiNC1hNjVlLTQ5ZWYtYTk2MC0wYjdlOGQ1ZDFlNDc=" -H "Cache-Control: no-cache" "https://домен_системы/api/v2/organizations/2"

Пример URI

GET https://домен_системы/api/v2/organizations/2
Параметры
СпрятатьПоказать
id
число (обязательный) Пример: 2

ID организации

Ответ  200
СпрятатьПоказать
Заголовок
Content-Type: application/json
Тело
{
  "data": {
    "id": 2,
    "date_created": "2019-01-01 00:00:00",
    "date_updated": "2019-01-01 00:00:00",
    "name": "Helpdeskeddy",
    "domains": "@helpdeskeddy.com",
    "address": "",
    "phone": "",
    "email": "",
    "web": "https://helpdeskeddy.ru",
    "minute_limit": 0,
    "employees": [
      1506760,
      1506763,
      1506743
    ],
    "managers": [],
    "custom_fields": [
      {
        "id": 89,
        "field_type": "textarea",
        "field_value": "test"
      },
      {
        "id": 90,
        "field_type": "checkbox",
        "field_value": 1
      }
    ]
  }
}

Добавить организацию
POST/organizations/

Пример CURL

curl -X POST -H "Authorization: Basic bmlraXRhLmFudG9ub3ZAaGVscGRlc2tlZGR5LmNvbTphMzI4NThiNC1hNjVlLTQ5ZWYtYTk2MC0wYjdlOGQ1ZDFlNDc=" -H "Content-Type: application/x-www-form-urlencoded" -H "Cache-Control: no-cache" -d 'name=Helpdeskeddy99' "https://домен_системы/api/v2/organization/"

Пример URI

POST https://домен_системы/api/v2/organizations/
Параметры
СпрятатьПоказать
name
строка (обязательный) Пример: Helpdeskeddy

Название организации

domains
строка (необязательный) Пример: @helpdeskeddy.com, @hde.com

Домены организации, через запятую

address
строка (необязательный) Пример: Moscow, Russia

Адрес

phone
строка (необязательный) Пример: 749934687445

Телефон

email
строка (необязательный) Пример: info@helpdeskeddy.com

Почта

web
строка (необязательный) Пример: http://example.com

Вебсайт

minute_limit
число (необязательный) Пример: 0

Отведенное время на выполнение заявок в месяц (минуты)

employees
массив (необязательный) Пример: [0 => 1, 1 => 2]

Сотрудники компании

managers
массив (необязательный) Пример: [0 => 2]

Менеджеры компании

custom_fields
массив (необязательный) Пример: [87 => 'test', 2 => 1]

Массив индивидуальных полей контактов, пример: custom_fields[field_id] = value, в случае иерархического поля, необходимо указывать уровень custom_fields[field_id][level] = value

Ответ  200
СпрятатьПоказать
Заголовок
Content-Type: application/json
Тело
{
  "data": {
    "id": 36,
    "date_created": "2019-01-01 00:00:00",
    "date_updated": "2019-01-01 00:00:00",
    "name": "Helpdeskeddy99",
    "domains": "",
    "address": "",
    "phone": "",
    "email": "",
    "web": "",
    "minute_limit": 0,
    "employees": [],
    "managers": [],
    "custom_fields": [
      {
        "id": 89,
        "field_type": "textarea",
        "field_value": "test"
      },
      {
        "id": 90,
        "field_type": "checkbox",
        "field_value": 1
      }
    ]
  }
}
Ответ  400
СпрятатьПоказать
Заголовок
Content-Type: application/json
Тело
{
  "errors": [
    {
      "code": "e-411",
      "title": "Bad request",
      "details": "Organization name {Helpdeskeddy99} already exists"
    }
  ]
}

Обновить организацию
PUT/organizations/{id}

Пример CURL

curl -X PUT -H "Authorization: Basic bmlraXRhLmFudG9ub3ZAaGVscGRlc2tlZGR5LmNvbTphMzI4NThiNC1hNjVlLTQ5ZWYtYTk2MC0wYjdlOGQ1ZDFlNDc=" -H "Content-Type: application/json" -H "Cache-Control: no-cache" -d '{"name":"Helpdeskeddy2","domains":"@helpdeskeddy.com"}' "https://домен_системы/api/v2/organizations/2"

Пример URI

PUT https://домен_системы/api/v2/organizations/2
Параметры
СпрятатьПоказать
id
число (необязательный) Пример: 2

ID организации

name
строка (обязательный) Пример: Helpdeskeddy

Название организации

domains
строка (необязательный) Пример: @helpdeskeddy.com, @hde.com

Домены организации, через запятую

address
строка (необязательный) Пример: Moscow, Russia

Адрес

phone
строка (необязательный) Пример: 749934687445

Телефон

email
строка (необязательный) Пример: info@helpdeskeddy.com

Почта

web
строка (необязательный) Пример: http://example.com

Вебсайт

minute_limit
число (необязательный) Пример: 0

Отведенное время на выполнение заявок в месяц (минуты)

employees
массив (необязательный) Пример: [0 => 1, 1 => 2]

Сотрудники компании

managers
массив (необязательный) Пример: [0 => 2]

Менеджеры компании

custom_fields
массив (необязательный) Пример: [87 => 'test', 2 => 1]

Массив индивидуальных полей контактов, пример: custom_fields[field_id] = value, в случае иерархического поля, необходимо указывать уровень custom_fields[field_id][level] = value

Ответ  200
СпрятатьПоказать
Заголовок
Content-Type: application/json
Тело
{
  "data": {
    "id": 2,
    "date_created": "2019-01-01 00:00:00",
    "date_updated": "2019-01-01 00:00:00",
    "name": "Helpdeskeddy2",
    "domains": "@helpdeskeddy.com",
    "address": "adress",
    "phone": "+7 (499) 346-87-44",
    "email": "",
    "web": "https://helpdeskeddy.com",
    "minute_limit": 10,
    "employees": [
      1506760,
      1506763,
      1506743
    ],
    "managers": [],
    "custom_fields": [
      {
        "id": 89,
        "field_type": "textarea",
        "field_value": "test"
      },
      {
        "id": 90,
        "field_type": "checkbox",
        "field_value": 1
      }
    ]
  }
}
Ответ  400
СпрятатьПоказать
Заголовок
Content-Type: application/json
Тело
{
  "errors": [
    {
      "code": "e-411",
      "title": "Bad request",
      "details": "Organization name {Helpdeskeddy2} already exists"
    }
  ]
}

Удалить организацию
DELETE/organizations/{id}

Пример CURL

curl -X DELETE -H "Authorization: Basic bmlraXRhLmFudG9ub3ZAaGVscGRlc2tlZGR5LmNvbTphMzI4NThiNC1hNjVlLTQ5ZWYtYTk2MC0wYjdlOGQ1ZDFlNDc=" -H "Cache-Control: no-cache" "https://домен_системы/api/v2/organizations/36"

Пример URI

DELETE https://домен_системы/api/v2/organizations/36
Параметры
СпрятатьПоказать
id
число (обязательный) Пример: 36

ID организации

Ответ  200
СпрятатьПоказать
Заголовок
Content-Type: application/json
Тело
{
  "errors": [
    {
      "code": "s-204",
      "title": "No content",
      "details": "Organization with id {36} successfully deleted"
    }
  ]
}
Ответ  404
СпрятатьПоказать
Заголовок
Content-Type: application/json
Тело
{
  "errors": [
    {
      "code": "e-404",
      "title": "Not found",
      "details": "Organization with id {36} does not exist"
    }
  ]
}

Поля организаций
GET/organizations/

Пример CURL

curl -X GET -H "Authorization: Basic bmlraXRhLmFudG9ub3ZAaGVscGRlc2tlZGR5LmNvbTphMzI4NThiNC1hNjVlLTQ5ZWYtYTk2MC0wYjdlOGQ1ZDFlNDc=" -H "Cache-Control: no-cache" "https://домен_системы/api/v2/organizations/custom_fields"

Пример URI

GET https://домен_системы/api/v2/organizations/
Ответ  200
СпрятатьПоказать
Заголовок
Content-Type: application/json
Тело
{
  "data": {
    "50": {
      "id": 50,
      "name": {
        "ru": "Text",
        "en": "Text"
      },
      "field_type": "text",
      "permissions": {
        "staff": {
          "view": true,
          "edit": true,
          "required": false
        },
        "user": {
          "view": false,
          "edit": false,
          "required": false
        }
      }
    },
    "51": {
      "id": 51,
      "name": {
        "ru": "Select",
        "en": "Select"
      },
      "field_type": "select",
      "permissions": {
        "staff": {
          "view": true,
          "edit": true,
          "required": false
        },
        "user": {
          "view": false,
          "edit": false,
          "required": false
        }
      },
      "options": [
        {
          "id": 141,
          "name": {
            "ru": "1",
            "en": "1",
            "ua": "1"
          }
        },
        {
          "id": 142,
          "name": {
            "ru": "2",
            "en": "2",
            "ua": "2"
          }
        }
      ]
    },
    "52": {
      "id": 52,
      "name": {
        "ru": "Date",
        "en": "Date"
      },
      "field_type": "date",
      "permissions": {
        "staff": {
          "view": true,
          "edit": true,
          "required": false
        },
        "user": {
          "view": false,
          "edit": false,
          "required": false
        }
      }
    },
    "53": {
      "id": 53,
      "name": {
        "ru": "Number",
        "en": "Number"
      },
      "field_type": "number",
      "permissions": {
        "staff": {
          "view": true,
          "edit": true,
          "required": false
        },
        "user": {
          "view": false,
          "edit": false,
          "required": false
        }
      }
    },
    "89": {
      "id": 89,
      "name": {
        "ru": "Textarea",
        "en": "Textarea"
      },
      "field_type": "textarea",
      "permissions": {
        "staff": {
          "view": true,
          "edit": true,
          "required": false
        },
        "user": {
          "view": false,
          "edit": false,
          "required": false
        }
      }
    },
    "90": {
      "id": 90,
      "name": {
        "ru": "Checkbox",
        "en": "Checkbox"
      },
      "field_type": "checkbox",
      "permissions": {
        "staff": {
          "view": true,
          "edit": true,
          "required": false
        },
        "user": {
          "view": false,
          "edit": false,
          "required": false
        }
      }
    }
  }
}

Примечания организаций

Получить примечание
GET/organizations/{organiz_id}/notes/{?page}

Пример CURL

curl -X GET -H "Authorization: Basic bmlraXRhLmFudG9ub3ZAaGVscGRlc2tlZGR5LmNvbTphMzI4NThiNC1hNjVlLTQ5ZWYtYTk2MC0wYjdlOGQ1ZDFlNDc=" -H "Cache-Control: no-cache" "https://домен_системы/api/v2/organizations/2/notes"

Пример URI

GET https://домен_системы/api/v2/organizations/2/notes/?page=1
Параметры
СпрятатьПоказать
organiz_id
число (обязательный) Пример: 2

ID организации

page
число (необязательный) Пример: 1

Номер страницы

Ответ  200
СпрятатьПоказать
Заголовок
Content-Type: application/json
Тело
{
  "data": [
    {
      "id": 83,
      "creator_id": 1,
      "organiz_id": 2,
      "text": "",
      "date_created": "20:02:05 19.03.2019",
      "date_updated": "20:02:05 19.03.2019",
      "file": {
        "name": "test2.png",
        "url": "https://домен_системы/ru/file/download/154356e5b627857e09f937192abcbc671e778dc3",
        "data_type": "png"
      }
    },
    {
      "id": 82,
      "creator_id": 1,
      "organiz_id": 2,
      "text": "test2",
      "date_created": "20:01:27 19.03.2019",
      "date_updated": "20:02:10 19.03.2019",
      "file": []
    }
  ],
  "pagination": {
    "total": 2,
    "per_page": 30,
    "current_page": 1,
    "total_pages": 1
  }
}
Ответ  404
СпрятатьПоказать
Заголовок
Content-Type: application/json
Тело
{
  "errors": [
    {
      "code": "e-404",
      "title": "Not found",
      "details": "Organization with id {2} does not exist"
    }
  ]
}

Добавить примечание
POST/organizations/{organiz_id}/notes/

Пример CURL

curl -X POST -H "Authorization: Basic bmlraXRhLmFudG9ub3ZAaGVscGRlc2tlZGR5LmNvbTphMzI4NThiNC1hNjVlLTQ5ZWYtYTk2MC0wYjdlOGQ1ZDFlNDc=" -H "Content-Type: application/x-www-form-urlencoded" -H "Cache-Control: no-cache" -d 'text=test' "https://домен_системы/api/v2/organizations/2/notes"

Пример URI

POST https://домен_системы/api/v2/organizations/2/notes/
Параметры
СпрятатьПоказать
organiz_id
число (обязательный) Пример: 2

ID пользователя

text
строка (необязательный) Пример: test

Текст примечания

file
файл (необязательный) 

Файл примечания

Ответ  200
СпрятатьПоказать
Заголовок
Content-Type: application/json
Тело
{
  "data": {
    "id": 84,
    "creator_id": 1,
    "organiz_id": 2,
    "text": "test",
    "date_created": "20:07:10 19.03.2019",
    "date_updated": "20:07:10 19.03.2019",
    "file": []
  }
}
Ответ  404
СпрятатьПоказать
Заголовок
Content-Type: application/json
Тело
{
  "errors": [
    {
      "code": "e-404",
      "title": "Not found",
      "details": "Organization with id {2} does not exist"
    }
  ]
}

Удалить примечание
DELETE/organizations/{organiz_id}/notes/{note_id}

Пример CURL

curl -X DELETE -H "Authorization: Basic bmlraXRhLmFudG9ub3ZAaGVscGRlc2tlZGR5LmNvbTphMzI4NThiNC1hNjVlLTQ5ZWYtYTk2MC0wYjdlOGQ1ZDFlNDc=" -H "Cache-Control: no-cache" "https://домен_системы/api/v2/organizations/22/notes/80"

Пример URI

DELETE https://домен_системы/api/v2/organizations/2/notes/80
Параметры
СпрятатьПоказать
organiz_id
число (обязательный) Пример: 2

ID пользователя

note_id
число (обязательный) Пример: 80

ID примечания

Ответ  200
СпрятатьПоказать
Заголовок
Content-Type: application/json
Тело
{
  "errors": [
    {
      "code": "s-204",
      "title": "No content",
      "details": "Note with id {85} successfully deleted"
    }
  ]
}
Ответ  404
СпрятатьПоказать
Заголовок
Content-Type: application/json
Тело
{
  "errors": [
    {
      "code": "s-204",
      "title": "No content",
      "details": "Note with id {85} in organizations with id {2} does not exist"
    }
  ]
}

Группы

Cписок групп
GET/groups/

Пример CURL

curl -X GET -H "Authorization: Basic bmlraXRhLmFudG9ub3ZAaGVscGRlc2tlZGR5LmNvbTphMzI4NThiNC1hNjVlLTQ5ZWYtYTk2MC0wYjdlOGQ1ZDFlNDc=" -H "Cache-Control: no-cache" "https://домен_системы/api/v2/organizations/?page=1"

Пример URI

GET https://домен_системы/api/v2/groups/
Ответ  200
СпрятатьПоказать
Заголовок
Content-Type: application/json
Тело
{
  "data": [
    {
      "id": 1,
      "type": "user",
      "name": {
        "ru": "Клиент",
        "en": "Client",
        "ua": "Клиент"
      },
      "disable": 0
    },
    {
      "id": 2,
      "type": "staff",
      "name": {
        "ru": "Администратор",
        "en": "Administrator",
        "ua": "Администратор"
      },
      "disable": 0
    },
    {
      "id": 3,
      "type": "staff",
      "name": {
        "ru": "Сотрудник",
        "en": "Employee",
        "ua": "Сотрудник"
      },
      "disable": 0
    }
  ]
}