Объекты Web API
Объект Offer
Этот объект содержит сведения о применённом предложении.
{
"category": "no_offer",
"type": "free_trial",
"id": "Offer Name"
}
Свойства
| Название | Тип | Обязательное | Описание |
|---|---|---|---|
| category | String | Да | Категория применённого предложения. Возможные значения: introductory, promotional, winback. |
| type | String | Да | Тип применённого предложения. Возможные значения: free_trial, pay_as_you_go, pay_up_front. |
| Id | String | Да | Название предложения применённого оффера, указанное в разделе Products дашборда Adapty. |
Объект Paywall
Объект, содержащий информацию о пейволе.
Свойства
| Название | Тип | Обязательное | Описание |
|---|---|---|---|
| placement_id | String | :heavy_plus_sign: | ID плейсмента, в котором отображается этот пейвол. Задаётся при создании плейсмента в дашборде Adapty. |
| variation_id | String(uuid) | :heavy_plus_sign: | ID варианта, используемый для отслеживания покупок, связанных с этим конкретным пейволом. |
| paywall_id | String(uuid) | :heavy_plus_sign: | Уникальный идентификатор пейвола. |
| ab_test_name | String | :heavy_minus_sign: | Название родительского A/B-теста. |
| paywall_name | String | :heavy_plus_sign: | Название пейвола, заданное в дашборде Adapty. |
| products | Array of objects | :heavy_plus_sign: | Массив объектов Products, содержащих информацию о продуктах пейвола. |
| remote_config | JSON | :heavy_minus_sign: | Объект RemoteConfig в формате JSON, содержащий полный Remote Config пейвола. |
Пример
{
"placement_id": "PaywallPlacementId",
"variation_id": "00000000-0000-0000-0000-000000000000",
"paywall_id": "InternalPaywallId",
"ab_test_name": "Existing Offer | Improved Offer",
"paywall_name": "Used Paywall",
"products": [
{
"title": "Monthly Subscription w/o Trial",
"is_consumable": true,
"adapty_product_id": "InternalProductId",
"vendor_product_id": "onemonth_no_trial",
"introductory_offer_eligibility": false,
"promotional_offer_eligibility": true,
"base_plan_id": "B1",
"offer": {
"category": "promotional",
"type": "pay_up_front",
"id": "StoreOfferId"
}
}
],
"remote_config": {
"lang": "en",
"data": "RemoteConfigObject"
}
}
Объект Products
Этот объект содержит сведения о продукте в Adapty.
Свойства
| Название | Тип | Обязательное | Описание |
|---|---|---|---|
| title | String | Нет | Название продукта из раздела Products дашборда Adapty. |
| is_consumable | Boolean | Да | Указывает, является ли продукт расходуемой покупкой. |
| adapty_product_id | UUID | Нет | Внутренний идентификатор продукта в Adapty. |
| vendor_product_id | String | Да | Идентификатор продукта в сторах. |
| introductory_offer_eligibility | Boolean | Нет | Указывает, имеет ли пользователь право на iOS introductory offer. |
| promotional_offer_eligibility | Boolean | Нет | Указывает, имеет ли пользователь право на promotional offer. |
| base_plan_id | String | Нет | Идентификатор базового плана для Google Play или идентификатор цены для Stripe. |
| offer | JSON | Нет | Объект Offer в формате JSON. |
Пример
{
"title": "Monthly Subscription w/o Trial",
"is_consumable": true,
"adapty_product_id": "InternalProductId",
"vendor_product_id": "onemonth_no_trial",
"introductory_offer_eligibility": false,
"promotional_offer_eligibility": true,
"base_plan_id": "B1",
"offer": {
"category": "promotional",
"type": "pay_up_front",
"id": "StoreOfferId"
}
}
Объект RemoteConfig
Этот объект содержит информацию о Remote Config для пейвола.
{
"lang": "en",
"data": "{\"bodyItems\":[{\"spacerValue\":{\"height\":20,\"style\":{\"type\":\"emptySpace\"}},\"type\":\"spacer\"},{\"mediaValue\":{\"ratio\":\"1:1\",\"source\":{\"fileType\":\"image\",\"reference\":{\"en\":\"bundle/images/new1.png\"}},\"widthStyle\":\"full\"},\"type\":\"media\"},{\"titleValue\":{\"alignment\":\"center\",\"subtitleConfig\":{\"fontSize\":17,\"text\":\"\",\"color\":\"#FFFFFF\"},\"titleConfig\":{\"fontSize\":22,\"text\":\"\"}},\"type\":\"title\"},{\"productListValue\":{\"items\":[{\"productId\":\"exampleapp.oneWeek\",\"promoText\":\"paywall.promo-1.title\",\"backgroundColor\":\"#0B867D\"},{\"discountRate\":80,\"productId\":\"exampleapp.oneYear\",\"promoText\":\"paywall.promo-2.title\",\"backgroundColor\":\"#0B867D\"}],\"layout\":\"vertical\"},\"type\":\"productList\"}],\"defaultProductId\":\"exampleapp.oneWeek\",\"footer\":{\"singleProductValue\":{\"customTitles\":{\"exampleapp.oneWeek\":\"Subscribe\",\"exampleapp.oneYear\":\"Subscribe\"},\"productId\":\"exampleapp.oneWeek\"},\"type\":\"singleProduct\"},\"id\":\"exampleapp\",\"isFullScreen\":true,\"settings\":{\"backgroundColor\":\"#000000\",\"closeButtonAlignment\":\"left\",\"closeButtonIconStyle\":\"light\",\"colorScheme\":{\"accent\":\"#007566\",\"background\":\"#001B0D\",\"label\":\"#FFFFFF\",\"primary\":\"#10C6B6\",\"secondaryLabel\":\"#FFFFFF\",\"seperator\":\"#FFFFFF\"},\"isFullScreen\":true,\"shouldShowAlertOnClose\":false,\"showCloseButtonAfter\":1,\"triggerPurchaseWithAlert\":false,\"triggerPurchaseWithProductChange\":false}}"
}
Свойства
| Название | Тип | Обязательное | Описание |
|---|---|---|---|
| lang | String | :heavy_plus_sign: | Код локали для локализации пейвола. Использует теги языка и региона, разделённые дефисом (-). Примеры: Подробнее см. в разделе Локализации и коды локалей. |
| data | String | :heavy_plus_sign: | Сериализованная JSON-строка, представляющая Remote Config вашего пейвола. Найти её можно на вкладке Remote Config конкретного пейвола в дашборде Adapty. |