Два POST endpoint для запуска и мониторинга импорта. Нужен API-ключ. Импорт выполняется асинхронно — после /start проверяйте статус через /latest-log.
POST /rest-api/import/start → import-in-queue.POST /rest-api/import/latest-log, пока не будет completed.curl -X POST 'https://realistimo.com/rest-api/import/start' \
-H 'Accept: application/json' \
-H 'API-KEY: YourApiKeyHere'
curl -X POST 'https://realistimo.com/rest-api/import/latest-log' \
-H 'Accept: application/json' \
-H 'API-KEY: YourApiKeyHere'
/start всегда возвращает {"message":"Import in queue"}, а /latest-log — один и тот же пример ответа, где logResult и logOffers являются JSON-строками. Используйте его только для проверки соединения.<updated> (без изменения значение пропускает feed).<last_update> у изменённых объявлений.POST /start. При cooldown или уже идущем импорте подождите и повторите./latest-log и исправляйте объявления с errors.API-KEY (рекомендуется)apikey в query или в форме. Ключ в URL попадает в логи доступа и в историю браузера — перейдите на заголовок API-KEY; поддержка будет отключена после уведомления.Любая ошибка аутентификации возвращает HTTP 401 с телом {"status":"error","message":"…"}:
| message | Когда |
|---|---|
API key is missing in request | Отсутствует или пустой API-ключ |
API key could not be found | Неизвестный ключ |
API key is inactive | Отключённый ключ |
API key is expired | Истёкший ключ |
User is inactive | Пользователь деактивирован |
User account is expired | Учётная запись пользователя истекла |
POST /rest-api/import/start| message | Значение |
|---|---|
import-in-queue | Принято; импорт в очереди или уже ожидает |
import-is-allowed-between-the-time | Вне окна 08:00–20:59 по болгарскому времени |
import-in-progress | Импорт уже выполняется |
import-request-cooldown-is-time-given | Прошло меньше 30 минут с последнего импорта — ручного или автоматического |
error-while-importing | Для агентства не настроен feed |
error: Agency not found | Ключ не связан с агентством |
{"error":"Agency not found"}. Проверяйте тело ответа, а не только код статуса.POST /rest-api/import/latest-logmessage — статус импорта: pending | in_progress | completed (или null, если статуса ещё нет). При наличии лога: logDate, logResult, logOffers (uuid, createdAt, errors, offerSourceData).
{
"message": "completed",
"logDate": "2024-09-18T01:51:14+03:00",
"logResult": {
"0": "success_with_warnings",
"found_offers": 228,
"published_found_offers_in_agency": 218,
"imported_offers": 0,
"published_offers": 0,
"not_published": 10,
"removed_offers": 0,
"deleted_offers": 0,
"updated_offers": 228,
"errors": [{ "type": "…", "count": 10 }]
},
"logOffers": [{ "uuid": "…", "errors": [], "offerSourceData": { "offer_uid": "2080525" } }]
}
"0" — это success или success_with_warnings (есть объявления с ошибками). errors группирует ошибки по типу и количеству и отсутствует, если ошибок нет.logResult — это массив с одним сообщением: ["…"].<updated>): Спецификация XMLresult_url)После импорта Realistimo делает POST на URL из XML (result_url) с JSON-телом как в latest-log: message, logDate, logResult, logOffers. Запрос отправляется один раз: при ошибке или недоступном URL повтора не будет. Если callback не пришёл, проверьте /latest-log.
Пусть Realistimo следит вместо вас
😃 Установите приложение, и мы первыми сообщим вам, когда появится подходящее объявление.
Так вы будете в курсе новинок в области недвижимости, статистики и новостей от Realistimo, без спама: