3.9.3.4 Добавить контакт

POST /vpbx/ab/contacts/create/

Метод позволяет добавить контакт. Также можно добавить несколько контактов, до 500.

Параметры:

№ Параметры с уровнем вложенности Параметры с уровнем вложенности Параметры с уровнем вложенности Тип Обяза-тель-ный Описание
№ 1 2 3 Тип Обяза-тель-ный Описание
1 data Массив добавленных объектов типа Контакт
1.1 name string Да Название
1.2 office string Нет Должность
1.3 site string Нет Сайт компании
1.4 org Object Нет Объект типа Организация - организация, к которой относится контакт. Включает в себя
org_id Нет ID организации, если уже существует, тогда второе поле "org_name" отправлять не обязательно
org_name string Нет Название организации, указывается для существующей или создания новой организации, для существующей поле "org_id" отправлять не обязательно
1.5 importance Число Нет 0-9 - флаг «важный контакт»
1.6 comment string Нет Комментарий к контакту
1.7 birthday string Нет Дата рождения в формате yyyy-mm-dd
1.8 sex Число Нет Возможные значения 0, 1. Пол
1.9 phones [] Массив объектов «Телефон»
phone_id string Нет Идентификатор телефонного номера
type Число Нет Тип телефонного номера (0-Городской, 1-Мобильный, 2-SIP, 3-Skype, 4-Другой, 5-Факс)
phone string Нет Телефонный номер, в том виде, в котором пользователь их ввел (макс 255 символов)
comment string Нет Комментарий к номеру (255)
ext string Нет Добавочный номер (макс 32 символ)
is_default Boolean Нет Является ли номером по умолчанию, если не указано, интерпретируется как false
1.10 emails [] Массив объектов «Электронная почта»
email_id string Нет Идентификатор емайла
email Адрес электронной почты
comment string Нет Комментарий к номеру
is_default Boolean Нет Является ли адресом по умолчанию, если не указано, интерпретируется как false
1.11 groups [] Массив объектов «Группа»
group_id string Нет Идентификатор группы в БД
group_name string Нет Название группы
1.12 nets[] Массив объектов «Социальные сети»
net_id string Нет Идентификатор записи
net Идентификатор типа соц сети - 0:Facebook, 1:ВКонтакте, 2:Google+, 3:Одноклассники, 4:myspace, 5:Instagram, 6:linkedin, 7:Twitter, 8:Vine, 9:Youtube, 10:Badoo;
uname Идентификатор в соц сети
1.13 messengers Массив объектов «Мессенджеры»
mgr_id string Нет Идентификатор записи
mgr Идентификатор типа мессенджера: □ 0:viber; □ 1:telegram; □ 2:skype; □ 3:whatsapp
uname Идентификатор в соц мессенджере
1.14 in_favorites [] Массив идентификаторов сотрудников ВАТС, у которых данный контакт в избранных (user_id)
1.15 custom_values [] Массив объектов «Значение пользовательского поля»
custom_field_id Число Идентификатор пользовательского поля
text Значение текстового поля
value Значение для типа "Число", "Денежный", "Дата", "Флаг", "Пользователь";
list_items[] Объект «Пункт списка», выбранные элементы списка: □ enum_id - число, идентификатор пункта списка
1.16 user_id Число Идентификатор персонального сотрудника
2 on_error string Нет Действие по умолчанию для записей, которые не прошли проверку по критериям обеспечения целостности (например, дубликаты существующих записей), возможные значения
duplicate Создавать дубликаты существующих записей. Если выбран данный вариант разрешения коллизий, те элементы, которые были продублированы, помещаются в ответе в массив успешно обработанных - в массив data
skip (Значение по умолчанию) ничего не предпринимать, пропускать проблемные записи. В случае, когда выбрана эта опция, порядковые номера (индексы во входном массиве data) не обработанных (пропущенных) элементов попадают в массив skipped, и отражаются в статистике операции

Пример запроса:

POST https://app.mango-office.ru/vpbx/ab/contacts/create

