Перейти к основному содержимому
Altcraft Docs LogoAltcraft Docs Logo
Для пользователяДля разработчикаДля администратора
Веб-сайтБаза знаний
Русский
  • Русский
  • English
v72
  • v74
  • v73
  • v72
Войти
  • API пользователя
  • Взаимодействие с API
  • Матчинг
  • Профили
  • Базы данных
  • Ресурсы
  • Сегменты
  • Статические сегменты
  • Стоп-списки
  • Шаблоны
  • Кампании
  • Сценарии (цепочки)
  • Промокоды
  • Цели
  • Пуши приложений
    • Обработка и добавление подписки
    • Добавить события с app push
  • Маркет
  • Отчеты и статистика
  • Сендеры
  • Объекты
  • Запросы к внешним базам данных
  • Прочее
  • Список API-методов
  • Импорт и настройка коллекции API-методов в Postman
  • SDK
Это документация к платформе Altcraft v72. Для этой версии документация больше не обновляется.
Информация по актуальной версии платформы (v74) доступна на этой странице.
  • Пуши приложений
  • Обработка и добавление подписки
Документация для версии v72

Обработка и добавление подписки

API-запрос используется для передачи push-токена из мобильного приложения в Altcraft Platform для формирования подписки у профиля.

С помощью этого запроса можно:

  • Добавить новые подписки.
  • Поменять статус уже существующих подписок.

Режим поиска профиля можно задавать с помощью поля matching в запросе (см. спецификацию ниже). Если профиль не будет найден, то будет создан новый.

При этом, если в ресурсе указано несколько баз данных, то все они будут обрабатываться по отдельности. Запрос к такому ресурсу будет создавать и обновлять профили сразу в нескольких базах. Пример такого случая можно посмотреть ниже.

Если в ресурсе нет ни одной базы, то будет возвращена ошибка.

URL-адрес​

Метод: POST

https://<cookiesaver_host>/push_subscribe

Параметры запроса​

ПараметрТипПримерОбязательныйОписание
idstring"abcdefghijklmnqrstuvwxyz"НетИдентификатор профиля
resource_tokenstring"abcdefghijklmnqrstuvwxyz"ДаУникальный идентификатор ресурса
db_ids[ ] int[ 2,3 ]НетФильтр баз данных ресурса.
matchingstring"custom"НетРежим поиска подписчика.
Если поле не передано или пустое, то будет использован поиск профиля по id или, если id тоже не передано, по пуш подпискам.

Для push_subscribe метода это поле может принимать только следующие значения:
  • custom
  • profile_id
subscriptionsJSON array
SubscriptionObject
[{
"provider" : "android-firebase",
"subscription_id" : "%subscriptionid%"
}]
ДаПодписки на push, которые нужно добавить в профиль или обновить.
"subscription_id" — уникален для каждого устройства.

SubscriptionObject​

ПараметрТипПримерОбязательныйОписание
providerstring"android-firebase"ДаИдентификатор провайдера в Altcraft MP.
Возможны следующие значения:
  • android-firebase
  • ios-firebase
  • ios-apns
  • yandex-Appmetrica-device-id-ios
  • yandex-Appmetrica-device-id-android
  • yandex-Appmetrica-ios-ifa
  • yandex-Appmetrica-google-aid
  • yandex-Appmetrica-android-token
  • yandex-Appmetrica-ios-token
  • android_huawei
  • ios_huawei

Каждому типу токена в AppMetrica соответствует свой id провайдера.
subscription_idstring"abcdef-ghijklmn-qrstuvwxyz"ДаТокен push подписки
unsubscribeboolfalseНетФлаг отписки. Отменяет подписку, если true.

Возвращаемые параметры​

ПараметрТипОписание
dataJSON array
DataObject
Информация о созданных подписках.

В массиве может быть несколько объектов в следующих случаях:
  • В запросе было передано несколько SubscriptionObject
  • В ресурсе Altcraft MP используется несколько баз данных. В этом случае для каждой базы из ресурса добавится новый профиль с подписками.
errorintКод ошибки
error_textstringТекст ошибки

DataObject​

ПараметрТипПримерОписание
subscription_idstring"abcdef-ghijklmn-qrstuvwxyz"Токен push подписки
unsubscribeboolfalseФлаг, была ли подписка добавлена или наоборот отменена
profile_idstring"5fb62e815ae47a4aa04dfadd"id профиля (переданный или вновь созданный), для которого добавлена подписка.
providerstring"android-firebase"Идентификатор провайдера в Altcraft MP.
Возможны следующие значения:
  • android-firebase
  • ios-firebase
  • ios-apns
  • yandex-Appmetrica-device-id-ios
  • yandex-Appmetrica-device-id-android
  • yandex-Appmetrica-ios-ifa
  • yandex-Appmetrica-google-aid
  • yandex-Appmetrica-android-token
  • yandex-Appmetrica-ios-token
  • android_huawei
  • ios_huawei

Каждому типу токена в AppMetrica соответствует свой id провайдера
db_idint2id базы данных в Altcraft MP, в которой находится профиль
resource_idint1id ресурса в Altcraft MP
subscription_hash_idstring"92807e89"Хеш подписки
statusstring"error"Статус операции
  • ok
  • error
