Как получить район области

У меня есть код на пхп, написанный несколько лет назад. Эта функция определяем район (города или области) по координатам.

    if($c) $kind = 'district';
else $kind = 'area';

$data = simplexml_load_file('https://geocode-maps.yandex.ru/1.x/?apikey=МОЙ-КОД&kind='.$kind.'&geocode='.$coord);

Но сейчас определение района области не работает (район города определяет). Начал дебажить и понял что ссылка ...&kind=area&geocode=... больше не работает, возвращает ошибку.

<statusCode>400</statusCode>
<error>Bad Request</error>
<message>
Parameter "kind": "kind" must be one of [house, street, metro, district, locality]
</message>
</error>

Как теперь определять район области?


Ответы (1 шт):

Автор решения: neverd1m

Согласно документации в запросе параметр kind не принимает значение "area", о чем вам 400 ошибка и сообщает.

Однако, там же в документации есть структура ответа Геокодера, где может присутствовать вложенный компонент "area".

Все что нужно - это фильтровать ответ Геокодера и получить нужный вам параметр.

Отдельно отмечу, Яндекс запрещает использовать API без отображения данных на общедоступной карте.

→ Ссылка