Amplitude
Renta отправляет строки из вашего хранилища данных в Amplitude в виде одного из двух объектов: событий и профилей пользователей.
Строка события содержит User ID человека, имя события и любые колонки, которые вы направили в event properties или user properties. Строка профиля содержит User ID и свойства, которые попадут в профиль этого человека в Amplitude.
Аутентификация
Для аутентификации в Amplitude Renta использует project API key. Ключ работает только с одним проектом, поэтому для каждого проекта Amplitude создайте отдельное назначение.
Для подключения понадобятся два параметра из Amplitude:
- В Amplitude откройте Settings > Projects, выберите проект и перейдите на вкладку API Keys. Скопируйте API key.
- Определите регион данных проекта: US или EU. Проекты Amplitude в этих регионах работают как отдельные системы, и ключ принадлежит только одному из них.
Ключ US-проекта не работает с EU-проектом, а о таком несовпадении Amplitude сообщает тем же текстом, что и о неверном ключе. Если Renta пишет, что ключ отклонён, сначала проверьте регион, а не ключ.
Renta проверяет ключ, когда вы сохраняете назначение. Проверка ничего не записывает, поэтому подключение назначения не оставляет следов в вашем проекте Amplitude.
Подключение назначения Amplitude
Выполните следующие шаги, чтобы добавить Amplitude как Reverse ETL назначение в Renta.
- Перейдите в раздел Connections > Catalog в левой панели и откройте вкладку Destinations.
- Откройте категорию Analytics и нажмите на карточку Amplitude.

Заполните учётные данные подключения:
- API key.
Вставьте project API key, скопированный из Amplitude. - Data region.
Выберите US или EU, в зависимости от того, какому проекту принадлежит ключ.

Завершите настройку:
- Destination name.
Укажите имя назначения. Оно используется только в интерфейсе Renta.
Нажмите Save для завершения. Ключ, который Amplitude отклоняет, не сохраняется.

Новое назначение появится в списке Destinations со статусом Active. Теперь его можно использовать в Reverse ETL пайплайнах.

Создание пайплайна
После подключения назначения создайте пайплайн, чтобы отправлять модель данных в Amplitude.
Reverse ETL пайплайн читает данные из модели данных: сохранённого SQL-запроса в разделе Data models, который определяет, какие данные из хранилища синхронизировать. Создайте модель данных до настройки пайплайна.
Создание пайплайна Amplitude
Свяжите хранилище данных с Amplitude и настройте пайплайн.
В левой панели нажмите New pipeline. На шаге Source переключите тумблер в положение Reverse ETL и выберите ваше хранилище данных, например Google BigQuery.

Выберите подключение к хранилищу, в котором лежат ваши модели данных, и нажмите Next step.

На шаге Destination выберите Amplitude в списке Already connected и нажмите Next step.

Выберите подключение Amplitude, созданное ранее, и нажмите Next step. На каждой карточке указаны регион и последние четыре символа API-ключа: по ним вы отличите два проекта Amplitude друг от друга.

Настройка пайплайна
На финальном шаге выберите, что Renta будет писать в Amplitude и какие колонки это заполнят.
Что Renta отправляет
Выберите объект Amplitude и модель данных под него.

- What would you like Renta to send to Amplitude.
Выберите, какие данные будет писать этот пайплайн. - Data model.
Выберите модель данных для синхронизации. Колонки, доступные для маппинга ниже, берутся из этой модели.
| Объект | Описание |
|---|---|
| Event | Каждая строка становится событием Amplitude, имя которому даёте вы сами. Подходит для воронок, retention и всего, что измеряет время между шагами. Событие может нести и user properties, тогда оно заодно обновляет профиль. |
| User profile | Каждая строка обновляет user properties в профиле человека в Amplitude, не создавая события, поэтому вы можете сегментировать людей по данным хранилища, например по статусу в CRM или тарифу. Объём событий Amplitude при этом не расходуется. |
Обновление профиля попадает в отчёты только со следующего события этого человека. Если новые значения нужны сразу, выберите Event и замапьте те же колонки как user properties.
Маппинг полей
Сопоставьте колонки модели данных со встроенными полями событий Amplitude.