vpbx_api_key = 1234567890qwerty,
sign = 1234567890qwerty,
json = {
"data":
{
"name":"Новый контакт 16 08 19",
"office":"Office",
"site":"my.site.test",
"importance":"5",
"comment":"Test contact create",
"birthday":"2019-08-16",
"sex":"1",
"phones":[
{
"type":"4",
"phone":"296234567",
"comment":"комментарий для телефона 291234567",
"ext":"375",
"is_default":"true"
},
{ "type":"4","phone":"296234568","comment":"комментарий для телефона 291234568","ext":"375","is_default":"true"
}

,

"emails":
{
"email":"new.email6@mail.ru",
"comment":"comment for new.email@mail.ru",
"is_default":"true"
},
{
"email":"new.emai62l@mail.ru",
"comment":"comment for new.email2@mail.ru",
"is_default":"true"
}

,

"groups":
{
"group_name":"New6Group"
},
{
"group_name":"New6Group Inc"
},
{
"group_name":"New6Group Corp"
}

,

"nets":
{
"net":"2",
"uname":"U6ser"
},
{
"net":"3",
"uname":"U6ser0"
}

,

"messengers":
{
"mgr":"0",
"uname":"U6serV"
},
{
"mgr":"1",
"uname":"U6serT"
}

,

"in_favorites":"12761893",
"custom_values":
{
"custom_field_id": 5140,
"text": "New Value"
},
{
"custom_field_id": 5444,
"text": "ЦОВ"
},
{
"custom_field_id": 5445,
"list_items": [
{
"enum_id": 6979,
},
{
"enum_id": 6981,
}
},
{
"custom_field_id": 5446,
"list_items":
{
"enum_id": 6983,
}
}

],

"on_error":"skip"
}

] }

В результате обработки запроса, формируются и передаются JSON-данные, содержащие следующие параметры:

№ Параметры Тип Обяза-тель-ный Описание
1 result Да Код результата
2 data Нет Ассоциативный массив объектов успешно обработанных элементов (те, которые были вставлены, и те, которые были перезаписаны или продублированы в случае явного указания пользователем на режим обработки коллизий) вида: { contact_id: contact,... }. Где contact_id - идентификатор созданного контакта, а contact - стандартный объект контакта
3 skipped Нет Массив идентификаторов (начинающихся с 0) не обработанных элементов (те, которые были выявлены, как дубликаты и были пропущены), где в качестве идентификатора используется порядковый номер строки входного массива data, вида XXX, YYY, ZZZ,...

Пример ответа:

{
"result":

1000

,

"data": {
"12962817": {
"contact_id": "12962817",
"type": 0,
"name": "Новый контакт 16 08 19",
"office": "Office",
"site": "my.site.test",
"org": null,
"importance": 5,
"comment": "Test contact create",
"birthday": "2019-08-16",
"sex": 1,
"avatar": "",
"url": null,
"phones":
{
"phone_id": "13870398",
"type": 4,
"phone": "296234567",
"comment": "комментарий для телефона 291234567",
"ext": "375",
"is_default": true
},
{
"phone_id": "13870399",
"type": 4,
"phone": "296234568",
"comment": "комментарий для телефона 291234568",
"ext": "375"
}

,

"emails":
{
"email_id": "11595948",
"email": "new.email6@mail.ru",
"comment": "comment for new.email@mail.ru",
"is_default": true
},
{
"email_id": "11595949",
"email": "new.emai62l@mail.ru",
"comment": "comment for new.email2@mail.ru"
}

,

"groups":
{
"group_id": "10128775",
"group_name": "New6Group"
},
{
"group_id": "10128776",
"group_name": "New6Group Inc"
},
{
"group_id": "10128777",
"group_name": "New6Group Corp"
}

,

"nets":
{
"net_id": "12278",
"net": 2,

u"name": "U6ser"

},
{ "net_id": "12279",
"net": 3,
"uname": "U6ser0"
}

,

"messengers":
{ mgr_id: "12277",
"mgr": 1,
"uname": "U6serT"
},
{ "mgr_id": "12276",
"mgr": 0,

"unamev: "U6serV"

}

,

"in_favorites": [],
"when_created": 1565975061,
"last_used": null,
"last_call": null

} }}