Описание
Массовое добавление или обновление профилей клиента
Если передать параметры объекта subscriptions status
и priority
со значением 0
, то значение учитывается.
Чтобы не изменять и не обновлять значения этих параметров – не передавайте их, либо установите значения в -1
.
В одном запросе не рекомендуется:
- передавать более 10 000 профилей;
- передавать более 10 Мб данных. Можно передавать больший объем в несколько потоков.
URL-адрес
Метод: POST
https://example.com/api/v1.1/profiles/import_batch
Параметры запроса
- При использовании JSON в теле запроса используйте заголовок Content-Type: application/json.
- При использовании XML в теле запроса используйте заголовок Content-Type: application/xml.
Параметр | Тип | Пример | Обязательный | Описание |
---|---|---|---|---|
token | string | "abcdefghijklmnqrstuvwxyz" | Да | API токен |
data | JSON array | [ { "_fname": "John", "_lname": "Doe", "subscriptions": [ { "channel": "email", "email_data": { "email": "john@example.com" }, "resource_id": 1 } ] } ] | Да | Данные о профилях |
db_id | int | 1 | Да | Идентификатор базы данных |
skip_invalid_subscriptions | bool | true | Нет | Пропустить невалидные подписки по умолчанию – false |
skip_triggers | bool | true | Нет | Пропустить запуск триггеров по умолчанию – false |
detect_geo | bool | true | Нет | Заполняет геоданные по IP |
Поиск профиля подписчика для обновления | ||||
matching | string | "email" | Нет, если поиск по email из профиля или подписок | Режим поиска подписчика. |
string | "john@example.com" | "matching":"email" - по профилю и подпискам "matching":"email_profile" - только по профилю | Email-адрес. Email должен присутствовать в элементе массива data. | |
phone | string | "+79000000000" | "matching":"phone" | Номер телефона. Телефон должен присутствовать в элементе массива data. |
field_name | string | "CRM_ID" | "matching":"custom" | Название кастомного поля профиля для поиска. Данное поле должно присутствовать в элементе массива data. |
resource_id | int | 24 | Нет | Идентификатор ресурса для |
Пример запроса JSON
{ "data": [ { "_fname": "John", "_lname": "Doe", "custom_id": "abcdefghijklmnqrstuvwxyz", "email": "jane@example.com", "subscriptions": [ { "channel": "email", "email_data": { "email": "john@example.com" }, "resource_id": 1 } ] } ], "db_id": 1, "matching": "custom", "field_name": "custom_id", "skip_triggers": true, "detect_geo": true, "token": "abcdefghijklmnqrstuvwxyz" }
Пример ответа JSON
{ "error": 0, "error_text": "Successful operation", "result": [ { "error": 0, "error_text": "Successful operation", "profile_id": "abcdefghijklmnqrstuvwxyz" } ] }
Пример запроса XML
<xml> <token>e94ce55afc3e4e07bd64afb2227f8a5c</token> <db_id>8</db_id> <matching>email</matching> <detect_geo>true</detect_geo> <format>xml</format> <skip_triggers>false</skip_triggers> <data> <lead> <email>example@example.org</email> <_fname>Leonid</_fname> <_lname>Spartov</_lname> <_bdate>1990-02-22T21:00:00Z</_bdate> <_sex>M</_sex> <_regip>94.231.119.122</_regip> <custom_string>value1</custom_string> <custom_integer>42</custom_integer> <custom_date>1990-02-22T21:00:00Z</custom_date> <custom_tags>tag1, tag2</custom_tags> <custom_boolean>true</custom_boolean> <custom_enum>2</custom_enum> <custom_ip>94.231.119.122</custom_ip> <subscriptions> <subscription> <resource_id>3</resource_id> <channel>email</channel> <email>example333@example.org</email> </subscription> <subscription> <resource_id>3</resource_id> <channel>phone</channel> <phone>712345678550</phone> </subscription> <subscription> <resource_id>3</resource_id> <channel>push</channel> <push_data> <subscription_id>ONEOF77THESE11DAYS11dd1</subscription_id> <provider>Firefox</provider> </push_data> </subscription> </subscriptions> </lead> <lead> <email>example2@example.org</email> <_fname>Chuck</_fname> <_lname>Norris</_lname> <_bdate>1985-02-22T21:00:00Z</_bdate> <_sex>M</_sex> <_regip>94.232.119.122</_regip> <custom_string>value2</custom_string> <custom_integer>42</custom_integer> <custom_date>1920-02-22T21:00:00Z</custom_date> <custom_tags>tag3, tag4</custom_tags> <custom_boolean>false</custom_boolean> <custom_enum>3</custom_enum> <custom_ip>94.234.119.122</custom_ip> <subscriptions> <subscription> <resource_id>3</resource_id> <channel>email</channel> <email>example276@example.org</email> </subscription> <subscription> <resource_id>3</resource_id> <channel>phone</channel> <phone>73214562290</phone> </subscription> <subscription> <resource_id>3</resource_id> <channel>push</channel> <push_data> <subscription_id>CU86TYOU5INTO34LITT25LEPIE55CES</subscription_id> <provider>Chrome</provider> </push_data> </subscription> </subscriptions> </lead> </data> </xml>
Пример ответа XML
<result> <error>0</error> <error_text></error_text> <result> <error>0</error> <error_text>Successful operation</error_text> <error_field></error_field> <profile_id>5dd3cfa5c484d021d6e5204f</profile_id> </result> <result> <error>0</error> <error_text>Successful operation</error_text> <error_field></error_field> <profile_id>5dd3cfd0c484d021d6e52050</profile_id> </result> </result>
Возвращаемые параметры
Параметр | Тип | Описание |
---|---|---|
error | int | Код ошибки, для всего запроса |
error_text | string | Текст ошибки, для всего запроса |
data | array of object | Результаты обновления по профилям |
data.error | int | Код ошибки, для профиля |
data.error_text | string | Текст ошибки, для для профиля |
data.profile_id | string | Идентификатор профиля |