- Строки маппинга.
Выберите слева колонку хранилища, справа поле Amplitude, которое она заполняет. Обязательные строки Renta создаёт сама, удалить их нельзя. - Add mapping.
Добавьте строку для каждого поля, которое хотите заполнить дополнительно.
| Тип маппинга | Описание |
|---|---|
| Standard | Берёт значение из колонки модели данных. |
| Static | Отправляет одно и то же фиксированное значение в каждой ст роке. |
| Variable | Отправляет значение самой синхронизации, например имя модели данных или время старта запуска. |
Список справа содержит встроенные поля Amplitude. Ниже они сгруппированы по назначению.
| Группа | Поля |
|---|---|
| Identity | User ID |
| Event | Event name, Event time (ms since epoch), Insert ID (deduplication), Session ID |
| Revenue | Price, Quantity, Revenue, Product ID, Revenue type |
| Device and app | App version, Platform, OS name, OS version, Device brand, Device manufacturer, Device model, Carrier |
| Location | Country, Region (geo), City, DMA, Language, IP address, Latitude, Longitude |
Обязательных полей два:
User IDобязателен для обоих объектов.
Он должен приходить из колонки. Фиксированное значение записало бы все строки синхронизации в один профиль Amplitude, а исправить это позже нельзя: Amplitude не переназначает и не разделяет user ID.Event nameобязателен, когда выбран объект Event.
Замапьте колонку с именем события или задайте Static значение, чтобы отправлять одно постоянное имя для всей синхронизации. Имена$identifyи$groupidentifyзарезервированы Amplitude, как и всё, что начинается с[Amplitude]. Renta не подставляет собственное имя, поэтому событие всегда приходит с тем, которое задали вы.
В пайплайне User profile поля Event name нет. Обновление профиля Amplitude принимает только под собственным зарезервированным именем события, и заменить его нельзя.
Event time читает колонку с датой или временем, число с секундами или миллисекундами Unix-времени, а также текстовую колонку с отметкой времени вида 2026-07-31T12:00:00Z. Значение, которое Renta не смогла прочитать, в событие не попадёт, и Amplitude поставит время получения. Если такое поведение вас устраивает, оставьте Event time без маппинга.
Insert ID отвечает за дедупликацию в Amplitude, и маппить его обычно не нужно. Если оставить поле пустым, Renta построит ключ из содержимого строки. Именно поэтому повторный запуск безопасен.
Event properties и user properties
Amplitude принимает произвольные имена свойств, поэтому эти два блока устроены иначе, чем блок выше: имя вы вводите сами, а не выбираете из списка.

- Event properties.
Атрибуты самого события, например тариф или сумма. Выберите слева колонку и введите имя свойства, под которым Amplitude его сохранит. - User properties.
Атрибуты, которые хранятся в профиле человека в Amplitude, например статус в CRM. В пайплайне Event они едут вместе с событием, поэтому сразу доступны в отчётах.
Пайплайн Event предлагает оба блока. Пайплайн User profile предлагает только user properties, и как минимум одно свойство обязательно: без него в профиль нечего записыва ть.
Пустую ячейку Renta пропускает, а не отправляет как пустое значение, поэтому Amplitude сохраняет то, что уже лежит в профиле. То же касается пустых массивов и пустых объектов: именно их хранилище возвращает для повторяемой колонки, в которой нет значений. Очистить свойство можно только на стороне Amplitude.
Поведение синхронизации
В блоке Sync behavior задайте, что происходит с удалёнными строками, и назовите пайплайн.

- When a source row is deleted.
Доступен только вариант Ignore. Amplitude умеет только добавлять события, поэтому отправленное событие нельзя отозвать. - Integration name.
Имя вашего пайпла йна. Измените его по своему усмотрению.
Расписание
Выберите, как часто будет запускаться пайплайн.

| Тип расписания | Описание |
|---|---|
| Manual | Пайплайн запускается только вручную через интерфейс или по API. |
| Daily | Пайплайн запускается раз в день в указанное время обновления. |
| Interval | Пайплайн запускается через заданные интервалы времени. |
| Cron Expression | Пайплайн запускается по расписанию, заданному cron-выражением. |
Для расписания Daily укажите Update time (точное время запуска), затем нажмите Create pipeline.

