---
metadata:
  - name: generator
    content: Diplodoc Platform v5.39.1
alternate:
  - https://yandex.ru/dev/maps/archive/doc/jsapi/2-0/ru/ref/reference/geocode.md
---
> **Documentation Index:** Fetch the complete configuration index at https://yandex.ru/dev/maps/archive/doc/jsapi/2-0/ru/llms.txt

# geocode

Статическая функция.

Обрабатывает запросы геокодирования. Результат запроса может быть представлен в формате JSON или в виде объекта [GeoObjectCollection](https://yandex.ru/dev/maps/archive/doc/jsapi/2-0/ru/ref/reference/GeoObjectCollection.md).

**Returns** объект-promise.

```javascript
{ util.Promise } geocode(request[, options])
```

**Параметры:**

#|
|| **Параметр** | **Значение по умолчанию** | **Описание** ||
|| `request`[*](*parametr) | — | Тип: String\|Number[]

Адрес, для которого необходимо определить координаты (прямое геокодирование) или координаты, для которых необходимо определить адрес (обратное геокодирование). ||
|| `options` | — | Тип: Object

Опции. ||
|| `options.boundedBy` | — | Тип: Number[][]

Прямоугольная область на карте, в которой предположительно находится искомый объект. ||
|| `options.json` | false | Тип: Boolean

Если true, то в функцию-обработчик передается JSON. В противном случае в функцию обработчик передается объект, содержащий в поле geoObjects результаты геокодирования в виде коллекции [GeoObjectCollection](https://yandex.ru/dev/maps/archive/doc/jsapi/2-0/ru/ref/reference/GeoObjectCollection.md). ||
|| `options.kind` | 'house'  | Тип: String

Вид топонима (только для обратного геокодирования).

Список возможных значений:

• house - дом;

• street - улица;

• metro - станция метро;

• district - район города;

• locality - населенный пункт (город/поселок/деревня/село/...). ||
|| `options.provider` | 'yandex#map'  | Тип: [IGeocodeProvider](https://yandex.ru/dev/maps/archive/doc/jsapi/2-0/ru/ref/reference/IGeocodeProvider.md)\|String

Провайдер геокодирования. Доступный провайдер: 
• 'yandex#map' - поиск по карте. ||
|| `options.results` | 10 | Тип: Integer

Максимальное количество возвращаемых результатов. ||
|| `options.searchCoordOrder` | — | Тип: String

Определяет каким образом нужно интрепретировать координаты в запросе. ||
|| `options.skip` | 0 | Тип: Integer

Число результатов, которое необходимо пропустить. ||
|| `options.strictBounds` | false | Тип: Boolean

Искать только внутри области, заданной опцией boundedBy. ||
|#

\* Обязательный параметр/опция.

**Пример:**

```javascript
// Пример 1
// Осуществляет поиск объекта с именем "Москва".
// Полученный результат сразу отображается на карте.
var myGeocoder = ymaps.geocode("Москва");
myGeocoder.then(
    function (res) {
        map.geoObjects.add(res.geoObjects);
    },
    function (err) {
        // обработка ошибки
    }
);

// Пример 2
// реализует интерфейс IGeocodeProvider
var randomPointProvider = {
     geocode: function (request, options) {
         var promise = new ymaps.util.Promise(),
             geoObjects = new ymaps.GeoObjectArray(),
             results = options.results || 10;

         for (var i = 0; i < results; i++) {
             geoObjects.add(new ymaps.GeoObject({
                 geometry: {
                     type: "Point",
                     coordinates: [(Math.random() - 0.5) * 180, (Math.random() - 0.5) * 360]
                 },
                 properties: {
                     name: request + ' ' + i,
                     description: request + '\'s description ' + i,
                     balloonContentBody: '<p>' + request + ' ' + i + '</p>'
                 }
             }));
         }

         var response = {
             geoObjects: geoObjects, // геообъекты поисковой выдачи
             // метаинформация ответа
             metaData: {
                 geocoder: {
                     request: request, // строка обработанного запроса
                     found: results, // количество найденных результатов
                     results: results, // количество возвращенных результатов
                     skip: options.skip || 0 // количество пропущенных результатов
                 }
             }
         };

         // выполняем асинхронную обработку
         setTimeout(function () {
             promise.resolve(response);
         }, 0);

         return promise;
     }
},
    myGeocoder = ymaps.geocode("Москва", { provider: randomPointProvider });

myGeocoder.then(
    function (res) {
        map.geoObjects.add(res.geoObjects);
    },
    function (err) {
        // обработка ошибки
    }
);
```

[*parametr]:Обязательный параметр/опция.
