Salesforce
Renta отправляет строки из вашего хранилища данных в Salesforce как записи стандартных и кастомных объектов: контакты, лиды, аккаунты, сделки, кейсы и любой кастомный объект вашей org.
Один пайплайн пишет в один объект. Поле External ID, по которому идёт сопоставление, решает, обновит строка существующую запись или создаст новую.
Аутентификация
Renta авторизуется через Salesforce OAuth. Перед входом выберите окружение: Production использует обычный вход Salesforce, Sandbox авторизует sandbox org через тестовый вход.
Salesforce попросит выдать Renta полный доступ в пределах прав пользователя, под которым вы входите, и право обновлять этот доступ. Renta читает описания объектов и полей, чтобы заполнить списки в настройках, а записи пишет при доставке данных пайплайном.
Учётные данные хранятся в зашифрованном виде, а отозвать авторизацию можно в любой момент в Salesforce в разделе Setup > Connected Apps OAuth Usage.
Подключение назначения Salesforce
- Перейдите в раздел Connections > Catalog в левом меню и откройте вкладку Destinations.
- Откройте категорию Reverse ETL и нажмите карточку Salesforce.

- Environment.
Оставьте Production для боевой org или выберите Sandbox для sandbox org. - Нажмите Log in to your Salesforce account. Salesforce откроется в этой же вкладке.

Введите учётные данные пользователя, от имени которого будут работать пайплайны, и нажмите Log In. На следующем экране подтвердите запрошенный доступ. Salesforce вернёт вас в Renta.

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

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

Подготовка модели данных
Пайплайн Reverse ETL читает данные из модели данных: это SQL-запрос, сохранённый в разделе Data models, который решает, какие строки хранилища синхронизировать и что лежит в каждой строке. Создайте её до пайплайна, потому что списки в маппинге заполняются колонками модели.
Добавьте в запрос колонку со стабильным идентификатором записи и отметьте её уникальным ключом модели. Именно это значение Renta будет отправлять в поле External ID в Salesforce.
-- Контакты, подготовленные для Salesforce. Запрос возвращает строки, таблица не создаётся.
WITH demo_contacts AS (
SELECT
'crm-demo-0001' AS guid,
'James' AS first_name,
'Miller' AS last_name,
'james.miller@example.com' AS email,
'+1 212 555 0101' AS phone,
'Head of Marketing' AS title
UNION ALL SELECT 'crm-demo-0002','Olivia','Johnson','olivia.johnson@example.com','+1 312 555 0102','CTO'
UNION ALL SELECT 'crm-demo-0003','William','Davis','william.davis@example.com','+1 214 555 0103','Analyst'
)
SELECT * FROM demo_contactsСоздание модели данных
В левом меню откройте Data models и нажмите New model. Затем:
- Source.
Выберите подключение хранилища, к которому пойдёт запрос. - Write your model query.
Вставьте свой SQL. Тип запроса оставьте SQL query. - Run preview.
Проверьте строки и названия колонок. Когда результат устраивает, нажмите Next step.

Для модели, которая питает пайплайны, выберите Reverse ETL only. Если та же модель должна отвечать и на вопросы агентов, выберите один из вариантов с AI agents.

Просмотрите колонки, которые Renta прочитала из запроса, и отметьте ту, что опознаёт строку. По этому ключу Reverse ETL отличает изменённую строку от новой, поэтому выбирайте колонку, по которой будете сопоставлять и в Salesforce, в примере это guid.

Задайте имя и короткое описание, затем нажмите Create model. Именно это имя вы выберете в списке Data model при создании пайплайна.

Модель появится в списке с областью Reverse ETL и готова к использованию в пайплайне.

Создание пайплайна Salesforce
Назначение и модель данных должны быть готовы до начала.
В левом меню нажмите New pipeline. На шаге Source переключитесь на Reverse ETL и выберите своё хранилище данных, например Google BigQuery.

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