Renta также поддерживает запуск по API и интеграцию с внешними оркестраторами, такими как Apache Airflow, Dagster и Prefect. Подробнее в документации по расписаниям.
Новый пайплайн появится в разделе Pipelines на вкладке Reverse ETL, где можно отслеживать его запуски и прогресс.

Стратегия синхронизации
Renta синхронизирует данные инкрементально. Каждый запуск сравнивает модель данных с состоянием, записанным на предыдущем запуске, и отправляет только новые и изменившиеся строки. Поэтому первый запуск доставляет модель целиком.
| Состояние строки | Что делает Renta |
|---|---|
| Новая | Доставляет строку в Amplitude как событие или обновление профиля. |
| Изменённая | Доставляет строку заново с новыми значениями. Прежнее событие остаётся в Amplitude, а в профиле оказываются последние значения. |
| Без изменений | Не отправляет ничего, поэтому такие строки не расходуют объём событий Amplitude. |
| Удалённая | Игнорируется. Amplitude принимает только новые события, поэтому доставленное событие нельзя отозвать. |
Каждое событие несёт ключ дедупликации, который Renta вычисляет из содержимого строки, если вы не замапили Insert ID сами. Одинаковое содержимое даёт одинаковый ключ, поэтому повторная доставка после сетевого сбоя не превращается во второе событие в Amplitude. Изменившееся содержимое даёт новый ключ, поэтому обновление всегда доходит.
Дедупликация в Amplitude работает в окне 7 дней. Строка, повторно доставленная без изменений после этого окна, попадёт в Amplitude как новое событие.
Лог запуска
Чтобы посмотреть, что отправил запуск, откройте пайплайн, выберите запуск в таблице Runs и раскройте запись в блоке Run actions. Пайплайн Amplitude записывает действие amplitude_partition_delivered на каждый доставленный пакет, и оно несёт ответ Amplitude по этому пакету.
| Переменная | Значение |
|---|---|
| amp_object_type | Соб ытия или профили пользователей. |
| amp_op_type | Были строки новыми или изменившимися. |
| amp_events_ingested_total | Сколько событий Amplitude принял из этого пакета. |
| amp_rejection_count | Строки, которые не дошли до Amplitude. |
| amp_status_codes | Статус ответа на каждый запрос. Обычный случай это один 200. |
Остальные переменные показывают, на сколько запросов разбился пакет и где он находился среди строк запуска.
amp_events_ingested_total считает то, что Amplitude принял, а не то, что он оставил. Дедупликация происходит уже на стороне Amplitude.
Об остальных деталях запуска читайте в документации по мониторингу.
Лимиты
- Строки, которые Renta не отправляет.
Renta отбрасывает строку, у которойUser IDпуст, короче пяти символов или заполнен заглушкой, которую Amplitude не принимает:null,none,0. Остальные строки пакета всё равно уходят в Amplitude, а лог запуска показывает, сколько строк было отброшено. - Досрочная остановка запуска.
Запуск останавливается, когда отклонения превышают 30% одного пакета или 10% всего запуска. Так неправильно замапленная колонка идентификатора не успеет наполнить Amplitude строками, которые не привязаны ни к кому. Следующий запуск продолжит с места остановки. - Ключ, который Amplitude отклонил.
Если API-ключ перестал работать посреди синхронизации, например его перевыпустили в Amplitude, запуск останавливается на первом отклонённом запросе и не отправляет остальные данные ключу, который их не примет. Обновите ключ в назначении, и следующий запуск продолжит с места остановки. - Длина значения.
Amplitude обрезает текстовые значения длиннее 1024 символов. Renta отправляет значение в том виде, в котором оно лежит в хранилище, и не укорачивает его сама. - Device ID.
Renta не предлагает это поле. Amplitude навсегда объединяет двух людей с одинаковым device ID, поэтому повторяющееся или переиспользуемое значение из хранилища склеило бы несвязанные профили в один. Устройство Amplitude определяет сам, поUser ID.
Ready to get started?
Build your data pipeline today or get a personalized demo. Start free!
Need help?
Get expert support to ensure your project succeeds. We're here to help!
Feature requests?
Help shape our product! Share your ideas for new features and integrations.