Массовое обновление профилей
Описание
Массовое обновление данных профилей.
Если передать параметры объекта subscriptions status
и priority
со значением 0
, то значение учитывается.
Чтобы не изменять и не обновлять значения этих параметров – не передавайте их, либо установите значения в -1
.
В одном запросе не рекомендуется:
- передавать более 10 000 профилей;
- передавать более 10 Мб данных. Можно передавать больший объем в несколько потоков.
URL-адрес
Метод: POST
https://example.com/api/v1.1/profiles/update_batch
Параметры запроса
Параметр | Тип | Пример | Обязательный | Описание |
---|---|---|---|---|
token | string | "abcdefghijklmnqrstuvwxyz" | Да | API токен |
data | JSON array |
| Да | Данные о профилях |
db_id | int | 1 | Да | Идентификатор базы данных |
skip_invalid_subscriptions | bool | true | Нет | Пропустить невалидные подписки (по умолчанию – false) |
Поиск профиля подписчика для обновления | ||||
matching | string | "email" – поиск по email из профиля или подписок "email_profile" – по email из профиля "email_sub" – по email из подписок "phone" – по телефону из профиля или подписок "phone_sub" – по телефону из подписок "profile_id" – по идентификатору профиля (только при обновлении!) "push_sub" – по пуш подписке "custom" – по кастомному полю "custom_sub" – по подписке на кастомный канал "email_phone" – по email или телефону из профиля "email_phone_sub" – по email или телефону из подписок | Нет, если поиск по email из профиля или подписок | Режим поиска подписчика. По умолчанию - email. Для каждого типа матчинга в теле запроса необходимо передавать определенные поля. Подробнее об этих полях можно узнать здесь. Обратите внимание, что при режиме "email" или "phone" поиск происходит одновременно в контактных данных и в подписках. |
string | "john@example.com" | "matching":"email" - по профилю и подпискам "matching":"email_profile" - только по профилю | Email-адрес. Должен быть передан в элементе массива data. | |
phone | string | "+79000000000" | "matching":"phone" | Номер телефона |
profile_id | string | "abcdefghijklmnqrstuvwxyz" | "matching":"profile_id" | Идентификатор профиля |
field_name | string | "CRM_ID" | "matching":"custom" | Название кастомного поля профиля для поиска. Данное поле должно присутствовать в элементе массива data. |
resource_id | int | 24 | Нет | Идентификатор ресурса для поиска по email и phone |
Массив subscriptions
Массив subscriptions
хранит данные о подписках профиля на ресурсы. Один объект — одна подписка.
Параметры | Тип | Пример | Описание |
---|---|---|---|
resource_id | int | 1 | Идентификатор ресурса |
status | string | "subscribed" | Статус подписки. |
priority | int | 1 | Приоритет подписки |
custom_fields | object |
| Стандартные и дополнительные поля подписки. Получить информацию о доступных полях подписки в ресурсе можно с помощью метода /v1.1/resources/fields_get |
cats | array |
| Категории ресурса, на которые подписать профиль. |
Email канал | |||
channel | string | "email" | Тип канала |
string | "john@example.com" | Email-адрес | |
SMS канал | |||
channel | string | "sms" | Тип канала |
phone | string | "+79000000000" | Номер телефона |
Push канал | |||
channel | string | "push" | Тип канала |
provider | string | "Firefox" | Тип прова йдера |
subscription_id | string | "abcdefghijklmnqrstuvwxyz" | Идентификатор подписки |
Telegram Bot канал | |||
channel | string | "telegram_bot" | Тип канала |
cc_data | object |
| id чата в Telegram-бот |
WhatsApp канал | |||
channel | string | "whatsapp" | Тип канала |
cc_data | object |
| Телефон профиля в WhatsApp |
Viber канал | |||
channel | string | "viber" | Тип канала |
cc_data | object |
| Телефон профиля в Viber |
Пример запроса
{
"data": [
{
"_fname": "John",
"_lname": "Doe",
"CustomID": 1,
"email": "jane@example.com",
"subscriptions": [
{
"channel": "email",
"email_data": {
"email": "john@example.com"
},
"resource_id": 1,
"custom_fields": {
"_browser_name": "Firefox",
"_device_type": "web",
"custom_field_1": "test value"
},
"cats": ["category_1", "category_2"]
}
]
},
{
"_fname": "Jay",
"CustomID": 2,
"email": "jay@example.com"
}
],
"db_id": 1,
"matching": "custom",
"field_name": "CustomID",
"skip_triggers": true,
"token": "abcdefghijklmnqrstuvwxyz"
}
Пример ответа
{
"error": 0,
"error_text": "Successful operation",
"result": [
{
"error": 0,
"error_text": "Successful operation",
"profile_id": "abcdefghijklmnqrstuvwxyz"
},
{
"error": 0,
"error_text": "Successful operation",
"profile_id": "abcdefghijklmnqrstuvwzzz"
}
]
}
Возвращаемые параметры
Параметр | Тип | Описание |
---|---|---|
error | int | Код ошибки, для всего запроса |
error_text | string | Текст ошибки, для всего запроса |
data | array of object | Результаты обновления по профилям |
data.error | int | Код ошибки, для профиля |
data.error_text | string | Текст ошибки, для для профиля |
data.profile_id | string | Идентификатор профиля |