Клиенты¶
Карточка клиента¶
URI: /BumsCrmApiV01/Contractor/card.api|xml
Входные параметры¶
Параметр |
Тип |
Описание |
---|---|---|
Id |
integer |
Идентификатор клиента |
RequestedFields |
array<string> |
Массив полей, которые необходимо вывести. Список допустимых для этого параметра полей можно получить отдельным запросом |
FormatSettings[phone] |
string |
Если передать значение «full», номера клиента будут выводиться с комментариями и префиксами. Подробнее о префиксах и их значениях здесь |
Существует возможность с помощью параметра RequestedFields вывести все e-mail`ы клиента:
/BumsCrmApiV01/Contractor/card.api?Id=1030347&RequestedFields[ContactInfo][0]=Type&RequestedFields[ContactInfo][1]=Value&RequestedFields[ContactInfo][2]=IsMain
В ответе на такой запрос в объекте клиента появится поле-массив ContactInfo содержащий поля Type - тип контактной информации(email), Value - сам адрес в виде строки, IsMain - булево значение, является ли email главным(предпочтительным для связи).
Выходные данные¶
Если был передан в запросе параметр RequestedFields, то выводятся только те поля, который были переданы в нём. Иначе:
Параметр |
Тип |
Описание |
---|---|---|
Id |
integer |
Идентификатор клиента |
Type |
object(Id,Name) |
Тип клиента |
PersonType |
string |
Тип организации (company или person) |
ActivityType |
string |
Вид деятельности |
AdvertisingWay |
string |
Канал привлечения |
Birthday |
date |
День рождения/Дата основания |
Description |
string |
Описание |
string |
Почта |
|
Icq |
string |
Номер ICQ |
string |
Адрес в Фейсбуке |
|
Jabber |
string |
Джаббер |
Locations |
string |
Адреса |
Name |
string |
Имя или название |
GUID |
string |
ИД, созданный при синхронизации с интернет магазином |
PreferTransport |
string |
Предпочтительный вид связи |
Responsibles |
[object(Id,Name)] |
Ответственные |
ResponsibleContractors |
[object(Id,Name)] |
|
Site |
string |
Сайт |
Skype |
string |
Скайп |
Status |
object(Id,Name) |
Статус |
TimeCreated |
date |
Дата создания |
TimeUpdated |
date |
Дата изменения |
string |
Твиттер |
|
Attaches[0..n][Name] |
string |
Имя файла вложения |
Attaches[0..n][Url] |
string |
Запрос для получения файла вложения по API |
Attaches[0..n][FileName] |
string |
Системное имя файла вложения, используется при удалении. |
Attaches[0..n][TimeCreated] |
date |
Дата создания файла вложения |
Attaches[0..n][Size] |
integer |
Размер файла вложения, кб |
Если клиент является компанией, то дополнительно присутствуют:¶
Параметр |
Тип |
Описание |
---|---|---|
CompanyName |
string |
Название компании |
ChildContacts |
array |
Массив контактных лиц. (Каждый элемент массива содержит структуру, которая описана в этом разделе) |
Если клиент является контактным лицом, то дополнительно присутствуют:¶
Параметр |
Тип |
Описание |
---|---|---|
LastName |
string |
Фамилия |
FisrtName |
string |
Имя |
MiddleName |
string |
Отчество |
ParentCompany |
object |
Компания. Элемент является объектом, структура которого описана в этом разделе |
Gender |
string |
Пол |
Position |
string |
Должность |
Примечания.¶
Поле присутствует в ответе только в том случае, если оно заполнено для запрошенного клиента.
Пример ответа в JSON-формате¶
{
"status": {
"code": "ok",
"message": null
},
"data": {
"contractor": {
"Id": 1000013,
"Birthday": "2000-01-01",
"ChildContacts": [
{
"Id": 1000014,
"Name": "Ivan Ivanov"
},
{
"Id": 1000014,
"Name": "Sergey Sergeev"
}
],
"Description": "",
"Email": "[email protected]",
"Phones": [
"ph_m+7-915-1234567\ttest_api",
"ph_m+7-916-1234567\ttest_api"
],
"Icq": "",
"Facebook": "",
"Jabber": "",
"Locations": [
{
"Id": 5,
"Address": "Some_Address"
}
],
"Name": "Babayka ltd",
"GUID": "",
"Payers": [
{
"Id": 1000013,
"Name": "Babayka"
}
],
"PersonType": "company",
"PreferTransport": "",
"PromisingRate": "0",
"Responsibles": [
{
"Id": 1000006,
"Name": "api_test_employee_first_name_uid_1000091 test"
},
{
"Id": 1000007,
"Name": "api_test_employee_first_name_uid_1000093 test"
}
],
"Site": "",
"Skype": "",
"TimeCreated": "2016-12-02 13:17:07",
"TimeUpdated": "2016-12-02 13:17:08",
"Twitter": "",
"Type": {
"Id": 1,
"Name": "Клиент"
},
"CompanyName": "Company_Name",
"ResponsibleContractors": []
}
}
}
Пример ответа в XML-формате¶
<?xml version="1.0" encoding="utf-8"?>
<response>
<status>
<code>ok</code>
<message></message>
</status>
<params>
<id>1</id>
</params>
<data>
<contractor>
</contractor>
</data>
</response>
Редактирование/Создание клиента¶
URI: /BumsCrmApiV01/Contractor/save.api|xml
Входные параметры¶
Параметр |
Тип |
Описание |
---|---|---|
Id |
integer |
ID клиента, если не указан то будет создан новый клиент |
Model[TypePerson] |
string |
Тип организации, принимает значения: human и company |
Model[Type] |
string |
ID типа клиента |
Model[FirstName] |
string |
Имя, обязательное если тип human |
Model[LastName] |
string |
Фамилия, обязательное если тип human |
Model[MiddleName] |
string |
Отчество, обязательное если тип human |
Model[CompanyName] |
string |
Наименование компании, обязательное если тип company |
Model[ParentCompany] |
int |
Id компании, используется для связи контактного лица с компанией |
Model[Email] |
string |
|
Model[Phones] |
array |
Массив телефонов* |
Model[Birthday] |
array |
День основания компании или день рождения клиента, формат: Y-m-d (Пример: ‘1999-03-27’) |
Model[Responsibles] |
string |
Идентификаторы ответственных сотрудников перечисленных через запятую (Пример: ‘1000005,1013202’) |
Model[ResponsibleContractors] |
string |
Идентификаторы ответственных клиентов** перечисленных через запятую (Пример: ‘1000005,1013202’) |
Model[Attaches][Add] |
array |
Массив приложенных файлов, должен передаваться POST-запросом |
Model[Attaches][Add][0…n][Content] |
string |
Данные(контент файла), закодированные с использованием MIME base64 |
Model[Attaches][Add][0…n][Name] |
string |
Имя файла |
Model[Attaches][Delete][0…n] |
string |
Имя файла, который необходимо удалить*** |
Model[Locations][location] |
array |
Массив адресов клиента**** |
Model[Имя_поля] |
string |
Значение расширенного поля контрагента с именем “Имя_поля” (список полей можно получить с помощью отдельного запроса |
∗ - строка с номером телефона должна иметь следующий вид: префикс, определяющий тип телефона (например, домашний или мобильный), код страны, код города и сам номер, разделенные дефисом, через симол табуляции можно передать комментарий к телефону (разделение телефона и комментария знаком табуляции - обязательно). Например: ph_m-7-915-1234567 → комментарий. Список возможных префиксов с названиями можно получить в справочнике.
∗∗ - Отвественными клиентами, могут быть только клиенты с гостевым доступом
∗∗∗ - системное имя файла можно получить, выполнив запрос карточки клиента, выходной параметр - Attaches[0..n][FileName]
**** - Чтобы добавить несколько адресов клиенту, нужно использовать в запросе следующую структуру: Model[Locations][location][n1][Address]=address1&Model[Locations][location][n2][Address]=address2
Выходные данные (поля клиента)¶
Поле |
Тип |
Описание |
---|---|---|
contractor[Id] |
integer |
ID клиент |
contractor[PayerId] |
integer |
ID автоматически созданного плательщика |
Удаление клиента¶
URI: /BumsCrmApiV01/Contractor/delete.api|xml
Входные параметры¶
Параметр |
Тип |
Описание |
---|---|---|
Id |
integer |
ID клиента, которого нужно удалить. |
Список полей клиента¶
URI: /BumsCrmApiV01/Contractor/listFields.api|xml
Выходные параметры (массив полей клиента с переводом поля)¶
Поле |
Тип |
Описание |
---|---|---|
Fields |
array<object (Name, Translation, Type)> |
Массив объектов, где каждый объект является определением поля, содержащим его имя тип и перевод. |
Список клиентов¶
URI: /BumsCrmApiV01/Contractor/list.api|xml
Входные параметры¶
Параметр |
Тип |
Описание |
---|---|---|
FilterId |
integer |
Идентификатор фильтра |
Limit |
integer |
Сколько выбрать клиентов (LIMIT) Выборка происходит с начала от меньших ID к большим |
Offset* |
integer |
Начиная с какого выбирать клиента (OFFSET) |
qs |
string |
Условие поиска |
Phone |
string |
Номер телефона в произвольном формате |
Model |
array |
Массив в формате имя поля => значение. Используется для фильтрации по конкретным значениям полей. |
DroppedOnly |
bool |
Выводить только условно удаленных клиентов. Выходные параметры будут состоять из полей Id и Name. |
Offset — порядковый номер в получившейся выборке. Например, если у нас 10 клиентов и 5 — с именем Иван, то запрос c
Limit=1, Offset=3 и qs='Иван'
, вернет третьего по порядку из этих пяти.
Выходные данные¶
Параметр |
Тип |
Описание |
---|---|---|
Id |
integer |
Идентификатор клиента |
Type |
string |
Тип клиента |
Name |
string |
Имя клиента |
Birthday |
datetime |
Дата рождения |
Description |
string |
Описание клиента |
string |
||
string |
||
Jabber |
string |
Jabber |
Payers |
object (Id, Name) |
Список плательщиков |
PersonType |
string |
Тип организации |
PreferTransport |
string |
Предпочтительный способ связи |
PromisingRate |
string |
Перспективность |
Responsibles |
object (Id, Name) |
Ответственные |
ResponsibleContractors |
object (Id, Name) |
Ответственные клиенты https://help.megaplan.ru/FAQCrm_071#a1d3708cb40952acfc105fb6a391ae43d |
Site |
string |
Сайт |
TimeCreated |
datetime |
Время создания |
TimeUpdated |
datetime |
Время обновления |
string |
Пример ответа в JSON-формате¶
{
"status":
{
"code":"ok",
"message":null
},
"params":
{
"FilterId":0,
"Limit":0,
"Offset":0,
"qs":""
},
"data":
{
"clients":[
{
"Id":1022073,
"Name":"Denisov Ivan",
"Birthday":"1980-01-01",
"Description":"",
"Email":"[email protected]",
"Facebook":"",
"Jabber":"",
"Payers":[{"Id":1020826,"Name":""}],
"PersonType":"company",
"PreferTransport":"",
"PromisingRate":"0",
"Responsibles":[{"Id":1000000,"Name":"Name"}],
"Site":"",
"TimeCreated":"2012-08-23 12:56:45",
"TimeUpdated":"2012-08-23 13:56:45",
"Twitter":"",
"Type":{"Id":1,"Name":"Клиент"}
}
]
}
}
Пример ответа в XML-формате¶
<?xml version="1.0" encoding="utf-8"?>
<response>
<status>
<code>ok</code>
<message></message>
</status>
<params>
<filter_id>0</filter_id>
<limit>0</limit>
<offset>0</offset>
<qs></qs>
</params>
<data>
<clients>
<item>
<id>1022073</id>
<name>Denisov Ivan</name>
<birthday>1980-01-01</birthday>
<description></description>
<email>[email protected]</email>
<facebook></facebook>
<jabber></jabber>
<players>
<id>1020826</id>
<name></name>
</players>
<person_type>company</person_type>
<prefer_transport></prefer_transport>
<promising_rate></promising_rate>
<responsibles>
<id>1020826</id>
<name></name>
</responsibles>
<site></site>
<time_created>2012-08-23 12:56:45</time_created>
<time_updated>2012-08-23 12:56:45</time_updated>
<twitter></twitter>
<type>
<id>1</id>
<name>Клиент</name>
</type>
</item>
</clients>
</data>
</response>
Блокировка¶
URI: /BumsCommonApiV01/UserAccount/block.api|xml
Входные параметры¶
Имя поля |
Тип |
Описание |
---|---|---|
ContractorId |
integer |
Идентификатор клиента, которого надо заблокировать |
Разблокировка¶
URI: /BumsCommonApiV01/UserAccount/unblock.api|xml
Входные параметры¶
Имя поля |
Тип |
Описание |
---|---|---|
ContractorId |
integer |
Идентификатор клиента, которого надо разблокировать |
Выходные данные¶
—