Клиенты

Внимание

Если вы используете коробочную версию Юздеска на собственном сервере, то URL методов у вас будет отличаться. Уточните URL для работы с API у поддержки — support@usedesk.ru.

Получить список клиентов

POST https://api.usedesk.ru/clients

Метод возвращает список клиентов, удовлетворяющих заданным условиям фильтров.

В методе реализована постраничная разбивка. В ответе максимум 100 записей, для смещения используется параметр offset.

* — обязательные поля 

ПараметрЗначение
api_token*Токен API канала
created_after

Фильтрация по дате и времени создания

В выдачу попадут клиенты, созданные после указанной даты (включительно)

Пример использования:

"created_after": "2022-01-01 00:00"

created_before

Фильтрация по дате и времени создания

В выдачу попадут клиенты, созданные до указанной даты (включительно)

Пример использования:

"created_before": "2022-12-31 23:59"

offset

Смещение

Не принимает значение null

Смещение на 1 покажет следующие 100 записей

query

Поиск по имени, email и телефону клиента

Принимает только одно значение

search_type

Тип поиска

Принимает 2 значения:

  • partial_match — поиск по вхождению %like%;
  • full_match — поиск по полному совпадению,

Если не указан параметр выбирается по умолчанию partial_match

Пример запроса на PHP
$data = array(
	'api_token'=> 'e1cbe1c1c9d910ef2ae975215644cb53dd555de4',
	'offset'=>0,
	'created_after' =>'2016-11-25 00:00',
	'created_before'=>'2016-11-25 15:08',
);
$mch_api = curl_init();

