---
metadata:
  - name: generator
    content: Diplodoc Platform v5.39.1
alternate:
  - https://yandex.com.tr/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/ISearchProvider.md
  - https://yandex.com.tr/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/ISearchProvider.md
---
> **Documentation Index:** Fetch the complete configuration index at https://yandex.com.tr/dev/jsapi-v2-1/doc/en/llms.txt

# ISearchProvider

Search provider interface.

[Constructor](#constructor-summary) | [Methods](#methods-summary)

## Constructor {#constructor-summary}

```javascript
ISearchProvider()
```

## Methods {#methods-summary}

#|
|| **Name** | **Returns** | **Description** ||
|| [search](https://yandex.com.tr/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/ISearchProvider.md#search)([request](https://yandex.com.tr/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/ISearchProvider.md#search-param-request)[, [options](https://yandex.com.tr/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/ISearchProvider.md#search-param-options)]) | [vow.Promise](https://yandex.com.tr/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/vow.Promise.md) | Sends a request to search for geo objects. A handler function for processing geocoding results can be added via the returned promise object. The object input to the handler function can contain only the following types of fields: geoObjects, layers, mapState, and metaData. ||
|| [suggest](https://yandex.com.tr/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/ISearchProvider.md#suggest)([request](https://yandex.com.tr/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/ISearchProvider.md#suggest-param-request)[, [options](https://yandex.com.tr/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/ISearchProvider.md#suggest-param-options)]) | [vow.Promise](https://yandex.com.tr/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/vow.Promise.md) | Sends a request for search suggestions. Returns a promise object that is either rejected with an error, or confirmed by an array of objects in the format { displayName: "Mitishi, Moscow region", value: "Russia, Moscow region, Mitishi " }. The displayName field represents the toponym in a user-friendly way, and the value field represents the value which should be inserted into the search field after the user selects the suggestion.

This method is optional.||
|#

## Methods details {#method_detail}

### search {#search}

```javascript
{vow.Promise} search(request[, options])
```

Sends a request to search for geo objects. A handler function for processing geocoding results can be added via the returned promise object. The object input to the handler function can contain only the following types of fields: geoObjects, layers, mapState, and metaData.

**Returns** Promise object.

**Parameters:**

#|
|| **Parameter** | **Default value** | **Description**  ||
|| [`request`](#search-param-request)[*](*star) | — | Type: String

Request string. ||
|| [`options`](#search-param-options) | — | Type: Object

Options. ||
|| [`options.boundedBy`](#search-param-options.boundedBy) | — | Type: Number[][]

A rectangular area on the map, where the object being searched for is presumably located. Must be set as an array, such as [[30, 40], [50, 50]]. ||
|| [`options.results`](#search-param-options.results) | — | Type: Number

Maximum number of results to be returned. ||
|| [`options.skip`](#search-param-options.skip) | — | Type: Number

Number of results that must be skipped. ||
|#

\* Mandatory parameter/option.

### suggest {#suggest}

```javascript
{vow.Promise} suggest(request[, options])
```

Sends a request for search suggestions. Returns a promise object that is either rejected with an error, or confirmed by an array of objects in the format { displayName: "Mitishi, Moscow region", value: "Russia, Moscow region, Mitishi " }. The displayName field represents the toponym in a user-friendly way, and the value field represents the value which should be inserted into the search field after the user selects the suggestion.

This method is optional.

**Returns** a Promise object.

**Parameters:**

#|
|| **Parameter** | **Default value** | **Description**  ||
|| [`request`](#suggest-param-request)[*](*star) | — | Type: String

Request string. ||
|| [`options`](#suggest-param-options) | — | Type: Object

Options. ||
|| [`options.boundedBy`](#suggest-param-options.boundedBy) | — | Type: Number[][]

A rectangular area on the map, where the object being searched for is presumably located. Must be set as an array, such as [[30, 40], [50, 50]]. ||
|| [`options.results`](#suggest-param-options.results) | — | Type: Number

Maximum number of results to be returned. ||
|| [`options.strictBounds`](#suggest-param-options.strictBounds) | — | Type: Boolean

Search only inside the area defined by the "boundedBy" option. ||
|#

\* Mandatory parameter/option.

[*star]: Mandatory parameter/option.