Объявления

Привязка external ID

Связывание существующих объявлений с записями в CRM

Если объявления были созданы через веб-интерфейс Rentix, привяжите к ним external ID, чтобы управлять через API.

Когда это нужно

  • Объявления созданы вручную через rentix.md, и теперь нужно синхронизировать с CRM
  • Миграция с другой системы интеграции
  • Восстановление связей после сбоя

Привяжите external ID

Связывает объявление Rentix с записью в вашей CRM.

const response = await fetch('https://crm.rentix.md/api/v1/listings/42/link', {
  method: 'POST',
  headers: {
    'Authorization': 'ApiKey YOUR_API_KEY',
    'Content-Type': 'application/json'
  },
  body: JSON.stringify({ externalId: 'apt-001' })
});

const result = await response.json();
console.log(`Объявление ${result.id} привязано к ${result.externalId}`);
Ответ
{
  "id": 42,
  "externalId": "apt-001",
  "linked": true
}

После привязки можно использовать external ID для обновления:

curl -X PUT https://crm.rentix.md/api/v1/listings \
  -H "Authorization: ApiKey YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{ "externalId": "apt-001", "announcementValue": 550 }'

Отвяжите external ID

Удаляет связь между объявлением и external ID.

const response = await fetch('https://crm.rentix.md/api/v1/listings/42/link', {
  method: 'DELETE',
  headers: { 'Authorization': 'ApiKey YOUR_API_KEY' }
});
Ответ
{
  "id": 42,
  "externalId": "apt-001",
  "unlinked": true
}

Сценарий: первоначальная привязка

При интеграции существующего агентства нужно связать объявления Rentix с записями в CRM.

Node.js
// 1. Получить все объявления из Rentix
const response = await fetch('https://crm.rentix.md/api/v1/listings?limit=100', {
  headers: { 'Authorization': 'ApiKey YOUR_API_KEY' }
});
const { items: rentixListings } = await response.json();

// 2. Для каждого объявления найти соответствие в CRM
for (const listing of rentixListings) {
  // Пропустить уже привязанные
  if (listing.externalId) continue;

  // Найти по адресу, цене или другим признакам
  const crmRecord = await findMatchInCrm(listing);

  if (crmRecord) {
    // 3. Привязать external ID
    await fetch(`https://crm.rentix.md/api/v1/listings/${listing.id}/link`, {
      method: 'POST',
      headers: {
        'Authorization': 'ApiKey YOUR_API_KEY',
        'Content-Type': 'application/json'
      },
      body: JSON.stringify({ externalId: crmRecord.id })
    });

    console.log(`Привязано: Rentix #${listing.id} → CRM ${crmRecord.id}`);
  }
}

Частые ошибки

ОшибкаПричинаРешение
External ID already linkedЭтот external ID уже используется другим объявлениемИспользуйте уникальный ID или сначала отвяжите от другого объявления
Listing already has external IDУ объявления уже есть external IDСначала отвяжите текущий ID
Listing not foundОбъявление не существует или принадлежит другому агентствуПроверьте ID
Listing has no external IDПри отвязке: у объявления нет external IDНичего не нужно делать
Copyright © 2026