Для обращения к портальному и CRM api, посылаются JSON методом POST:
[
{
"class": "class_name",
"method": "method_name",
"param": "some_param",
"sid": "92bdf303e77ffcbdd8b26ff6cc6d35a1471b1d706692d6a707cf15b997dd7724"
}
]
То есть это массив объектов, каждый из которых вызывает класс и вызываемый метод, которые существуют внутри api, а также параметр ("param") с необходимыми данными для вызываемого метода. Параметр может быть как примитивным значением, так и объектом. Ключ «sid» передает id пользовательской сессии (без него никаких данных система не отдаст). В случае успешного запроса мы получим ответ:
[
{
"code": 200,
"response": "response",
"time": "0.0365"
},
{
"code": 200,
"response": {
"sid": "92bdf303e77ffcbdd8b26ff6cc6d35a1471b1d706692d6a707cf15b997dd7724"
}
}
]
Для начала работы с контактами, необходимо получить список полей, с которыми работают объекты контакта! Для этого получим список:
[
{
"class": "contact",
"method": "get_proto",
"param": {},
"sid": "92bdf303e77ffcbdd8b26ff6cc6d35a1471b1d706692d6a707cf15b997dd7724"
}
]
Ответ:
[
{
"code": 200,
"response": [
{
"field_id": "1",
"field_name": "post",
"field_view_name": "Должность",
"field_type_id": "2",
"field_sub_type_id": null,
"field_min_count": "1",
"field_max_count": "0",
"field_icon_name": null,
"field_priority": "-54"
},
{
"field_id": "2",
"field_name": "organisation",
"field_view_name": "Организация",
"field_type_id": "2",
"field_sub_type_id": null,
"field_min_count": "0",
"field_max_count": "1",
"field_icon_name": "phone-rotary",
"field_priority": "-91"
},
{
"field_id": "3",
"field_name": "phone_number",
"field_view_name": "Телефон",
"field_type_id": "13",
"field_sub_type_id": null,
"field_min_count": "0",
"field_max_count": "0",
"field_icon_name": "phone-rotary",
"field_priority": "107"
}
],
"time": "1.94"
},
{
"code": 200,
"response": {
"sid": "92bdf303e77ffcbdd8b26ff6cc6d35a1471b1d706692d6a707cf15b997dd7724"
}
}
]
[
{
"class": "contact",
"method": "get_list",
"param": {
"field_ids": [
"2",
"3",
"8",
"25"
],
"start": 0,
"limit": 15,
"deleted": null,
"field_filter_ids": []
},
"sid": "92bdf303e77ffcbdd8b26ff6cc6d35a1471b1d706692d6a707cf15b997dd7724"
}
]
"field_ids" - значение полей, у contact
"start" - позиция, с которой выдает список
"limit" - кол-во
"deleted" - ключ по которому выдаются удаленны/активные/все contact
null - только активных