Функциональное обновление полей подписки
При использовании запросов для обновления полей подписки профиля на ресурс можно передавать дополнительные инструкции прямо в поле.
Инструкция имеет определенную структуру:
{
"action": "set",
"value": "x",
}
Поле action
может принимать одно из следущих значенией:
action | Назначение | Тип поля | value |
---|---|---|---|
set | Работает так же, как и простое обновление поля, устанавливает значение | все типы: string, int, float, boolean | Зависит от типа поля |
delete | Удаляет поле из структуры профиля, только для Custom полей | все типы: string, int, float, boolean | Нет |
incr | Увеличивает значение поля | int, float | Число |
подсказка
Описание полей подписки на ресурс вы найдёте по этой ссылке.
Пример запроса /v1.1/subscriptions/set для обновления системных полей подписки
- JSON
- XML
{
"token": "abcdefghijklmnqrstuvwxyz",
"channel": "email",
"db_id": 1,
"email": "example@example.com",
"profile_id": "6527e4e2097c54377ee0e41d",
"resource_id": 1,
"status": "subscribe",
"cats": [
"category_1",
"category_2"
],
"custom_fields": {
"_ad_id": {
"action":"set",
"value":"qwerty123"
},
"_ad_track":{
"action":"set",
"value":true
},
"_app_id": {
"action":"delete"
},
"_app_iid": {
"action":"set",
"value":"example iid"
},
"_app_ver": {
"action":"set",
"value": "v1.2.3.4"
},
"_browser_name":{
"action":"set",
"value":"Chrome"
},
"_browser_ver": {
"action":"set",
"value":"4.5.6.7.8"
},
"_device_model": {
"action":"set",
"value":"Device model"
},
"_device_name":{
"action":"set",
"value":"Device name"
},
"_device_type": {
"action":"set",
"value":"Mobile"
},
"_os": {
"action":"set",
"value":"Android"
},
"_os_language": {
"action":"set",
"value":"ru"
},
"_os_tz": {
"action":"set",
"value":"Europe/Moscow"
},
"_os_ver": {
"action":"set",
"value": "v1.2.3.4"
}
}
}
<xml>
<token>abcdefghijklmnqrstuvwxyz</token>
<channel>email</channel>
<db_id>1</db_id>
<email>example@example.com</email>
<profile_id>66102b984a5d12bd6cc09132</profile_id>
<resource_id>29</resource_id>
<status>subscribe</status>
<cats>category_1</cats>
<cats>category_2</cats>
<custom_fields>
<_ad_id>
<action>set</action>
<value>qwerty123</value>
</_ad_id>
<_ad_track>
<action>set</action>
<value>true</value>
</_ad_track>
<_app_id>
<action>delete</action>
</_app_id>
<_app_iid>
<action>set</action>
<value>example iid</value>
</_app_iid>
<_app_ver>
<action>set</action>
<value>v1.2.3.4</value>
</_app_ver>
<_browser_name>
<action>set</action>
<value>Chrome</value>
</_browser_name>
<_browser_ver>
<action>set</action>
<value>4.5.6.7.8</value>
</_browser_ver>
<_device_model>
<action>set</action>
<value>Device model</value>
</_device_model>
<_device_name>
<action>set</action>
<value>Device name</value>
</_device_name>
<_device_type>
<action>set</action>
<value>Mobile</value>
</_device_type>
<_os>
<action>set</action>
<value>Android</value>
</_os>
<_os_language>
<action>set</action>
<value>ru</value>
</_os_language>
<_os_tz>
<action>set</action>
<value>Europe/Moscow</value>
</_os_tz>
<_os_ver>
<action>set</action>
<value>v1.2.3.4</value>
</_os_ver>
</custom_fields>
</xml>