Руководство
Отображение местоположения объявления
У каждого объявления есть location_details с одинаковыми четырьмя частями на всех эндпоинтах: country в виде {id, name, iso}, а также region, district и place в виде {id, name}. Отсутствующие части равны null. Берите названия прямо отсюда; дополнительные запросы не нужны.
- ID, который не удалось сопоставить, сохраняет свой
idсname: null. Текстовая метка от источника имеетid: null. - Регион может одновременно быть и населённым пунктом (один и тот же ID дважды, как в примере). Убирайте дубли подписей по ID.
place— географический объект, не всегда город. Мы никогда не определяем город по координатам.- Старое поле
locationсохранено для совместимости. Его значения — ID в/searchи локализованные строки в/cars; не используйте его в новом коде.
Выбор региона и города
Для интерфейсов фильтров используйте справочники. Загрузите /countries, затем регионы через /locations?country_id=C&feature_class=A&feature_code=ADM1, районы через admin1=R&feature_code=ADM2, а города и сёла через feature_class=P. Пагинация — через after_id. Результаты упорядочены по ID, а не по релевантности, поэтому сортируйте по названию в своём интерфейсе.
listings[0].location_detailsLive
{
"country": {
"id": 208,
"name": "South Korea",
"iso": "KR"
},
"region": {
"id": 1841610,
"name": "Gyeonggi-do"
},
"district": null,
"place": {
"id": 1841610,
"name": "Gyeonggi-do"
}
}Регионы Южной Кореи
curl -g "https://api.lotarius.com/locations?country_id=208&feature_class=A&feature_code=ADM1&lang=en&api_key=$CARS_API_KEY" \
-H "Accept: application/json"