curl_setopt($mch_api, CURLOPT_URL, 'https://api.usedesk.ru/clients');
curl_setopt($mch_api, CURLOPT_RETURNTRANSFER, true);
curl_setopt($mch_api, CURLOPT_CUSTOMREQUEST, 'POST');
curl_setopt($mch_api, CURLOPT_TIMEOUT, 10);
curl_setopt($mch_api, CURLOPT_POST, true);
curl_setopt($mch_api, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($mch_api, CURLOPT_POSTFIELDS, $data);

$result = curl_exec($mch_api);
return $result;
Пример ответа от сервера
[
	{
		"id": 1,
		"name": "UseDesk",
		"emails": "support@usedesk.ru",
		"phone": null,
		"tickets": [
			1,
			3089372,
			3091416
		]
	},
	{
		"id": 16,
		"name": "Google+",
		"emails": "noreply-9557e437@plus.google.com",
		"phone": null,
		"tickets": []
	},
	{
		"id": 17,
		"name": "Shazam",
		"emails": null,
		"phone": null,
		"tickets": []
	},
	{
		"id": 18,
		"name": "Google Play",
		"emails": "news-googleplay@google.com",
		"phone": null,
		"tickets": [
			3088240
		]
	}
]

Отдельный клиент

url: https://api.usedesk.ru/client

Метод возвращает информацию об указанном клиенте компании. Принимает один id клиента

* — обязательные поля 

ПараметрЗначение
api_token*Токен API канала
client_id*id клиента
Пример запроса на PHP
$data = array(
	'api_token'=> 'e1cbe1c1c9d910ef2ae975215644cb53dd555de4',
	'client_id'=>'2261648',
);
$mch_api = curl_init(); 

curl_setopt($mch_api, CURLOPT_URL, 'https://api.usedesk.ru/client');
curl_setopt($mch_api, CURLOPT_RETURNTRANSFER, true);
curl_setopt($mch_api, CURLOPT_CUSTOMREQUEST, 'POST');
curl_setopt($mch_api, CURLOPT_TIMEOUT, 10);
curl_setopt($mch_api, CURLOPT_POST, true);
curl_setopt($mch_api, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($mch_api, CURLOPT_POSTFIELDS, $data);

$result = curl_exec($mch_api);
return $result;
Пример ответа от сервера
[
	{
		"client": {
			"id": 2,
			"name": "Ekaterina Arhipova",
			"avatar": null,
			"position": null,
			"note": null,
			"company_id": 153561,
			"spammer": 0,
			"vip": 0,
			"client_company_id": null,
			"created_at": "2015-02-24 19:50:03",
			"tickets": [
				2,
				3000640,
				3000652,
				3000708,
				3000784,
				3000794,
				3027058
			],
			"emails": [
				{
					"id": 2,
					"email": "arhipova1206@gmail.com",
					"client_id": 2,
					"fullcontact": 0,
					"status": "",
                    "created_at": "2020-08-21 14:12:14",
                    "updated_at": "2020-08-21 14:12:14"

				}
			],
			"phones": [
				{
                    "id": 96548669,
                    "phone": "7987918046355",
                    "type": "home",
                    "client_id": 109815438
                    "created_at": "2020-08-21 14:12:14",
                    "updated_at": "2020-08-21 14:12:14"
                },
                {
                    "id": 96538781,
                    "phone": "7987999887743",
                    "type": "mobile",
                    "client_id": 109821438
                }
			],
			"social_networks": [
                {
                    "id": 1891274,
                    "url": "https://twitter.com/oCHkyJ0r93B60bU",
                    "type": "twitter",
                    "client_id": 27747627,
                    "uid": null,
                    "fullcontact": 0
                },
                {
                    "id": 1891275,
                    "url": "https://www.facebook.com/3067001726690637",
                    "type": "facebook",
                    "client_id": 27747627,
                    "uid": null,
                    "fullcontact": 0
                },
                {
                    "id": 1891276,
                    "url": "https://www.facebook.com/Boyarara",
                    "type": "facebook",
                    "client_id": 27747627,
                    "uid": null,
                    "fullcontact": 0
                },
                {
                    "id": 1891277,
                    "url": "https://www.instagram.com/nickname/",
                    "type": "instagram",
                    "client_id": 27747627,
                    "uid": null,
                    "fullcontact": 0
                },
                {
                    "id": 1891279,
                    "url": "https://vk.com/id111111111",
                    "type": "vk",
                    "client_id": 27747627,
                    "uid": null,
                    "fullcontact": 0,
                    "created_at": "2020-08-21 14:12:14",
                    "updated_at": "2020-08-21 14:12:14"
                },
                {
                    "id": 1891280,
                    "url": "https://vk.com/public111111111",
                    "type": "vk",
                    "client_id": 27747627,
                    "uid": null,
                    "fullcontact": 0,
                    "created_at": "2020-08-21 14:12:14",
                    "updated_at": "2020-08-21 14:12:14"
                }
                {
                    "id": 1600915,
                    "url": "",
                    "type": "",
                    "client_id": 23927259,
                    "uid": "UU4L88CJG",
                    "fullcontact": 0,
                    "created_at": null,
                    "updated_at": null
                }

            ],
			"messengers": [
                {
                    "id": 395036,
                    "identity": "J7b7Hb8HUcksljAZp683wA==",
                    "type": "imessage",
                    "client_id": 27747627
                },
                {
                    "id": 395799,
                    "identity": "79251110011",
                    "type": "whatsapp",
                    "client_id": 27747627
                },
                {
                    "id": 395800,
                    "identity": "280303646",
                    "type": "telegram",
                    "client_id": 27747627
                }
            ],
			"addresses": [
				{
                    "id": 83629,
                    "country": "Россия",
                    "city": "Самара",
                    "address": "Адрес",
                    "type": "home",
                    "client_id": 109814438
                },
                {
                    "id": 83631,
                    "country": "Россия",
                    "city": "Самара",
                    "address": "Адрес",
                    "type": "home",
                    "client_id": 109821438
                }
			],
			"sites": [],
			"client_company": {
                "id": 444195,
                "name": "Тестовый ",
                "note": "fuf",
                "domains": "",
                "phone": "+7917016777277",
                "address": "a:3:{s:7:\"country\";s:12:\"Россия\";s:4:\"city\";s:6:\"Samara\";s:7:\"address\";s:0:\"\";}",
                "vip": 0,
                "company_id": 1537312,
                "avatar": "/images/client_companies/files/15373312/15223712_5d401e310d663422_avatar.jpg"
            }
		}
	}
]

Обновить клиента

POST https://api.usedesk.ru/update/client

Метод изменяет информацию о клиенте

* — обязательные поля 

ПараметрЗначение
api_token*Токен API канала
client_id*id клиента
nameНовое имя клиента
emails

Массив с почтовыми адресами

Система добавит адреса к уже существующим

messengers

Массив с данными мессенджеров, которые можно обновить или добавить в карточку клиента

Содержит параметры:

  • id — id мессенджера (не обязательный) 
    Если указан, то произойдет изменение существующего мессенджера;
  • identity никнейм, номер телефона, другие идентификаторы, которые отображаются в карточке клиента (обязательный).
    Строка, 64 символа. Если передается пустое значение и задан id параметр, то мессенджер будет удален
  • type — тип мессенджера (обязательный)
    Возможные значения:
    • telegram,
    • whatsapp,
    • viber,
    • skype,
    • gtalk,
    • imessage,
    • other 
  • uid — id пользователя в мессенджере (не обязательный)
noteТекст заметки
is_new_note

Флаг новой заметки

Если установлен параметр false или он отсутствует, то текст заметки добавляется к существующему

phone

Телефон пользователя

Система добавит телефон к уже существующим

sites

Массив с сайтами клиента

Содержит параметры:

  • id — id сайта (не обязательный) 
    Если указан, то произойдет изменение существующего сайта
    Если указан несуществующий id, то обновления не произойдет
  • url — ссылка на сайт клиента (обязательный).  Если передается пустое значение и задан id параметр, то сайт будет удален
avatar

Файл с изображением

multipart/form-data

status

Статус клиента

Допустимые значения:

  • vip;
  • spammer
positionДолжность клиента
merge_idИдентификатор клиента, с которым будет объединен пользователь с идентификатором client_id
client_countryСтрана клиента
client_cityГород клиента
client_addressАдрес клиента
new_address

Флаг нового адреса

Передается, если требуется создать дополнительный адрес

phone_type

Тип телефона при сохранении

Возможные значения:

  • home;
  • mobile;
  • stationary;
  • fax;
  • other
Пример запроса на PHP
$data = array(
	'api_token'=> 'e1cbe1c1c9d910ef2ae975215644cb53dd555de4',
	'client_id'=>1234,
	'name' =>'Jon',
	'emails'=>['test@gmail.com'],
	'messengers'=>[
        {
        	'id'=>'123456',
			'identity'=>'test',
        	'type'=>'telegram',
        	'uid'=>'1234'
        },
		{
        	'id'=>'56789',
			'identity'=>'test2',
        	'type'=>'whatsapp'
        }
    ]
);
$mch_api = curl_init();

curl_setopt($mch_api, CURLOPT_URL, 'https://api.usedesk.ru/update/client');
curl_setopt($mch_api, CURLOPT_RETURNTRANSFER, true);
curl_setopt($mch_api, CURLOPT_CUSTOMREQUEST, 'POST');
curl_setopt($mch_api, CURLOPT_TIMEOUT, 10);
curl_setopt($mch_api, CURLOPT_POST, true);
curl_setopt($mch_api, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($mch_api, CURLOPT_POSTFIELDS, $data);

$result = curl_exec($mch_api);
return $result;
Пример ответа от сервера
{
    "client_id": 1234,
    "status": true
}

Создать клиента

POST https://api.usedesk.ru/create/client

Метод создает нового клиента

* — обязательные поля 

ПараметрЗначение
api_token*Токен API канала
nameНовое имя клиента
emailsМассив с почтовыми адресами
messengers

Массив с данными мессенджеров

Содержит параметры:

  • identity никнейм, номер телефона, другие идентификаторы, которые отображаются в карточке клиента (обязательный).
    Строка, 64 символа.
  • type — тип мессенджера (обязательный)
    Принимает значения:
    • telegram,
    • whatsapp,
    • viber,
    • skype,
    • gtalk,
    • imessage,
    • other 
  • uid — id пользователя в мессенджере (не обязательный)
noteТекст заметки
phoneТелефон пользователя
sites

Массив с сайтами клиента

Содержит параметры: 

  • url — ссылка на сайт клиента (обязательный)
avatar

Файл с изображением

multipart/form-data

status

Статус клиента

Допустимые значения:

  • vip;
  • spammer
positionДолжность клиента
merge_idИдентификатор клиента, с которым будет объединен пользователь с идентификатором client_id
client_countryСтрана клиента
client_cityГород клиента
client_addressАдрес клиента
new_addressДополнительный адрес
phone_type

Тип телефона при сохранении

Возможные значения:

  • home;
  • mobile;
  • stationary;
  • fax;
  • other
Пример запроса на PHP
$data = array(
	'api_token'=> 'e1cbe1c1c9d910ef2ae975215644cb53dd555de4',
	'name' =>'Jon',
	'emails'=>['test@gmail.com'],
	'messengers'=>[
        {
        	'identity'=>'test',
        	'type"=>"telegram',
        	'uid'=>'test_uid'
        },
		{
        	'identity'=>'test2',
        	'type"=>'whatsapp'
        },
    ]
);
$mch_api = curl_init();

curl_setopt($mch_api, CURLOPT_URL, 'https://api.usedesk.ru/create/client');
curl_setopt($mch_api, CURLOPT_RETURNTRANSFER, true);
curl_setopt($mch_api, CURLOPT_CUSTOMREQUEST, 'POST');
curl_setopt($mch_api, CURLOPT_TIMEOUT, 10);
curl_setopt($mch_api, CURLOPT_POST, true);
curl_setopt($mch_api, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($mch_api, CURLOPT_POSTFIELDS, $data);

$result = curl_exec($mch_api);
return $result;
Пример ответа от сервера
{
    "client_id": 1234,
    "status": true
}