Клуб API Карт

Поиск организаций находящихся в доме

Пост в архиве.

Пытаюсь использовать API Геопоиска чтобы как на вашей (maps.yandex.ru) карте кликнув по карте и в контекстном меню выбрав "Что здесь" узнать не только адрес, но и организации находящиеся в этом доме.

Например возьмем Органный зал в Перми:

 https://maps.yandex.ru/50/perm/?ll=56.234366%2C58.010709&z=18&whatshere%5Bpoint%5D=56.232934%2C58.011212&whatshere%5Bzoom%5D=18 

Хотим получить информацию аналогичную информацию кликнув по карте в моем пример.

Пытался искать указывая координаты [56.232934,58.011212]:

 https://search-maps.yandex.ru/v1/?text=56.232934,58.011212&type=biz&lang=ru_RU&apikey=API_KEY 

Ничего не находим:
{"type":"FeatureCollection","properties":{"ResponseMetaData":{"SearchRequest":{"request":"56.232934,58.011212","results":10,"skip":0,"boundedBy":[[37.048426749999997,55.436448290000001],[38.175902260000001,56.046901239999997]]},"SearchResponse":{"found":0,"display":"multiple"}}},"features":[]}
Если искать по адресу 'Россия, Пермь, улица Ленина, 51Б' (полученому с помощью ymaps.geocode(coords)):
 https://search-maps.yandex.ru/v1/?text=%D0%A0%D0%BE%D1%81%D1%81%D0%B8%D1%8F,%20%D0%9F%D0%B5%D1%80%D0%BC%D1%8C,%20%D1%83%D0%BB%D0%B8%D1%86%D0%B0%20%D0%9B%D0%B5%D0%BD%D0%B8%D0%BD%D0%B0,%2051%D0%91&lang=ru_RU&type=biz&apikey=API_KEY 
Тоже ничего не находим:
{"type":"FeatureCollection","properties":{"ResponseMetaData":{"SearchRequest":{"request":"Россия, Пермь, улица Ленина, 51Б","results":10,"skip":0,"boundedBy":[[37.048426749999997,55.436448290000001],[38.175902260000001,56.046901239999997]]},"SearchResponse":{"found":0,"display":"multiple"}}},"features":[]}
Если же указывать не полный адрес(только улицу и номер дома), тогда нужна привязка к текущему местоположению, можно взять текущий центр карты:
 https://search-maps.yandex.ru/v1/?text=%D1%83%D0%BB%D0%B8%D1%86%D0%B0%20%D0%9B%D0%B5%D0%BD%D0%B8%D0%BD%D0%B0,%2051%D0%B1&lang=ru_RU&type=biz&ll=56.234366,58.010709&spn=0.03,0.03&rspn=1&apikey=API_KEY 
В результате получаем:
{"type":"FeatureCollection","properties":{"ResponseMetaData":{"SearchRequest":{"request":"улица Ленина, 51б","results":10,"skip":0,"boundedBy":[[56.219364239999997,57.995704570000001],[56.249367970000002,58.025704349999998]]},"SearchResponse":{"found":0,"Point":{"type":"Point","coordinates":[56.234366000000001,58.010708999999999]},"boundedBy":[[56.219364239999997,57.995704570000001],[56.249367970000002,58.025704349999998]],"display":"multiple"}}},"features":[]}
Опять ничего.
Что я делаю не так?
Если искать театры, кинотеатры или какие-нибудь кафе, то ищет замечательно в указанном месте (ll=56.234366,58.010709&spn=0.03,0.03&rspn=1), а если искать организации по конкретному адресу то ничего.
11 комментариев

А может порядок координат перепутали?

Пробовали так 58.011212,56.232934?

Константин Кузнецов
27 января 2016, 22:32

пробовал. не помогло.

но все-таки порядок координат правильный в примере описан. такой же как пишется в урле когда работаешь с maps.yandex.ru.

именно с этими координатами если взять последний запрос из примера и поменять строку поиска на "театр" результат получается правдоподобный, театры из примерно этого местоположения

Константин Кузнецов
27 января 2016, 22:32

Кстати пример из документации с поиском по адресу (text=Санкт-Петербург, ул. Блохина, 15) возвращает результаты, но какие-то странные:

 https://search-maps.yandex.ru/v1/?text=Санкт-Петербург,%20ул.%20Блохина,%2015&results=3&lang=ru_RU&type=biz&apikey=API_KEY 

Ограничил поиск тремя результатами. Вот что получилось:

