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

# multiRouter.MultiRoute

Extends [IGeoObject](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IGeoObject.md).

Multi-route on the map. Displays the route on the map along with one or more alternatives. Provides the interface for selecting the active route.

[Constructor](#constructor-summary) | [Fields](#properties-summary) | [Events](#events-summary) | [Methods](#methods-summary)

## Constructor {#constructor-summary}

```javascript
multiRouter.MultiRoute(model[, options])
```

Creates a multi-route on the map.

**Parameters:**

#|
|| **Parameter** | **Default value** | **Description**  ||
|| [`model`](#param-model)[*](*star) | — | Type: [multiRouter.MultiRouteModel](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/multiRouter.MultiRouteModel.md)\|[IMultiRouteModelJson](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IMultiRouteModelJson.md)

The data model of a multi-route, or the model description object. If you pass a description object, the model (which is based on it) is created automatically. ||
|| [`options`](#param-options) | — | Type: Object

Multi-route options. To define options for the parts of a multi-route, use the following prefixes: 
- `wayPoint` - Waypoint options.
- `wayPointStart` - Display options for the starting waypoint.
- `wayPointFinish` - Display options for the end waypoint.
- `viaPoint` - Throughpoint options.
- `pin` - Options for point markers on the route.
- `editor` - Options for the multi-route editor (see [multiRouter.Editor](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/multiRouter.Editor.md)).
To define options for individual routes within a multi-route, use the following prefixes: 
- `route` - Options for routes, including inactive ones.
- `routeActive` - Options for the active route.
Note that options specified with the "routeActive" prefix have a higher priority than the options with the "route" prefix. To define options for segments of public transport routes, use the following prefixes: 
- `routeMarker` - Options for route segment markers.
- `routeWalkMarker` - Options for markers of walking segments on the route.
- `routeTransferMarker` - Options for transfer segment markers.
- `routeTransportMarker` - Options for transit segment markers on the route.
- `routeWalkSegment` - Options for walking segment lines on the route.
- `routeTransferSegment` - Options for transfer segment lines.
- `routeTransportSegment` - Options for transit segment lines on the route.
- `routePedestrianSegment` - Options for pedestrian route segment lines.
These prefixes are also available in the "routeActive*" version. ||
|| [`options.activeRouteAutoSelection`](#param-options.activeRouteAutoSelection) | true | Type: Boolean

After the data is refreshed, automatically use the route with the shortest travel time as the active route. ||
|| [`options.boundsAutoApply`](#param-options.boundsAutoApply) | false | Type: Boolean

When adding a multi-route to the map, you can automatically set the center and the zoom level so that the multi-route is entirely visible. ||
|| [`options.dragUpdateInterval`](#param-options.dragUpdateInterval) | — | Type: String\|Number

Time interval of rebuilding the route while reference points are being dragged. Can be set in milliseconds, or the optimal value can be calculated automatically. The value of this option is translated to the [IMultiRouteParams.requestSendInterval](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IMultiRouteParams.md#requestSendInterval) parameter of the multi-route. ||
|| [`options.preventDragUpdate`](#param-options.preventDragUpdate) | false | Type: Boolean

Allows to disable the route update while reference points are being dragged. ||
|| [`options.useMapMargin`](#param-options.useMapMargin) | true | Type: Boolean

Whether to account for map margins [map.margin.Manager](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/map.margin.Manager.md). ||
|| [`options.zoomMargin`](#param-options.zoomMargin) | 0 | Type: Number\|Number[]

Offset from the map viewport borders when changing the zoom level. If a single number is set, it is applied to each side. If two numbers are set, they are the horizontal and vertical margins, respectively. If an array of four numbers is set, they are the top, right, bottom, and left margins. When the "useMapMargin" option is enabled, the "zoomMargin" value is combined with the values that were calculated in the margins manager [map.margin.Manager](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/map.margin.Manager.md). ||
|#

\* Mandatory parameter/option.

**Examples:**

**1.**

```javascript
// Creating a multi-route and adding it to the map.
var multiRoute = new ymaps.multiRouter.MultiRoute({
    referencePoints: ['Moscow, Leninsky Prospekt', 'Moscow, Kulakov pereulok'],
}, {
    editorDrawOver: false,
    wayPointDraggable: true,
    viaPointDraggable: true,
    // Setting a custom design for multi-route lines.
    routeStrokeColor: "000088",
    routeActiveStrokeColor: "ff0000",
    pinIconFillColor: "ff0000",
    boundsAutoApply: true,
    zoomMargin: 30
});
myMap.geoObjects.add(multiRoute);
```

**2.**

```javascript
// Creating a multi-route and adding it to the map.
var multiRoute = new ymaps.multiRouter.MultiRoute({
    referencePoints: ['Moscow, Leninsky Prospekt', 'Moscow, Kulakov pereulok', 'Zelenograd'],
});
myMap.geoObjects.add(multiRoute);

// Once multi-route is loaded.
multiRoute.events.once('update', function () {
    // Set first non-blocked route as active and open it's balloon.
    var routes = multiRoute.getRoutes();
    for (var i = 0, l = routes.getLength(); i < l; i++) {
        var route = routes.get(i);
        if (!route.properties.get('blocked')) {
            multiRoute.setActiveRoute(route);
            route.balloon.open();
            break;
        }
    }
});
```

## Fields {#properties-summary}

#|
|| **Name** | **Type** | **Description** ||
|| [editor](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/multiRouter.MultiRoute.md#editor) | [multiRouter.EditorAddon](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/multiRouter.EditorAddon.md) | Multiroute editor. ||
|| [events](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IDomEventEmitter.md#events) | [IEventManager](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IEventManager.md) | Event manager.

Inherited from [IDomEventEmitter](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IDomEventEmitter.md#events). ||
|| [geometry](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IGeoObject.md#geometry) | [IGeometry](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IGeometry.md)\|null | Geo object geometry.

Inherited from [IGeoObject](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IGeoObject.md#geometry). ||
|| [model](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/multiRouter.MultiRoute.md#model) | [multiRouter.MultiRouteModel](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/multiRouter.MultiRouteModel.md) | The data model of a multi-route. ||
|| [options](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/ICustomizable.md#options) | [IOptionManager](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IOptionManager.md) | Options manager.

Inherited from [ICustomizable](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/ICustomizable.md#options). ||
|| [properties](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IGeoObject.md#properties) | [IDataManager](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IDataManager.md) | Geo object data.

Inherited from [IGeoObject](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IGeoObject.md#properties). ||
|| [state](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IGeoObject.md#state) | [IDataManager](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IDataManager.md) | State of the geo object.

Inherited from [IGeoObject](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IGeoObject.md#state). ||
|#

## Events {#events-summary}

#|
|| **Name** | **Description** ||
|| [activeroutechange](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/multiRouter.MultiRoute.md#event-activeroutechange) | Change to the active route. Instance of the [Event](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/Event.md) class. Names of fields that are available via the [Event.get](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/Event.md#get) method: 
- oldActiveRoute: multiRouter.driving.Route\|multiRouter.masstransit.Route\|null - previous active route. ||
|| [balloonclose](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/multiRouter.MultiRoute.md#event-balloonclose) | Closing the balloon. Names of fields that are available via the [Event.get](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/Event.md#get) method: 
- originalTarget: multiRouter.pedestrian.Route\|multiRouter.driving.Route|multiRouter.masstransit.Route\|null - route on which balloon was closed. ||
|| [balloonopen](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/multiRouter.MultiRoute.md#event-balloonopen) | Opening the balloon. Names of fields that are available via the [Event.get](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/Event.md#get) method: 
- originalTarget: multiRouter.pedestrian.Route|multiRouter.driving.Route\|multiRouter.masstransit.Route\|null - route on which balloon was opened. ||
|| [boundsautoapply](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/multiRouter.MultiRoute.md#event-boundsautoapply) | The event occurs at the time of setting the map center and its zoom level for optimal display of the multi-route. Also see the description of the boundsAutoApply option. Instance of the [Event](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/Event.md) class. ||
|| [boundschange](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/multiRouter.MultiRoute.md#event-boundschange) | Changing coordinates of the geographical area covering the multi-route. Instance of the [Event](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/Event.md) class. ||
|| [click](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IDomEventEmitter.md#event-click) | Single left-click on the object. When using, keep in mind that mouse events are emulated when a touch screen is used. Instance of the [MapEvent](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/MapEvent.md) class. More information is available in [domEvent.manager](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/domEvent.manager.md).

Inherited from [IDomEventEmitter](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IDomEventEmitter.md#event-click). ||
|| [contextmenu](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IDomEventEmitter.md#event-contextmenu) | Calls the element's context menu. When using, keep in mind that mouse events are emulated when a touch screen is used. Instance of the [MapEvent](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/MapEvent.md) class. More information is available in [domEvent.manager](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/domEvent.manager.md).

Inherited from [IDomEventEmitter](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IDomEventEmitter.md#event-contextmenu). ||
|| [dblclick](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IDomEventEmitter.md#event-dblclick) | Double left-click on the object. When using, keep in mind that mouse events are emulated when a touch screen is used. Instance of the [MapEvent](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/MapEvent.md) class. More information is available in [domEvent.manager](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/domEvent.manager.md).

Inherited from [IDomEventEmitter](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IDomEventEmitter.md#event-dblclick). ||
|| [geometrychange](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IGeoObject.md#event-geometrychange) | Change to the geo object geometry. Instance of the [Event](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/Event.md) class. Names of fields that are available via the [Event.get](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/Event.md#get) method: 
- originalEvent: [IEvent](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IEvent.md) - Original event of the geometry.

Inherited from [IGeoObject](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IGeoObject.md#event-geometrychange). ||
|| [mapchange](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IParentOnMap.md#event-mapchange) | Map reference changed. Data fields: 
- oldMap - Old map.
- newMap - New map.

Inherited from [IParentOnMap](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IParentOnMap.md#event-mapchange). ||
|| [mousedown](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IDomEventEmitter.md#event-mousedown) | Pressing the mouse button over the object. When using, keep in mind that mouse events are emulated when a touch screen is used. Instance of the [MapEvent](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/MapEvent.md) class. More information is available in [domEvent.manager](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/domEvent.manager.md).

Inherited from [IDomEventEmitter](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IDomEventEmitter.md#event-mousedown). ||
|| [mouseenter](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IDomEventEmitter.md#event-mouseenter) | Pointing the cursor at the object. When using, keep in mind that mouse events are emulated when a touch screen is used. Instance of the [MapEvent](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/MapEvent.md) class. More information is available in [domEvent.manager](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/domEvent.manager.md).

Inherited from [IDomEventEmitter](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IDomEventEmitter.md#event-mouseenter). ||
|| [mouseleave](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IDomEventEmitter.md#event-mouseleave) | Moving the cursor off of the object. When using, keep in mind that mouse events are emulated when a touch screen is used. Instance of the [MapEvent](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/MapEvent.md) class. More information is available in [domEvent.manager](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/domEvent.manager.md).

Inherited from [IDomEventEmitter](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IDomEventEmitter.md#event-mouseleave). ||
|| [mousemove](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IDomEventEmitter.md#event-mousemove) | Moving the cursor over the object. When using, keep in mind that mouse events are emulated when a touch screen is used. Instance of the [MapEvent](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/MapEvent.md) class. More information is available in [domEvent.manager](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/domEvent.manager.md).

Inherited from [IDomEventEmitter](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IDomEventEmitter.md#event-mousemove). ||
|| [mouseup](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IDomEventEmitter.md#event-mouseup) | Letting go of the mouse button over an object. When using, keep in mind that mouse events are emulated when a touch screen is used. Instance of the [MapEvent](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/MapEvent.md) class. More information is available in [domEvent.manager](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/domEvent.manager.md).

Inherited from [IDomEventEmitter](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IDomEventEmitter.md#event-mouseup). ||
|| [multitouchend](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IDomEventEmitter.md#event-multitouchend) | End of multitouch. This event is only available on devices that support multitouch. Returns an implementation of the IMultiTouchEvent interface.

Inherited from [IDomEventEmitter](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IDomEventEmitter.md#event-multitouchend). ||
|| [multitouchmove](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IDomEventEmitter.md#event-multitouchmove) | Repeating event during multitouch. This event is only available on devices that support multitouch. Returns an implementation of the IMultiTouchEvent interface with information about touches. Defines the touches property, which contains a list of touches. Every touch is described by an object that contains the following fields: 
- clientX - X coordinate of the touch relative to the viewable area of the browser.
- clientY - Y coordinate of the touch relative to the viewable area of the browser.
- pageX - X coordinate of the touch relative to the beginning of the document.
- pageY - Y coordinate of the touch relative to the beginning of the document.

Inherited from [IDomEventEmitter](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IDomEventEmitter.md#event-multitouchmove). ||
|| [multitouchstart](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IDomEventEmitter.md#event-multitouchstart) | Start of multitouch. This event is only available on devices that support multitouch. Returns an implementation of the IMultiTouchEvent interface with information about touches. Defines the touches property, which contains a list of touches. Every touch is described by an object that contains the following fields: 
- clientX - X coordinate of the touch relative to the viewable area of the browser.
- clientY - Y coordinate of the touch relative to the viewable area of the browser.
- pageX - X coordinate of the touch relative to the beginning of the document.
- pageY - Y coordinate of the touch relative to the beginning of the document.

Inherited from [IDomEventEmitter](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IDomEventEmitter.md#event-multitouchstart). ||
|| [optionschange](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/ICustomizable.md#event-optionschange) | Change to the object options.

Inherited from [ICustomizable](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/ICustomizable.md#event-optionschange). ||
|| [overlaychange](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IGeoObject.md#event-overlaychange) | Change to the geo object overlay. Instance of the [Event](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/Event.md) class. Names of fields that are available via the [Event.get](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/Event.md#get) method: 
- overlay: [IOverlay](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IOverlay.md)\|null - Reference to the overlay.
- oldOverlay: [IOverlay](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IOverlay.md)\|null - Previous overlay of the geo object.

Inherited from [IGeoObject](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IGeoObject.md#event-overlaychange). ||
|| [parentchange](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IChild.md#event-parentchange) | The parent object reference changed.

Data fields:

- oldParent - Old parent.
- newParent - New parent.

Inherited from [IChild](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IChild.md#event-parentchange). ||
|| [pixelboundschange](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/multiRouter.MultiRoute.md#event-pixelboundschange) | Changing pixel coordinates of the area covering the multi-route. Instance of the [Event](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/Event.md) class. ||
|| [propertieschange](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IGeoObject.md#event-propertieschange) | Change to the geo object data. Instance of the [Event](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/Event.md) class. Names of fields that are available via the [Event.get](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/Event.md#get) method: 
- originalEvent: [IEvent](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IEvent.md) - Original event of the data manager.

Inherited from [IGeoObject](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IGeoObject.md#event-propertieschange). ||
|| [update](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/multiRouter.MultiRoute.md#event-update) | Updating the multi-route. Instance of the [Event](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/Event.md) class. ||
|| [wheel](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IDomEventEmitter.md#event-wheel) | Mouse wheel scrolling. When using, keep in mind that mouse events are emulated when a touch screen is used. Instance of the [MapEvent](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/MapEvent.md) class. More information is available in [domEvent.manager](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/domEvent.manager.md).

Inherited from [IDomEventEmitter](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IDomEventEmitter.md#event-wheel). ||
|#

## Methods {#methods-summary}

#|
|| **Name** | **Returns** | **Description** ||
|| [getActiveRoute](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/multiRouter.MultiRoute.md#getActiveRoute)() | [multiRouter.driving.Route](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/multiRouter.driving.Route.md)\|[multiRouter.masstransit.Route](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/multiRouter.masstransit.Route.md)\|null | Returns active route. ||
|| [getBounds](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/multiRouter.MultiRoute.md#getBounds)() | Number[][]\|null | Returns the geographical coordinates of the area covering the multi-route. ||
|| [getMap](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IParentOnMap.md#getMap)() | [Map](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/Map.md) | Returns reference to the map.

Inherited from [IParentOnMap](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IParentOnMap.md#getMap). ||
|| [getOverlay](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IGeoObject.md#getOverlay)() | [vow.Promise](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/vow.Promise.md) | Returns the promise object, which is confirmed by the overlay object at the time it is actually created, or is rejected with an appropriate error message.

Inherited from [IGeoObject](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IGeoObject.md#getOverlay). ||
|| [getOverlaySync](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IGeoObject.md#getOverlaySync)() | [IOverlay](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IOverlay.md)\|null | The method provides synchronous access to the overlay.

Inherited from [IGeoObject](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IGeoObject.md#getOverlaySync). ||
|| [getParent](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IChildOnMap.md#getParent)() | [IParentOnMap](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IParentOnMap.md)\|null | Returns link to the parent object, or null if the parent element was not set.

Inherited from [IChildOnMap](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IChildOnMap.md#getParent). ||
|| [getPixelBounds](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/multiRouter.MultiRoute.md#getPixelBounds)() | Number[][]\|null | Returns the global pixel coordinates of the area covering the multi-route. ||
|| [getRoutes](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/multiRouter.MultiRoute.md#getRoutes)() | [GeoObjectCollection](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/GeoObjectCollection.md) | Returns child collection of individual routes on the multi-route. ||
|| [getViaPoints](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/multiRouter.MultiRoute.md#getViaPoints)() | [GeoObjectCollection](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/GeoObjectCollection.md) | Returns child collection of throughpoints for the multi-route. ||
|| [getWayPoints](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/multiRouter.MultiRoute.md#getWayPoints)() | [GeoObjectCollection](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/GeoObjectCollection.md) | Returns child collection of waypoints for the multi-route. ||
|| [setActiveRoute](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/multiRouter.MultiRoute.md#setActiveRoute)([route](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/multiRouter.MultiRoute.md#setActiveRoute-param-route)) | | Sets the active route. The previous active route is deactivated and the [multiRouter.MultiRoute.event:activeroutechange](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/multiRouter.MultiRoute.md#event-activeroutechange) event is generated. ||
|| [setParent](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IChildOnMap.md#setParent)([parent](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IChildOnMap.md#setParent-param-parent)) | [IChildOnMap](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IChildOnMap.md) | Sets the parent object. If the null value is passed, the manager element will only be deleted from the current parent object.

Inherited from [IChildOnMap](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IChildOnMap.md#setParent). ||
|#

## Fields details {#field_detail}

### editor {#editor}

```javascript
{multiRouter.EditorAddon} editor
```

Multiroute editor.

**Example:**

```javascript
// Start of route editing.
ymaps.route(['Moscow', 'Petersburg'], { multiRoute: true })
    .done(function (multiRoute) {
        myMap.geoObjects.add(multiRoute);
        multiRoute.editor.start({
            addWayPoints: true,
            removeWayPoints: true
        });
        // ...
        // End of route editing.
        multiRoute.editor.stop();
    });
```

### model {#model}

```javascript
{multiRouter.MultiRouteModel} model
```

The data model of a multi-route.

## Events details {#event_detail}

### activeroutechange {#activeroutechange}

Change to the active route. Instance of the [Event](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/Event.md) class. Names of fields that are available via the [Event.get](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/Event.md#get) method: 
- oldActiveRoute: multiRouter.driving.Route|multiRouter.masstransit.Route|null - previous active route.

### balloonclose {#balloonclose}

Closing the balloon. Names of fields that are available via the [Event.get](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/Event.md#get) method: 
- originalTarget: multiRouter.pedestrian.Route|multiRouter.driving.Route|multiRouter.masstransit.Route|null - route on which balloon was closed.

### balloonopen {#balloonopen}

Opening the balloon. Names of fields that are available via the [Event.get](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/Event.md#get) method: 
- originalTarget: multiRouter.pedestrian.Route|multiRouter.driving.Route|multiRouter.masstransit.Route|null - route on which balloon was opened.

### boundsautoapply {#boundsautoapply}

The event occurs at the time of setting the map center and its zoom level for optimal display of the multi-route. Also see the description of the boundsAutoApply option. Instance of the [Event](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/Event.md) class.

### boundschange {#boundschange}

Changing coordinates of the geographical area covering the multi-route. Instance of the [Event](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/Event.md) class.

### pixelboundschange {#pixelboundschange}

Changing pixel coordinates of the area covering the multi-route. Instance of the [Event](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/Event.md) class.

### update {#update}

Updating the multi-route. Instance of the [Event](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/Event.md) class.

## Methods details {#method_detail}

### getActiveRoute {#getActiveRoute}

```javascript
{multiRouter.driving.Route|multiRouter.masstransit.Route|null} getActiveRoute()
```

**Returns** active route.

### getBounds {#getBounds}

```javascript
{Number[][]|null} getBounds()
```

**Returns** the geographical coordinates of the area covering the multi-route.

### getPixelBounds {#getPixelBounds}

```javascript
{Number[][]|null} getPixelBounds()
```

**Returns** the global pixel coordinates of the area covering the multi-route.

### getRoutes {#getRoutes}

```javascript
{GeoObjectCollection} getRoutes()
```

**Returns** child collection of individual routes on the multi-route.

### getViaPoints {#getViaPoints}

```javascript
{GeoObjectCollection} getViaPoints()
```

**Returns** child collection of throughpoints for the multi-route.

### getWayPoints {#getWayPoints}

```javascript
{GeoObjectCollection} getWayPoints()
```

**Returns** child collection of waypoints for the multi-route.

### setActiveRoute {#setActiveRoute}

```javascript
{} setActiveRoute(route)
```

Sets the active route. The previous active route is deactivated and the [multiRouter.MultiRoute.event:activeroutechange](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/multiRouter.MultiRoute.md#event-activeroutechange) event is generated.

**Parameters:**

#|
|| **Parameter** | **Default value** | **Description**  ||
|| [`route`](#setActiveRoute-param-route)[*](*star) | — | Type: [multiRouter.driving.Route](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/multiRouter.driving.Route.md)\|[multiRouter.masstransit.Route](https://yandex.com/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/multiRouter.masstransit.Route.md)\|null

Route to activate. ||
|#

\* Mandatory parameter/option.

[*star]: Mandatory parameter/option.