При запросе с count=1 пустой ответ
Добрый день!
Делаем два последовательных запроса. Первый с count>1 для получения списка подсказок, затем с count=1 для уточнения выбора.
В первом запросе ответ есть. Во втором пустой.
Примеры запросов:
Запрос 1. Ввели "Кировская г Киров, ул Ленина, д 20, кв 141"
curl -X POST \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-H "Authorization: Token ****key****" \
-d "{ \"count\": 2, \"query\": \"Кировская г Киров, ул Ленина, д 20, кв 141\" }" \
https://dadata.ru/api/v2/suggest/address{"suggestions": [{
"value": "г Киров, ул Ленина, д 20, кв 141",
"unrestricted_value": "Кировская обл, г Киров, ул Ленина, д 20, кв 141",
"data": {
"postal_code": "610004",
"country": "Россия",
"region_fias_id": "0b940b96-103f-4248-850c-26b6c7296728",
"region_kladr_id": "4300000000000",
"region_with_type": "Кировская обл",
"region_type": "обл",
"region_type_full": "область",
"region": "Кировская",
"area_fias_id": null,
"area_kladr_id": null,
"area_with_type": null,
"area_type": null,
"area_type_full": null,
"area": null,
"city_fias_id": "452a2ddf-88a1-4e35-8d8d-8635493768d4",
"city_kladr_id": "4300000100000",
"city_with_type": "г Киров",
"city_type": "г",
"city_type_full": "город",
"city": "Киров",
"city_area": null,
"city_district_fias_id": null,
"city_district_kladr_id": null,
"city_district_with_type": null,
"city_district_type": null,
"city_district_type_full": null,
"city_district": null,
"settlement_fias_id": null,
"settlement_kladr_id": null,
"settlement_with_type": null,
"settlement_type": null,
"settlement_type_full": null,
"settlement": null,
"street_fias_id": "2e4036dd-58ba-4723-8e0c-a9b82735a342",
"street_kladr_id": "43000001000022500",
"street_with_type": "ул Ленина",
"street_type": "ул",
"street_type_full": "улица",
"street": "Ленина",
"house_fias_id": "f18d11c0-1761-4c4c-b4fa-47af801f58b3",
"house_kladr_id": "4300000100002250102",
"house_type": "д",
"house_type_full": "дом",
"house": "20",
"block_type": null,
"block_type_full": null,
"block": null,
"flat_type": "кв",
"flat_type_full": "квартира",
"flat": "141",
"flat_area": null,
"square_meter_price": null,
"flat_price": null,
"postal_box": null,
"fias_id": "f18d11c0-1761-4c4c-b4fa-47af801f58b3",
"fias_level": "8",
"kladr_id": "4300000100002250102",
"capital_marker": "2",
"okato": "33401000000",
"oktmo": "33701000",
"tax_office": "4345",
"tax_office_legal": null,
"timezone": null,
"geo_lat": "58.6110688",
"geo_lon": "49.6808793",
"beltway_hit": null,
"beltway_distance": null,
"qc_geo": "0",
"qc_complete": null,
"qc_house": null,
"unparsed_parts": null,
"qc": null
}
}
]
}Запрос 2. Уточняем выбор из подсказок "г Киров, ул Ленина, д 20, кв 141"
curl -X POST \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-H "Authorization: Token ****key****" \
-d "{ \"count\": 1, \"query\": \" г Киров, ул Ленина, д 20, кв 141\" }"
https://dadata.ru/api/v2/suggest/address{"suggestions":[]}Ответ
Алексей, добрый день!
Дело в том, что г Киров есть в Кировской и Калужской областях. Подсказки присылают пустой ответ при запросе с count = 1 по адресу без области, потому что не понимают, какая именно область имеется в виду.
Чтобы это исправить, передавайте в запрос с count = 1 значение unrestricted_value из ответа на запрос с count > 1.
"value": "г Киров, ул Ленина, д 20, кв 141", "unrestricted_value": "Кировская обл, г Киров, ул Ленина, д 20, кв 141"
Следуем вашей рекомендации и передаем во второй запрос значение unrestricted_value. Для части адресов получаем аналогичную проблему. Пример:
Запрос 1. С count=7 для некоторого адреса.
Сервис поддержки клиентов работает на платформе UserEcho
Алексей, добрый день!
Дело в том, что г Киров есть в Кировской и Калужской областях. Подсказки присылают пустой ответ при запросе с count = 1 по адресу без области, потому что не понимают, какая именно область имеется в виду.
Чтобы это исправить, передавайте в запрос с count = 1 значение unrestricted_value из ответа на запрос с count > 1.