{"type":"FeatureCollection","properties":{"Attribution":{"Sources":{"yandex":{"id":"yandex","author":{"name":"Яндекс","uri":"http:\/\/www.yandex.ru"}}}},"ResponseMetaData":{"SearchRequest":{"request":"Санкт-Петербург, ул. Блохина, 15","results":3,"skip":0,"boundedBy":[[37.048426749999997,55.436448290000001],[38.175902260000001,56.046901239999997]]},"SearchResponse":{"found":11,"Point":{"type":"Point","coordinates":[30.33102268,59.882446360000003]},"boundedBy":[[30.262301560000001,59.858873260000003],[30.3997438,59.90600268]],"display":"multiple"}}},"features":[{"type":"Feature","properties":{"CompanyMetaData":{"id":"1011378944","name":"БиК-Санкт-Петербург","nameHighlight":[[4,9],[10,19]],"address":"Санкт-Петербург, ул. 2-й Луч, 13","addressHighlight":[[0,5],[6,15],[17,19]],"url":"http:\/\/bik.spb.ru","Categories":[{"name":"Дорожно-строительная техника"},{"name":"Городское благоустройство"},{"name":"Тротуарная плитка"}],"Phones":[{"type":"phone","formatted":"+7 (812) 325-12-01","country":"7","prefix":"812","number":"3251201"},{"type":"phone","formatted":"+7 (812) 325-12-02","country":"7","prefix":"812","number":"3251202"},{"type":"phone","formatted":"+7 (812) 325-12-03","country":"7","prefix":"812","number":"3251203"},{"type":"fax","formatted":"+7 (812) 325-12-04","country":"7","prefix":"812","number":"3251204"}],"Hours":{"Availabilities":[{"Monday":true,"Tuesday":true,"Wednesday":true,"Thursday":true,"Friday":true,"Intervals":[{"from":"09:00:00","to":"18:00:00"}]}],"text":"пн-пт 9:00–18:00","tzOffset":10800},"Geo":{"precision":"exact"},"Features":[{"id":"sale","type":"bool","name":"продажа","value":true},{"id":"production","type":"bool","name":"производство","value":true}]},"description":"Санкт-Петербург, ул. 2-й Луч, 13","name":"БиК-Санкт-Петербург","boundedBy":[[30.38952097,59.900867669999997],[30.40597811,59.909133840000003]],"attributions":["#yandex"]},"geometry":{"type":"Point","coordinates":[30.397749000000001,59.905003000000001]}},{"type":"Feature","properties":{"CompanyMetaData":{"id":"1014135678","name":"31 отдел полиции Кировского района г. Санкт-Петербурга","nameHighlight":[[38,43],[44,54]],"address":"Санкт-Петербург, ул. Севастопольская, 50","addressHighlight":[[0,5],[6,15],[17,19]],"url":"http:\/\/78.mvd.ru","Categories":[{"name":"Отделение полиции"}],"Chains":{"Chain":{"name":"Территориальные органы МВД России"}},"Phones":[{"type":"phone","formatted":"+7 (812) 252-07-02","country":"7","prefix":"812","number":"2520702"}],"Hours":{"Availabilities":[{"Everyday":true,"TwentyFourHours":true}],"text":"ежедневно, круглосуточно","tzOffset":10800},"Geo":{"precision":"exact"}},"description":"Санкт-Петербург, ул. Севастопольская, 50","name":"31 отдел полиции Кировского района г. Санкт-Петербурга","boundedBy":[[30.25605827,59.884311070000003],[30.27251541,59.892581380000003]],"attributions":["#yandex"]},"geometry":{"type":"Point","coordinates":[30.264286999999999,59.888446000000002]}},{"type":"Feature","properties":{"CompanyMetaData":{"id":"1180014003","name":"Магазин Top Hill Sport","address":"Санкт-Петербург, ул. Краснопутиловская, 69, БЦ Цитадель, эт. 2, оф. 214","addressHighlight":[[0,5],[6,15],[17,19]],"url":"http:\/\/www.tophillsport.ru","Categories":[{"name":"Спортивная одежда и обувь"},{"name":"Спортивный магазин"},{"name":"Спортивный инвентарь и оборудование"}],"Phones":[{"type":"phone","formatted":"+7 (812) 320-33-84","country":"7","prefix":"812","number":"3203384"},{"type":"phone","formatted":"+7 (812) 622-23-00","country":"7","prefix":"812","number":"6222300"}],"Hours":{"Availabilities":[{"Monday":true,"Tuesday":true,"Wednesday":true,"Thursday":true,"Intervals":[{"from":"10:00:00","to":"18:00:00"}]},{"Friday":true,"Intervals":[{"from":"10:00:00","to":"17:00:00"}]}],"text":"пн-чт 10:00–18:00; пт 10:00–17:00","tzOffset":10800},"Geo":{"precision":"exact"}},"description":"Санкт-Петербург, ул. Краснопутиловская, 69, БЦ Цитадель, эт. 2, оф. 214","name":"Магазин Top Hill Sport","boundedBy":[[30.279701930000002,59.855732830000001],[30.296159060000001,59.864010270000001]],"attributions":["#yandex"]},"geometry":{"type":"Point","coordinates":[30.287929999999999,59.859872000000003]}}]}

Т.е. это:

1. БиК-Санкт-Петербург (Санкт-Петербург, ул. 2-й Луч, 13);

2. 31 отдел полиции Кировского района г. Санкт-Петербурга (Санкт-Петербург, ул. Севастопольская, 50);

3. Магазин Top Hill Sport (Санкт-Петербург, ул. Краснопутиловская, 69, БЦ Цитадель, эт. 2, оф. 214);

Не очень в Петербурге ориентируюсь,но по-моему результаты не имеют отношения к адресу Блохина 15. 

Константин Кузнецов
27 января 2016, 22:32
ощущение что результаты возвращаются относительно ко всему Санкт-Петербургу, игнорируя адрес Блохина 15

будем смотреть, спасибо за сообщение

Константин Кузнецов
27 января 2016, 22:32
Буду ждать ответа, вопрос довольно актуальный
Sergey Konstantinov
27 января 2016, 22:32
«Обратного геокодирования», т.е. вывода всех организаций в здании, в данный момент в API ППО нет. Мы думаем о добавлении этой функциональности, но не совсем понимаем, зачем.

Расскажите, пожалуйста, как вы хотите его использовать.
Константин Кузнецов
27 января 2016, 22:32

хотелось как на вашей карте по запросу пользователя (через контекстное меню, пункт "Что здесь") выводить не только адрес, но и организации находящиеся по этому адресу.

Константин Кузнецов
27 января 2016, 22:32

Спасибо огромное, так работает.

Только в моем случае координаты местами поменять, ну это не важно.

Спасибо!