---
metadata:
  - name: generator
    content: Diplodoc Platform v5.61.1
alternate:
  - https://appmetrica.yandex.com.tr/docs/en/mobile-api/post/post-product-flow.md
  - https://appmetrica.yandex.com.tr/docs/ru/mobile-api/post/post-product-flow.md
  - href: https://appmetrica.yandex.com.tr/docs/ru/mobile-api/post/post-product-flow.md
    type: text/markdown
    title: Markdown version
  - href: https://appmetrica.yandex.com.tr/docs/ru/llms.txt
    rel: describedby
---
> **Documentation Index:** Fetch the complete configuration index at https://appmetrica.yandex.com.tr/docs/ru/llms.txt

# Загрузка офферных событий

Передает данные об [офферных событиях](https://appmetrica.yandex.com.tr/docs/ru/data-collection/offers.md) (Product Flow).

Пример использования: вы можете передавать через Post API серверные (S2S) результаты продуктовых сценариев. Например, финальное решение банка или страховой компании после статуса `pending` в приложении.

Примеры сценариев см. в разделе [Примеры продуктовых сценариев](https://appmetrica.yandex.com.tr/docs/ru/data-collection/product-flow-scenarios.md).

Свойства событий можно передавать в параметрах запроса или в теле. При передаче данных в теле к URL запроса необходимо добавить `.csv`. Подробнее в разделе [Пример запроса](#sample).

Для привязки события к пользователю в запросе используйте одно из следующих полей:

- `profile_id`
- `appmetrica_device_id`

{% note alert %}

Post API содержит ограничения на загрузку данных. Подробнее в разделе [Ограничения](https://appmetrica.yandex.com.tr/docs/ru/mobile-api/post/restrictions.md).

{% endnote %}

## Формат запроса {#request}

```
POST https://api.appmetrica.yandex.com/logs/v1/import/product_flow
  ? post_api_key=<string>
  & application_id=<int>
  & profile_id=<string>
  & appmetrica_device_id=<int>
  & event_timestamp=<int>
  & product_flow_type=<string>
  & [product_offer_id=<string>]
  & [product_id=<string>]
  & [offer_type=<string>]
  & [benefit_type=<string>]
  & [referrer_type=<string>]
  & [referrer_id=<string>]
  & [referrer_screen=<string>]
  & [step_type=<string>]
  & [step_option=<string>]
  & [result_status=<string>]
  & [price_unit=<string>]
  & [price_value=<decimal>]
  & [payload=<string>]
  & [session_type=<string>]
  & [ios_ifa=<string>]
  & [ios_ifv=<string>]
  & [google_aid=<string>]
  & [windows_aid=<string>]
  & [os_name=<string>]
  & [os_version=<string>]
  & [device_manufacturer=<string>]
  & [device_model=<string>]
  & [device_type=<string>]
  & [device_locale=<string>]
  & [app_version_name=<string>]
  & [app_package_name=<string>]
  & [connection_type=<string>]
  & [operator_name=<string>]
  & [mcc=<int>]
  & [mnc=<int>]
  & [device_ipv6=<string>]
```

#|
|| `post_api_key`* | Токен для загрузки данных. Его можно получить в разделе **Настройки** вашего приложения. ||
|| `application_id`* | Уникальный числовой идентификатор приложения в AppMetrica. ||
|| `profile_id`* | Идентификатор профиля пользователя. Post API позволяет загружать данные только для идентификаторов, которые предварительно были отправлены через SDK.

{% note alert %}

Не передавайте значение вместе с параметром `appmetrica_device_id`. Сервер принимает только один из параметров.

{% endnote %}

||
|| `appmetrica_device_id`* | Хеш от уникального идентификатора устройства, который устанавливает AppMetrica. Post API позволяет загружать данные только для идентификаторов, которые предварительно были отправлены через SDK.

{% note alert %}

Не передавайте значение вместе с параметром `profile_id`. Сервер принимает только один из параметров.

{% endnote %}

||
|| `event_timestamp`* | Время события в формате [UNIX-time](https://en.wikipedia.org/wiki/Unix_time).

Post API позволяет загрузить только те события, у которых разница между датой совершения события (`event_timestamp`) и датой загрузки не больше 14 дней. Ожидается значение в секундах.
 ||
|| `product_flow_type`* | Тип офферного события. Возможные значения:

- `offer_shown` — пользователь увидел оффер;
- `flow_start` — пользователь начал оформление;
- `step` — промежуточный шаг оформления;
- `flow_result` — итоговый результат сценария.

||
|| `product_offer_id` | Идентификатор оффера — конкретного варианта предложения. Например, идентификатор промокампании или баннера. Если сценарий начался без оффера, параметр можно не передавать. ||
|| `product_id` | Идентификатор продукта в приложении. Например, кредит, подписка или бронирование. Связывает события одного сценария между собой. ||
|| `offer_type` | Категория оффера. Например, `financial_product`, `subscription`. Обычно передается вместе с `product_flow_type=offer_shown`. ||
|| `benefit_type` | Тип выгоды для пользователя. Например, `discount_percentage`, `cashback`. Обычно передается вместе с `product_flow_type=offer_shown`. ||
|| `referrer_type` | Тип источника перехода к офферу. Например, `banner`, `push`, `deeplink`. Обычно передается вместе с `product_flow_type=offer_shown`. ||
|| `referrer_id` | Идентификатор источника перехода. Например, идентификатор баннера или push-кампании. ||
|| `referrer_screen` | Экран, на котором пользователь увидел оффер или начал оформление. Например, `main`, `catalog`. ||
|| `step_type` | Название промежуточного шага оформления. Например, `documents`, `scoring`. Передается вместе с `product_flow_type=step`. ||
|| `step_option` | Детализация шага. Например, `passport_upload`, `automatic_scoring`. Передается вместе с `product_flow_type=step`. ||
|| `result_status` | Итог сценария. Передается вместе с `product_flow_type=flow_result`. Возможные значения:

- `success` — успешное завершение;
- `declined` — отклонено третьей стороной;
- `pending` — ожидает решения;
- `cancelled` — пользователь отменил;
- `expired` — оффер или сессия истекли;
- `fail` — техническая ошибка.

Подробнее о статусах см. в разделе [Примеры продуктовых сценариев](https://appmetrica.yandex.com.tr/docs/ru/data-collection/product-flow-scenarios.md).

||
|| `price_unit` | Валюта цены оффера или итоговой суммы сценария. [Список доступных валют](https://appmetrica.yandex.com.tr/docs/ru/data-collection/currency-codes.md). Передается вместе с `price_value`, если в сценарии есть сумма. Например, стоимость услуги после визита. ||
|| `price_value` | Сумма в валюте `price_unit`. Передается вместе с `price_unit`. ||
|| `payload` | Дополнительные параметры сценария в формате `{"key":"value"}`. Например, `application_id`, `booking_id`, `campaign_id`. ||
|| `session_type` | Тип сессии. Возможные значения:

- `foreground` — в отчете [События](https://appmetrica.yandex.com.tr/docs/ru/mobile-reports/events-report.md) будет увеличиваться метрика **Пользователи**.
- `background` — в отчете [События](https://appmetrica.yandex.com.tr/docs/ru/mobile-reports/events-report.md) будет увеличиваться метрика **Устройства**. Такие события не будут попадать в отчет с группировкой по пользователям и в карточку профиля.

Значение по умолчанию: `background`. ||
|| `ios_ifa` | IFA устройства в формате, в котором получен от устройства. ||
|| `ios_ifv` | IFV для приложения в формате, в котором получен от устройства. ||
|| `google_aid` | Google AID устройства в формате, в котором получен от устройства. ||
|| `windows_aid` | Windows AID устройства в формате, в котором получен от устройства. ||
|| `os_name` | Операционная система на устройстве пользователя: `ios` \| `android` \| `windows`.
 ||
|| `os_version` | Версия операционной системы на устройстве пользователя. ||
|| `device_manufacturer` | Производитель устройства, определяется сервисом AppMetrica (например, Apple или Samsung). ||
|| `device_model` | Модель устройства, определяется сервисом AppMetrica (например, Galaxy S6). ||
|| `device_type` | Тип устройства, определяется сервисом AppMetrica. Возможные значения: `phone` \| `tablet` \| `unknown`.
 ||
|| `device_locale` | Язык интерфейса устройства. ||
|| `app_version_name` | Версия приложения в виде, как указана разработчиком. ||
|| `app_package_name` | Имя пакета для Android или Bundle ID для iOS (например, ru.yandex.metro). ||
|| `connection_type` | Тип подключения устройства. Возможные значения: `wifi` \| `cell` \| `unknown`.
 ||
|| `operator_name` | Имя оператора сотовой связи. ||
|| `mcc` | Мобильный код страны. ||
|| `mnc` | Код мобильной сети. ||
|| `device_ipv6` | IP-адрес в момент совершения события в формате [IPv6](https://en.wikipedia.org/wiki/IPv6). Например, 2a02:6b8::40c:6676:baff:fea6:53d8, ::ffff:5.255.232.147.
 ||
|#

## Коды ответа {#response-codes}

| Код | Описание |
| ----- | ----- |
| 200 | Данные успешно загружены. |
| 403 | Запрос не содержит заголовка авторизации, либо указан неверный токен. |
| 400 | Запрос не содержит одного или нескольких обязательных параметров. |

## Пример запроса {#sample}

{% list tabs %}

- Передача данных в теле запроса

  ```http translate=no
  POST /logs/v1/import/product_flow.csv?post_api_key=0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ012 HTTP/1.1
  Host: api.appmetrica.yandex.com
  Connection: close

  application_id,appmetrica_device_id,event_timestamp,product_flow_type,product_offer_id,product_id,result_status,price_unit,price_value,payload,session_type
  1234567890,1757762239877245682,1689943892,flow_result,credit_q1,personal_loan,success,RUB,123.45,"{""request_id"":""loan-42""}",background
  ```

- Передача данных в параметрах запроса

  ```http translate=no
  POST /logs/v1/import/product_flow?post_api_key=0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ012&application_id=1234567890&appmetrica_device_id=1757762239877245682&event_timestamp=1689943892&product_flow_type=flow_result&product_offer_id=credit_q1&product_id=personal_loan&result_status=success&price_unit=RUB&price_value=123.45&payload="{""request_id"":""loan-42""}"&session_type=background HTTP/1.1
  Host: api.appmetrica.yandex.com
  Content-Length: 0
  Connection: close
  ```

{% endlist %}

## Другие методы Post API {#other-methods}

- [Загрузка событий](https://appmetrica.yandex.com.tr/docs/ru/mobile-api/post/post-import-events.md)
- [Загрузка событий In-app Revenue](https://appmetrica.yandex.com.tr/docs/ru/mobile-api/post/post-revenue.md)
- [Загрузка событий Ad Revenue](https://appmetrica.yandex.com.tr/docs/ru/mobile-api/post/post-adrevenue.md)
- [Загрузка событий Ecommerce](https://appmetrica.yandex.com.tr/docs/ru/mobile-api/post/post-ecommerce.md)
- [Атрибуты профиля](https://appmetrica.yandex.com.tr/docs/ru/mobile-api/post/post-profile-attributes.md)

<!-- source: ru/_includes/feedback-button-2.md -->
Если вы не нашли ответ на свой вопрос, то вы можете задать его через форму обратной связи. Пожалуйста, опишите возникшую проблему как можно подробнее. Если возможно, приложите скриншот.

<a href="../../troubleshooting/feedback-new">
  <span class="button">Написать в службу поддержки</span>
</a>

<a href="../../troubleshooting/feedback-docs">
  <span class="button">Предложить улучшение для документации</span>
</a>
<!-- endsource: ru/_includes/feedback-button-2.md -->