descriptionstring"Duplicate push subscription"Описание ошибки

Примеры​

Запрос с матчингом по системному id профиля​

  • Запрос
  • Ответ
{
"id": "59db33d269d426509e9c4bf9",
"resource_token": "3LXP2FRcRxJ-7b14db88ec937f14",
"subscriptions": [
{
"provider": "android-firebase",
"subscription_id": "%subscriptionid%"
}
]
}
{
"data": [
{
"subscription_id": "%subscriptionid%",
"unsubscribe": false,
"profile_id": "59db33d269d426509e9c4bf9",
"provider": "android-firebase",
"db_id": 17,
"resource_id": 5,
"subscription_hash_id": "adsfdfdffdf",
"status": "ok",
"description": ""
}
],
"error": 0,
"error_text": "Successful operation"
}

Запрос с матчингом по дополнительному полю профиля.​

  • Запрос
  • Ответ
{
"resource_token": "3LXP2FRcRxJ-7b14db88ec937f14",
"matching": "custom",
"field_name": "CustomNumber1",
"field_value": 123,
"subscriptions": [
{
"provider": "android-firebase",
"subscription_id": "%subscriptionid%"
}
]
}
{
"data": [
{
"subscription_id": "%subscriptionid%",
"unsubscribe": false,
"profile_id": "59db33d269d426509e9c4bfс",
"provider": "android-firebase",
"db_id": 17,
"resource_id": 5,
"subscription_hash_id": "adsfdfdffdf",
"status": "ok",
"description": ""
}
],
"error": 0,
"error_text": "Successful operation"
}

Запрос с матчингом по пуш подпискам​

  • Запрос
  • Ответ
{
"resource_token": "3LXP2FRcRxJ-7b14db88ec937f14",
"subscriptions": [
{
"provider": "android-firebase",
"subscription_id": "%subscriptionid%"
}
]
}
{
"data": [
{
"subscription_id": "%subscriptionid%",
"unsubscribe": false,
"profile_id": "59db33d269d426509e9c4bfa",
"provider": "android-firebase",
"db_id": 17,
"resource_id": 5,
"subscription_hash_id": "adsfdfdffdf",
"status": "ok",
"description": ""
}
],
"error": 0,
"error_text": "Successful operation"
}

Запрос к ресурсу с несколькими базами данных​

  • Запрос
  • Ответ
{
"resource_token": "3LXP2FRcRxJ-7b14db88ec937f14",
"matching": "custom",
"field_name": "CustomNumber1",
"field_value": 12345,
"subscriptions": [
{
"provider": "android-firebase",
"subscription_id": "%subscriptionid%"
}
]
}
{
"error": 200,
"error_text": "Successful operation",
"data": [
{
"db_id": 34,
"description": "",
"profile_id": "6156ed18eb7fec10a206e916",
"provider": "android-firebase",
"resource_id": 22,
"status": "ok",
"subscription_hash_id": "340ca49c",
"subscription_id": "%subscriptionid%",
"unsubscribe": false
},
{
"db_id": 2,
"description": "matching error: unknown field",
"resource_id": 22,
"status": "error"
}
]
}

Запрос с матчингом по дополнительному полю профиля в определенной базе​

  • Запрос
  • Ответ
{
"resource_token": "3LXP2FRcRxJ-7b14db88ec937f14",
"db_ids": [1],
"matching": "custom",
"field_name": "CustomNumber1",
"field_value": 123,
"subscriptions": [
{
"provider": "android-firebase",
"subscription_id": "%subscriptionid%"
}
]
}
{
"error": 0,
"error_text": "Successful operation",
"data": [
{
"db_id": 1,
"description": "",
"profile_id": "637f1a284fda7c5c08be62f",
"provider": "android-firebase",
"resource_id": 31,
"status": "ok",
"subscription_hash_id": "f8af057de",
"subscription_id": "%subscriptionid%",
"unsubscribe": false
}
]
}

Запрос не обновил и не добавил ни одной подписки профиля​

  • Запрос
  • Ответ
{
"resource_token": "3LXP2FRcRxJ-7b14db88ec937f14",
"matching": "custom",
"field_name": "CustomNumber1",
"field_value": 12345,
"subscriptions": [
{
"provider": "android-firebase",
"subscription_id": "%subscriptionid%"
}
]
}
{
"error": 200,
"error_text": "Successful operation",
"data": [
{
"db_id": 34,
"description": "",
"profile_id": "6156ed18eb7fec10a206e916",
"resource_id": 22,
"status": "ok"
}
]
}
Последнее обновление 2 окт. 2024 г.
Предыдущая страница
Пуши приложений
Следующая страница
Добавить события с app push
  • URL-адрес
  • Параметры запроса
    • SubscriptionObject
  • Возвращаемые параметры
    • DataObject
  • Примеры
    • Запрос с матчингом по системному id профиля
    • Запрос с матчингом по дополнительному полю профиля.
    • Запрос с матчингом по пуш подпискам
    • Запрос к ресурсу с несколькими базами данных
    • Запрос с матчингом по дополнительному полю профиля в определенной базе
    • Запрос не обновил и не добавил ни одной подписки профиля
© 2015 - 2025 Altcraft. Все права защищены.