# command: map.add-layers
Description: Add the specified layer(s) to the maps(s). Layers will be inserted in the order specified and will be added above existing layers in the drawing order. Note that an Esri `Layer` object can only be added to one map.

Web only.

**Example:** Adding a CSV layer to the main map using `AddLayersArgs`.

```
{
    "layers": [
        {
            "id": "csv_123",
            "layerType": "CSV",
            "title": "Earthquakes",
            "url": "http://earthquake.usgs.gov/earthquakes/feed/v1.0/summary/2.5_month.csv",
            "columnDelimiter": ",",
            "layerDefinition": {
                "geometryType": "esriGeometryPoint",
                "objectIdField": "__OBJECTID",
                "capabilities": "Query",
                "extent": {
                    "xmin": -20034970.25849882,
                    "ymin": -9494815.985282788,
                    "xmax": 20026086.963133518,
                    "ymax": 14269743.874052156,
                    "spatialReference": {
                        "wkid": 102100
                    }
                }
            },
            "locationInfo": {
                "locationType": "coordinates",
                "latitudeFieldName": "latitude",
                "longitudeFieldName": "longitude"
            }
        }
    ]
}
```

Inputs: `AddLayersArgs`

AddLayersArgs properties:
```json
{
  "layers": {
    "anyOf": [
      {
        "$ref": "#/definitions/@arcgis.core.portal.PortalItem.PortalItem"
      },
      {
        "$ref": "#/definitions/esri.rest-api.ItemJson.ItemJson"
      },
      {
        "$ref": "@vertigis.arcgis-extensions.PortalUri.PortalUri"
      },
      {
        "$ref": "@vertigis.arcgis-extensions.utilities.uri.Uri"
      },
      {
        "$ref": "#/definitions/@arcgis.core.layers.Layer.Layer"
      },
      {
        "$ref": "#/definitions/esri.rest-api.AnnotationLayerJson.AnnotationLayerJson"
      },
      {
        "$ref": "#/definitions/esri.rest-api.BuildingSceneLayerJson.BuildingSceneLayerJson"
      },
      {
        "$ref": "#/definitions/esri.rest-api.CSVLayerJson.CSVLayerJson"
      },
      {
        "$ref": "#/definitions/esri.rest-api.FeatureLayerJson.FeatureLayerJson"
      },
      {
        "$ref": "#/definitions/esri.rest-api.GeoJSONLayerJson.GeoJSONLayerJson"
      },
      {
        "$ref": "#/definitions/esri.rest-api.GeoRSSLayerJson.GeoRSSLayerJson"
      },
      {
        "$ref": "#/definitions/esri.rest-api.GroupLayerJson.GroupLayerJson"
      },
      {
        "$ref": "#/definitions/esri.rest-api.ImageServiceLayerJson.ImageServiceLayerJson"
      },
      {
        "$ref": "#/definitions/esri.rest-api.ImageServiceVectorLayerJson.ImageServiceVectorLayerJson"
      },
      {
        "$ref": "#/definitions/esri.rest-api.IntegratedMeshLayerJson.IntegratedMeshLayerJson"
      },
      {
        "$ref": "#/definitions/esri.rest-api.KMLLayerJson.KMLLayerJson"
      },
      {
        "$ref": "#/definitions/esri.rest-api.MediaLayerJson.MediaLayerJson"
      },
      {
        "$ref": "#/definitions/esri.rest-api.MapServiceLayerJson.MapServiceLayerJson"
      },
      {
        "$ref": "#/definitions/esri.rest-api.PointCloudLayerJson.PointCloudLayerJson"
      },
      {
        "$ref": "#/definitions/esri.rest-api.SceneLayerJson.SceneLayerJson"
      },
      {
        "$ref": "#/definitions/esri.rest-api.StreamLayerJson.StreamLayerJson"
      },
      {
        "$ref": "#/definitions/esri.rest-api.SubtypeGroupLayerJson.SubtypeGroupLayerJson"
      },
      {
        "$ref": "#/definitions/esri.rest-api.TiledImageServiceLayerJson.TiledImageServiceLayerJson"
      },
      {
        "$ref": "#/definitions/esri.rest-api.TiledMapServiceLayerJson.TiledMapServiceLayerJson"
      },
      {
        "$ref": "#/definitions/esri.rest-api.VectorTileLayerJson.VectorTileLayerJson"
      },
      {
        "$ref": "#/definitions/esri.rest-api.WebTileLayerJson.WebTileLayerJson"
      },
      {
        "$ref": "#/definitions/esri.rest-api.WFSLayerJson.WFSLayerJson"
      },
      {
        "$ref": "#/definitions/esri.rest-api.WMSLayerJson.WMSLayerJson"
      },
      {
        "$ref": "@vertigis.arcgis-extensions.mapping._LayerExtension.LayerExtension"
      },
      {
        "items": {
          "$ref": "#/definitions/OperationalLayerLike"
        },
        "type": "array"
      },
      {
        "type": "string"
      }
    ],
    "description": "The layer(s) to add.",
    "isRequired": "true"
  },
  "maps": {
    "description": "The associated map(s) for the layer(s)."
  }
}
```

---
# command: map.add-markup
Description: Adds markup to the map(s).

**Example:** Adding markup to a custom collection using `AddMarkupArgs`.

```
{
    "collection": "my-custom-markup",
    "graphics": [
        {
            "geometry": {
                "x": -13733416.69,
                "y": 6177670.86,
                "spatialReference": {
                    "wkid": 3857
                },
                "type": "point"
            },
            "symbol": {
                "color": [76, 115, 0, 255],
                "size": 16,
                "style": "esriSMSCircle",
                "type": "simple-marker"
            }
        }
    ]
}
```

Inputs: `( CreateGraphicsResult | @arcgis.core.Graphic.Graphic | esri.rest-api.FeatureJson.FeatureJson | @arcgis.core.rest.support.FeatureSet.FeatureSet | ( @arcgis.core.Graphic.Graphic | esri.rest-api.FeatureJson.FeatureJson )[] | AddMarkupArgs )`

CreateGraphicsResult properties:
```json
{
  "graphics": {
    "description": "The resulting graphics.",
    "items": {
      "$ref": "#/definitions/@arcgis.core.Graphic.Graphic"
    },
    "type": "array",
    "isRequired": "true"
  },
  "maps": {
    "description": "The map that the graphics were created on. Only available in Web.",
    "isRequired": "true"
  }
}
```

esri.rest-api.FeatureJson.FeatureJson properties:
```json
{
  "attributes": {
    "description": "The feature attributes. It is a JSON object that contains a dictionary of name-value pairs. The names are the feature field names. The values are the field values and they can be any of the standard JSON types - string, number and boolean. Note that date values are encoded as numbers. The number represents the number of milliseconds since epoch (January 1,\n1970) in UTC."
  },
  "geometry": {
    "description": "The feature geometry."
  },
  "popupInfo": {
    "description": "A popupInfo object defining the content of popup window when you click a feature on the map. Applicable to features in a map notes feature layer only."
  },
  "symbol": {
    "description": "Symbol used for drawing the feature."
  }
}
```

AddMarkupArgs properties:
```json
{
  "collection": {
    "description": "The named collection of markup to operate on. If not specified, the default markup collection will be used.\n\nNote that collections with names prefixed by \"vgs\" are reserved for internal system use and should not be referenced directly.\n\nWeb only.",
    "type": "string"
  },
  "graphics": {
    "anyOf": [
      {
        "$ref": "#/definitions/CreateGraphicsResult"
      },
      {
        "$ref": "#/definitions/@arcgis.core.Graphic.Graphic"
      },
      {
        "items": {
          "$ref": "#/definitions/@arcgis.core.Graphic.Graphic"
        },
        "type": "array"
      },
      {
        "$ref": "#/definitions/esri.rest-api.FeatureJson.FeatureJson"
      },
      {
        "$ref": "#/definitions/@arcgis.core.rest.support.FeatureSet.FeatureSet"
      },
      {
        "items": {
          "anyOf": [
            {
              "$ref": "#/definitions/@arcgis.core.Graphic.Graphic"
            },
            {
              "$ref": "#/definitions/esri.rest-api.FeatureJson.FeatureJson"
            }
          ]
        },
        "type": "array"
      }
    ],
    "description": "The markup to add to the map. `GraphicsLike` is only available in Web."
  },
  "level": {
    "description": "The level (z-order) to assign the markup to. If not specified uses the same level as default markup. Web only."
  },
  "maps": {
    "description": "Map(s) to use for the command/operation."
  }
}
```

---
# command: map.apply-filter-effect
Description: Applies a Filter Effect to the map(s). Web only.

Inputs: `ApplyFilterEffectArgs`

ApplyFilterEffectArgs properties:
```json
{
  "distance": {
    "description": "Specifies a search distance from a given 'geometry' in the spatial filter. In essence, setting this property creates a buffer at the specified size around the input 'geometry'.",
    "type": "number"
  },
  "excludedEffect": {
    "description": "The effect given to features that don't match the filter."
  },
  "featureMode": {
    "description": "How the features are used in the filter effect. 'include' includes new features to any that may exist within an existing effect. 'exclude' removes features that may exist within an existing effect. 'replace' replaces any features that may exist within an existing effect. The default is 'include'."
  },
  "features": {
    "description": "The features to which the filter effect is applied. If the 'layer' property is set, only features from that layer will be effected; otherwise, the filter effect is applied to each of the features' source layers and all other applicable layers on the 'maps' will receive the 'excludedEffect'."
  },
  "geometry": {
    "description": "The geometry to apply to the spatial filter. The spatial relationship, as specified by the 'spatialRelationship' property, will indicate how the geometry should be used to filter features."
  },
  "includedEffect": {
    "description": "The effect given to features that match the filter."
  },
  "layers": {
    "description": "The layer(s) to which the filter effect will be applied. When defined, the filter only gets set on the corresponding LayerView. If no 'layer' is defined, all applicable layers included in the specified 'maps' will receive the filter effect."
  },
  "maps": {
    "description": "The map(s) whose layers will receive the filter effect. If no 'maps' nor 'layer' are defined, all applicable layers on all maps will receive the filter effect."
  },
  "spatialRelationship": {
    "description": "The spatial relationship to filter features in the layer view against the filter 'geometry'."
  },
  "timeExtent": {
    "description": "A range of time with start and end date. Only the features that fall within this time extent will be included."
  },
  "units": {
    "description": "The unit for calculating the buffer distance when 'distance' is defined for the spatial filter. If 'units' is not specified, the unit is derived from the filter geometry's spatial reference."
  },
  "where": {
    "description": "A where clause for the feature filter. Any legal SQL92 where clause operating on the fields in the 'layer' is allowed. The 'where' clause is ignored if no 'layer' is defined.",
    "type": "string"
  }
}
```

---
# command: map.apply-layer-preset
Description: Applies a LayerPreset to the map(s). Web only.

Inputs: `ApplyLayerPresetArgs`

ApplyLayerPresetArgs properties:
```json
{
  "layerPreset": {
    "description": "The LayerPreset to apply.",
    "isRequired": "true"
  },
  "maps": {
    "description": "The map(s) to which the layerPreset will be applied."
  }
}
```

---
# command: map.clear-filter-effects
Description: Clears all Filter Effects from the map(s). Web only.

Inputs: `( @vertigis.arcgis-extensions.mapping.MapExtension.MapExtension | @vertigis.arcgis-extensions.mapping.MapExtension.MapExtension[] | HasMaps )`

HasMaps properties:
```json
{
  "maps": {
    "description": "Map(s) to use for the command/operation."
  }
}
```

---
# command: map.clear-markup
Description: Clears all markup from the map(s).

Inputs: `( ClearMarkupArgs )`

ClearMarkupArgs properties:
```json
{
  "collection": {
    "description": "The named collection of markup to operate on. If not specified, the default markup collection will be used.\n\nNote that collections with names prefixed by \"vgs\" are reserved for internal system use and should not be referenced directly.\n\nWeb only.",
    "type": "string"
  },
  "graphics": {
    "description": "The markup to clear. If not specified will clear all markup in the selected collection."
  },
  "maps": {
    "description": "Map(s) to use for the command/operation."
  }
}
```

---
# command: map.create-note
Description: Create a map note. Web only.

Inputs: `CreateMapNoteArgs`

CreateMapNoteArgs properties:
```json
{
  "attributes": {
    "description": "Optional layout XML attributes to be used for the transient UI container."
  },
  "features": {
    "description": "Optionally the features that can be referenced for inserting snippets."
  },
  "geometry": {
    "description": "The location for the map note.",
    "isRequired": "true"
  },
  "icon": {
    "description": "Optional icon that may be used by the transient UI container.",
    "type": "string"
  },
  "maps": {
    "description": "The map that should show the created note."
  },
  "parent": {
    "description": "The layout ID or ItemRef to target for the command/operation. This component will be the parent of the temporary UI that will be removed after the command/operation completes."
  }
}
```

---
# command: map.edit-note
Description: Edit an existing map note. Web only.

Inputs: `EditMapNotesArgs`

EditMapNotesArgs properties:
```json
{
  "attributes": {
    "description": "Optional layout XML attributes to be used for the transient UI container."
  },
  "features": {
    "description": "Optionally the features that can be referenced for inserting snippets."
  },
  "geometry": {
    "description": "The geometry from which to attempt to select the note."
  },
  "icon": {
    "description": "Optional icon that may be used by the transient UI container.",
    "type": "string"
  },
  "maps": {
    "description": "The map on which to edit the result.",
    "isRequired": "true"
  },
  "parent": {
    "description": "The layout ID or ItemRef to target for the command/operation. This component will be the parent of the temporary UI that will be removed after the command/operation completes."
  }
}
```

---
# command: map.go-to-features
Description: Zooms to (without animation) one or many features on the targeted map(s). Web only.

Inputs: `Features`

Features properties:
```json
{
  "features": {
    "description": "Features to use for the command/operation."
  },
  "maps": {
    "description": "Map(s) to use for the command/operation."
  }
}
```

---
# command: map.go-to-geometry
Description: Zooms to (without animation) one or many geometries on the targeted map(s). Web only.

Inputs: `( @vertigis.api-docs.Features FeatureSet|FeatureList|FeatureStream | CreateGraphicsResult | @arcgis.core.Graphic.Graphic | T_13 | ( @vertigis.arcgis-extensions.data.Feature.FeatureProperties | T_13 )[] | HasFeatures | @arcgis.core.geometry.Extent.Extent | @arcgis.core.geometry.Multipoint.Multipoint | @arcgis.core.geometry.Point.Point | T_18 | @arcgis.core.geometry.Polyline.Polyline | @arcgis.core.geometry.Mesh.Mesh | esri.rest-api.FeatureJson.FeatureJson | @arcgis.core.rest.support.FeatureSet.FeatureSet | ( @arcgis.core.Graphic.Graphic | esri.rest-api.FeatureJson.FeatureJson )[] | esri.rest-api.GeometryJson.PointJson | esri.rest-api.GeometryJson.MultipointJson | esri.rest-api.GeometryJson.PolylineJson | esri.rest-api.GeometryJson.PolygonJson | esri.rest-api.GeometryJson.ExtentJson | ( @arcgis.core.geometry.Extent.Extent | @arcgis.core.geometry.Multipoint.Multipoint | @arcgis.core.geometry.Point.Point | T_18 | @arcgis.core.geometry.Polyline.Polyline | @arcgis.core.geometry.Mesh.Mesh | esri.rest-api.GeometryJson.PointJson | esri.rest-api.GeometryJson.MultipointJson | esri.rest-api.GeometryJson.PolylineJson | esri.rest-api.GeometryJson.PolygonJson | esri.rest-api.GeometryJson.ExtentJson )[] | HasGeometry | HasMapGeometry )`

CreateGraphicsResult properties:
```json
{
  "graphics": {
    "description": "The resulting graphics.",
    "items": {
      "$ref": "#/definitions/@arcgis.core.Graphic.Graphic"
    },
    "type": "array",
    "isRequired": "true"
  },
  "maps": {
    "description": "The map that the graphics were created on. Only available in Web.",
    "isRequired": "true"
  }
}
```

@vertigis.arcgis-extensions.data.Feature.FeatureProperties properties:
```json
{
  "attributes": {
    "anyOf": [
      {},
      {
        "$ref": "Map"
      }
    ],
    "description": "The feature's attributes, keyed by field name."
  },
  "failureMode": {
    "description": "See {@link support /InitializableBase!InitializableBase.failureMode}."
  },
  "geometry": {
    "anyOf": [
      {
        "$ref": "#/definitions/@arcgis.core.geometry.Extent.Extent"
      },
      {
        "$ref": "#/definitions/@arcgis.core.geometry.Multipoint.Multipoint"
      },
      {
        "$ref": "#/definitions/@arcgis.core.geometry.Point.Point"
      },
      {
        "$ref": "T_6"
      },
      {
        "$ref": "#/definitions/@arcgis.core.geometry.Polyline.Polyline"
      },
      {
        "$ref": "#/definitions/@arcgis.core.geometry.Mesh.Mesh"
      },
      {
        "$ref": "#/definitions/esri.rest-api.GeometryJson.PointJson"
      },
      {
        "$ref": "#/definitions/esri.rest-api.GeometryJson.MultipointJson"
      },
      {
        "$ref": "#/definitions/esri.rest-api.GeometryJson.PolylineJson"
      },
      {
        "$ref": "#/definitions/esri.rest-api.GeometryJson.PolygonJson"
      },
      {
        "$ref": "#/definitions/esri.rest-api.GeometryJson.ExtentJson"
      }
    ],
    "description": "The feature's geometry."
  },
  "id": {
    "description": "The unique ID to assign to the entity. If not specified, one will be generated.",
    "type": "string"
  },
  "schema": {
    "description": "Metadata about the feature, such as fields, domains, geometry type, etc."
  },
  "settings": {
    "description": "Settings for this feature."
  },
  "source": {
    "description": "The source of the feature."
  }
}
```

HasFeatures properties:
```json
{
  "features": {
    "description": "Features to use for the command/operation."
  }
}
```

esri.rest-api.FeatureJson.FeatureJson properties:
```json
{
  "attributes": {
    "description": "The feature attributes. It is a JSON object that contains a dictionary of name-value pairs. The names are the feature field names. The values are the field values and they can be any of the standard JSON types - string, number and boolean. Note that date values are encoded as numbers. The number represents the number of milliseconds since epoch (January 1,\n1970) in UTC."
  },
  "geometry": {
    "description": "The feature geometry."
  },
  "popupInfo": {
    "description": "A popupInfo object defining the content of popup window when you click a feature on the map. Applicable to features in a map notes feature layer only."
  },
  "symbol": {
    "description": "Symbol used for drawing the feature."
  }
}
```

esri.rest-api.GeometryJson.PointJson properties:
```json
{
  "m": {
    "description": "M coordinate which contains measures used for linear referencing.",
    "type": "number"
  },
  "spatialReference": {
    "description": "The spatial reference can be defined using a well-known ID (WKID) or well-known text (WKT)."
  },
  "x": {
    "description": "X coordinate which is measured along the east/west axis.",
    "type": [
      "string",
      "number"
    ],
    "isRequired": "true"
  },
  "y": {
    "description": "Y coordinate which is measured along the north/south axis.",
    "type": [
      "string",
      "number"
    ],
    "isRequired": "true"
  },
  "z": {
    "description": "Z coordinate which measures height or elevation.",
    "type": [
      "string",
      "number"
    ]
  }
}
```

esri.rest-api.GeometryJson.MultipointJson properties:
```json
{
  "hasM": {
    "description": "Indicates whether the geometry contains M coordinate values.",
    "type": "boolean"
  },
  "hasZ": {
    "description": "Indicates whether the geometry contains Z coordinate values.",
    "type": "boolean"
  },
  "points": {
    "description": "An array that corresponds to 2D and 3D points.",
    "items": {
      "items": {
        "type": "number"
      },
      "type": "array"
    },
    "type": "array",
    "isRequired": "true"
  },
  "spatialReference": {
    "description": "The spatial reference can be defined using a well-known ID (WKID) or well-known text (WKT)."
  }
}
```

esri.rest-api.GeometryJson.PolylineJson properties:
```json
{
  "hasM": {
    "description": "Indicates whether the geometry contains M coordinate values.",
    "type": "boolean"
  },
  "hasZ": {
    "description": "Indicates whether the geometry contains Z coordinate values.",
    "type": "boolean"
  },
  "paths": {
    "description": "Three nested arrays which corresponds to a polyline.",
    "items": {
      "items": {
        "items": {
          "type": "number"
        },
        "type": "array"
      },
      "type": "array"
    },
    "type": "array",
    "isRequired": "true"
  },
  "spatialReference": {
    "description": "The spatial reference can be defined using a well-known ID (WKID) or well-known text (WKT)."
  }
}
```

esri.rest-api.GeometryJson.PolygonJson properties:
```json
{
  "hasM": {
    "description": "Indicates whether the geometry contains M coordinate values.",
    "type": "boolean"
  },
  "hasZ": {
    "description": "Indicates whether the geometry contains Z coordinate values.",
    "type": "boolean"
  },
  "rings": {
    "description": "Represents an array of points. Each point is an array of numbers.",
    "items": {
      "items": {
        "items": {
          "type": "number"
        },
        "type": "array"
      },
      "type": "array"
    },
    "type": "array",
    "isRequired": "true"
  },
  "spatialReference": {
    "description": "The spatial reference can be defined using a well-known ID (WKID) or well-known text (WKT)."
  }
}
```

esri.rest-api.GeometryJson.ExtentJson properties:
```json
{
  "spatialReference": {
    "description": "The spatial reference can be defined using a well-known ID (WKID) or well-known text (WKT)."
  },
  "xmax": {
    "description": "A numeric value indicating the top-right X-coordinate of an extent envelope.",
    "type": "number"
  },
  "xmin": {
    "description": "A numeric value indicating the bottom-left X-coordinate of an extent envelope.",
    "type": "number"
  },
  "ymax": {
    "description": "A numeric value indicating the top-right Y-coordinate of an extent envelope.",
    "type": "number"
  },
  "ymin": {
    "description": "A numeric value indicating the bottom-left Y-coordinate of an extent envelope.",
    "type": "number"
  }
}
```

esri.rest-api.GeometryJson.PointJson properties:
```json
{
  "m": {
    "description": "M coordinate which contains measures used for linear referencing.",
    "type": "number"
  },
  "spatialReference": {
    "description": "The spatial reference can be defined using a well-known ID (WKID) or well-known text (WKT)."
  },
  "x": {
    "description": "X coordinate which is measured along the east/west axis.",
    "type": [
      "string",
      "number"
    ],
    "isRequired": "true"
  },
  "y": {
    "description": "Y coordinate which is measured along the north/south axis.",
    "type": [
      "string",
      "number"
    ],
    "isRequired": "true"
  },
  "z": {
    "description": "Z coordinate which measures height or elevation.",
    "type": [
      "string",
      "number"
    ]
  }
}
```

esri.rest-api.GeometryJson.MultipointJson properties:
```json
{
  "hasM": {
    "description": "Indicates whether the geometry contains M coordinate values.",
    "type": "boolean"
  },
  "hasZ": {
    "description": "Indicates whether the geometry contains Z coordinate values.",
    "type": "boolean"
  },
  "points": {
    "description": "An array that corresponds to 2D and 3D points.",
    "items": {
      "items": {
        "type": "number"
      },
      "type": "array"
    },
    "type": "array",
    "isRequired": "true"
  },
  "spatialReference": {
    "description": "The spatial reference can be defined using a well-known ID (WKID) or well-known text (WKT)."
  }
}
```

esri.rest-api.GeometryJson.PolylineJson properties:
```json
{
  "hasM": {
    "description": "Indicates whether the geometry contains M coordinate values.",
    "type": "boolean"
  },
  "hasZ": {
    "description": "Indicates whether the geometry contains Z coordinate values.",
    "type": "boolean"
  },
  "paths": {
    "description": "Three nested arrays which corresponds to a polyline.",
    "items": {
      "items": {
        "items": {
          "type": "number"
        },
        "type": "array"
      },
      "type": "array"
    },
    "type": "array",
    "isRequired": "true"
  },
  "spatialReference": {
    "description": "The spatial reference can be defined using a well-known ID (WKID) or well-known text (WKT)."
  }
}
```

esri.rest-api.GeometryJson.PolygonJson properties:
```json
{
  "hasM": {
    "description": "Indicates whether the geometry contains M coordinate values.",
    "type": "boolean"
  },
  "hasZ": {
    "description": "Indicates whether the geometry contains Z coordinate values.",
    "type": "boolean"
  },
  "rings": {
    "description": "Represents an array of points. Each point is an array of numbers.",
    "items": {
      "items": {
        "items": {
          "type": "number"
        },
        "type": "array"
      },
      "type": "array"
    },
    "type": "array",
    "isRequired": "true"
  },
  "spatialReference": {
    "description": "The spatial reference can be defined using a well-known ID (WKID) or well-known text (WKT)."
  }
}
```

HasGeometry properties:
```json
{
  "geometry": {
    "description": "The geometry to use for the command/operation."
  }
}
```

HasMapGeometry properties:
```json
{
  "geometry": {
    "description": "The geometry to target."
  },
  "maps": {
    "description": "The map(s) to target."
  }
}
```

---
# command: map.go-to-initial-viewpoint
Description: Zooms (without animation) the map to its initial viewpoint. If map is omitted, all maps will be targeted. Web only.

Inputs: `( @vertigis.arcgis-extensions.mapping.MapExtension.MapExtension | @vertigis.arcgis-extensions.mapping.MapExtension.MapExtension[] | HasMaps )`

HasMaps properties:
```json
{
  "maps": {
    "description": "Map(s) to use for the command/operation."
  }
}
```

---
# command: map.go-to-layer-extent
Description: Go to (without animation) the full extent of the layer(s). If more than one layer is specified, it will zoom to the combined extent of all layers. Web only.

Inputs: `ZoomToLayerArgs`

ZoomToLayerArgs properties:
```json
{
  "layers": {
    "description": "The layer(s) to zoom to.",
    "isRequired": "true"
  },
  "maps": {
    "description": "The map(s) to zoom. If omitted, all maps will be zoomed."
  }
}
```

---
# command: map.go-to-next-viewpoint
Description: Zooms to (without animation) the next viewpoint to undo viewpoint changes from zooming to a previous viewpoint.

Note that if no map is included as an argument, the command will run for all maps, which could result in unexpected behavior. Web only.

Inputs: `( @vertigis.arcgis-extensions.mapping.MapExtension.MapExtension | @vertigis.arcgis-extensions.mapping.MapExtension.MapExtension[] | HasMaps )`

HasMaps properties:
```json
{
  "maps": {
    "description": "Map(s) to use for the command/operation."
  }
}
```

---
# command: map.go-to-previous-viewpoint
Description: Zooms to (without animation) the previous viewpoint.

Note that if no map is included as an argument, the command will run for all maps, which could result in unexpected behavior. Web only.

Inputs: `( @vertigis.arcgis-extensions.mapping.MapExtension.MapExtension | @vertigis.arcgis-extensions.mapping.MapExtension.MapExtension[] | HasMaps )`

HasMaps properties:
```json
{
  "maps": {
    "description": "Map(s) to use for the command/operation."
  }
}
```

---
# command: map.go-to-scale
Description: Zooms (without animation) the map to a specified, numerical scale. Web only.

Inputs: `ZoomToScaleArgs`

ZoomToScaleArgs properties:
```json
{
  "maps": {
    "description": "The map(s) to zoom. If omitted, all maps will be zoomed."
  },
  "scale": {
    "description": "The scale to zoom to.",
    "type": "number",
    "isRequired": "true"
  }
}
```

---
# command: map.go-to-viewpoint
Description: Zooms to (without animation) the given viewpoint. Web only.

Inputs: `( @vertigis.arcgis-extensions.mapping.Bookmark.BookmarkProperties | @arcgis.core.Viewpoint.Viewpoint | esri.rest-api.ViewpointJson.ViewpointJson | T_53 | ZoomToViewpointArgs )`

@vertigis.arcgis-extensions.mapping.Bookmark.BookmarkProperties properties:
```json
{
  "id": {
    "description": "The unique ID to assign to the entity. If not specified, one will be generated.",
    "type": "string"
  },
  "source": {
    "description": "See {@link mapping /Bookmark!Bookmark.source}."
  },
  "title": {
    "description": "See {@link mapping /Bookmark!Bookmark.title}.",
    "type": "string"
  },
  "viewpoint": {
    "anyOf": [
      {
        "$ref": "#/definitions/@arcgis.core.Viewpoint.Viewpoint"
      },
      {
        "$ref": "#/definitions/esri.rest-api.ViewpointJson.ViewpointJson"
      }
    ],
    "description": "See {@link mapping /Bookmark!Bookmark.viewpoint}."
  }
}
```

esri.rest-api.ViewpointJson.ViewpointJson properties:
```json
{
  "camera": {
    "description": "The camera defines the position, tilt, and heading of the point from which the SceneView's visible extent is observed."
  },
  "rotation": {
    "description": "The rotation of due north in relation to the top of the view in degrees.",
    "type": "number"
  },
  "scale": {
    "description": "The scale of the viewpoint.",
    "type": "number"
  },
  "targetGeometry": {
    "description": "The target geometry framed by the viewpoint."
  }
}
```

ZoomToViewpointArgs properties:
```json
{
  "maps": {
    "description": "The map(s) to zoom. If omitted, all maps will be zoomed."
  },
  "viewpoint": {
    "anyOf": [
      {
        "$ref": "#/definitions/@vertigis.arcgis-extensions.mapping.Bookmark.BookmarkProperties"
      },
      {
        "$ref": "#/definitions/@arcgis.core.Viewpoint.Viewpoint"
      },
      {
        "$ref": "#/definitions/esri.rest-api.ViewpointJson.ViewpointJson"
      },
      {
        "$ref": "T_52"
      },
      {
        "type": "string"
      }
    ],
    "description": "The viewpoint to zoom to.",
    "isRequired": "true"
  }
}
```

---
# command: map.hide-markup
Description: Show the specified markup collection, if hidden. If no collection is specified the default markup collection will be shown. Web only.

Inputs: `( MarkupArgs )`

MarkupArgs properties:
```json
{
  "collection": {
    "description": "The named collection of markup to operate on. If not specified, the default markup collection will be used.\n\nNote that collections with names prefixed by \"vgs\" are reserved for internal system use and should not be referenced directly.\n\nWeb only.",
    "type": "string"
  },
  "maps": {
    "description": "Map(s) to use for the command/operation."
  }
}
```

---
# command: map.pan-to-features
Description: Pans (without zooming) to one or many features on the targeted map(s).

Inputs: `ZoomToFeaturesArgs`

ZoomToFeaturesArgs properties:
```json
{
  "features": {
    "description": "The feature(s) to zoom to.",
    "isRequired": "true"
  },
  "maps": {
    "description": "The map(s) to zoom. If omitted, all maps will be zoomed."
  }
}
```

---
# command: map.pan-to-geometry
Description: Pan (without zooming) to one or many geometries on the targeted map(s). Web only.

Inputs: `( @vertigis.api-docs.Features FeatureSet|FeatureList|FeatureStream | CreateGraphicsResult | @arcgis.core.Graphic.Graphic | T_13 | ( @vertigis.arcgis-extensions.data.Feature.FeatureProperties | T_13 )[] | HasFeatures | @arcgis.core.geometry.Extent.Extent | @arcgis.core.geometry.Multipoint.Multipoint | @arcgis.core.geometry.Point.Point | T_18 | @arcgis.core.geometry.Polyline.Polyline | @arcgis.core.geometry.Mesh.Mesh | esri.rest-api.FeatureJson.FeatureJson | @arcgis.core.rest.support.FeatureSet.FeatureSet | ( @arcgis.core.Graphic.Graphic | esri.rest-api.FeatureJson.FeatureJson )[] | esri.rest-api.GeometryJson.PointJson | esri.rest-api.GeometryJson.MultipointJson | esri.rest-api.GeometryJson.PolylineJson | esri.rest-api.GeometryJson.PolygonJson | esri.rest-api.GeometryJson.ExtentJson | ( @arcgis.core.geometry.Extent.Extent | @arcgis.core.geometry.Multipoint.Multipoint | @arcgis.core.geometry.Point.Point | T_18 | @arcgis.core.geometry.Polyline.Polyline | @arcgis.core.geometry.Mesh.Mesh | esri.rest-api.GeometryJson.PointJson | esri.rest-api.GeometryJson.MultipointJson | esri.rest-api.GeometryJson.PolylineJson | esri.rest-api.GeometryJson.PolygonJson | esri.rest-api.GeometryJson.ExtentJson )[] | HasGeometry | HasMapGeometry )`

CreateGraphicsResult properties:
```json
{
  "graphics": {
    "description": "The resulting graphics.",
    "items": {
      "$ref": "#/definitions/@arcgis.core.Graphic.Graphic"
    },
    "type": "array",
    "isRequired": "true"
  },
  "maps": {
    "description": "The map that the graphics were created on. Only available in Web.",
    "isRequired": "true"
  }
}
```

@vertigis.arcgis-extensions.data.Feature.FeatureProperties properties:
```json
{
  "attributes": {
    "anyOf": [
      {},
      {
        "$ref": "Map"
      }
    ],
    "description": "The feature's attributes, keyed by field name."
  },
  "failureMode": {
    "description": "See {@link support /InitializableBase!InitializableBase.failureMode}."
  },
  "geometry": {
    "anyOf": [
      {
        "$ref": "#/definitions/@arcgis.core.geometry.Extent.Extent"
      },
      {
        "$ref": "#/definitions/@arcgis.core.geometry.Multipoint.Multipoint"
      },
      {
        "$ref": "#/definitions/@arcgis.core.geometry.Point.Point"
      },
      {
        "$ref": "T_6"
      },
      {
        "$ref": "#/definitions/@arcgis.core.geometry.Polyline.Polyline"
      },
      {
        "$ref": "#/definitions/@arcgis.core.geometry.Mesh.Mesh"
      },
      {
        "$ref": "#/definitions/esri.rest-api.GeometryJson.PointJson"
      },
      {
        "$ref": "#/definitions/esri.rest-api.GeometryJson.MultipointJson"
      },
      {
        "$ref": "#/definitions/esri.rest-api.GeometryJson.PolylineJson"
      },
      {
        "$ref": "#/definitions/esri.rest-api.GeometryJson.PolygonJson"
      },
      {
        "$ref": "#/definitions/esri.rest-api.GeometryJson.ExtentJson"
      }
    ],
    "description": "The feature's geometry."
  },
  "id": {
    "description": "The unique ID to assign to the entity. If not specified, one will be generated.",
    "type": "string"
  },
  "schema": {
    "description": "Metadata about the feature, such as fields, domains, geometry type, etc."
  },
  "settings": {
    "description": "Settings for this feature."
  },
  "source": {
    "description": "The source of the feature."
  }
}
```

HasFeatures properties:
```json
{
  "features": {
    "description": "Features to use for the command/operation."
  }
}
```

esri.rest-api.FeatureJson.FeatureJson properties:
```json
{
  "attributes": {
    "description": "The feature attributes. It is a JSON object that contains a dictionary of name-value pairs. The names are the feature field names. The values are the field values and they can be any of the standard JSON types - string, number and boolean. Note that date values are encoded as numbers. The number represents the number of milliseconds since epoch (January 1,\n1970) in UTC."
  },
  "geometry": {
    "description": "The feature geometry."
  },
  "popupInfo": {
    "description": "A popupInfo object defining the content of popup window when you click a feature on the map. Applicable to features in a map notes feature layer only."
  },
  "symbol": {
    "description": "Symbol used for drawing the feature."
  }
}
```

esri.rest-api.GeometryJson.PointJson properties:
```json
{
  "m": {
    "description": "M coordinate which contains measures used for linear referencing.",
    "type": "number"
  },
  "spatialReference": {
    "description": "The spatial reference can be defined using a well-known ID (WKID) or well-known text (WKT)."
  },
  "x": {
    "description": "X coordinate which is measured along the east/west axis.",
    "type": [
      "string",
      "number"
    ],
    "isRequired": "true"
  },
  "y": {
    "description": "Y coordinate which is measured along the north/south axis.",
    "type": [
      "string",
      "number"
    ],
    "isRequired": "true"
  },
  "z": {
    "description": "Z coordinate which measures height or elevation.",
    "type": [
      "string",
      "number"
    ]
  }
}
```

esri.rest-api.GeometryJson.MultipointJson properties:
```json
{
  "hasM": {
    "description": "Indicates whether the geometry contains M coordinate values.",
    "type": "boolean"
  },
  "hasZ": {
    "description": "Indicates whether the geometry contains Z coordinate values.",
    "type": "boolean"
  },
  "points": {
    "description": "An array that corresponds to 2D and 3D points.",
    "items": {
      "items": {
        "type": "number"
      },
      "type": "array"
    },
    "type": "array",
    "isRequired": "true"
  },
  "spatialReference": {
    "description": "The spatial reference can be defined using a well-known ID (WKID) or well-known text (WKT)."
  }
}
```

esri.rest-api.GeometryJson.PolylineJson properties:
```json
{
  "hasM": {
    "description": "Indicates whether the geometry contains M coordinate values.",
    "type": "boolean"
  },
  "hasZ": {
    "description": "Indicates whether the geometry contains Z coordinate values.",
    "type": "boolean"
  },
  "paths": {
    "description": "Three nested arrays which corresponds to a polyline.",
    "items": {
      "items": {
        "items": {
          "type": "number"
        },
        "type": "array"
      },
      "type": "array"
    },
    "type": "array",
    "isRequired": "true"
  },
  "spatialReference": {
    "description": "The spatial reference can be defined using a well-known ID (WKID) or well-known text (WKT)."
  }
}
```

esri.rest-api.GeometryJson.PolygonJson properties:
```json
{
  "hasM": {
    "description": "Indicates whether the geometry contains M coordinate values.",
    "type": "boolean"
  },
  "hasZ": {
    "description": "Indicates whether the geometry contains Z coordinate values.",
    "type": "boolean"
  },
  "rings": {
    "description": "Represents an array of points. Each point is an array of numbers.",
    "items": {
      "items": {
        "items": {
          "type": "number"
        },
        "type": "array"
      },
      "type": "array"
    },
    "type": "array",
    "isRequired": "true"
  },
  "spatialReference": {
    "description": "The spatial reference can be defined using a well-known ID (WKID) or well-known text (WKT)."
  }
}
```

esri.rest-api.GeometryJson.ExtentJson properties:
```json
{
  "spatialReference": {
    "description": "The spatial reference can be defined using a well-known ID (WKID) or well-known text (WKT)."
  },
  "xmax": {
    "description": "A numeric value indicating the top-right X-coordinate of an extent envelope.",
    "type": "number"
  },
  "xmin": {
    "description": "A numeric value indicating the bottom-left X-coordinate of an extent envelope.",
    "type": "number"
  },
  "ymax": {
    "description": "A numeric value indicating the top-right Y-coordinate of an extent envelope.",
    "type": "number"
  },
  "ymin": {
    "description": "A numeric value indicating the bottom-left Y-coordinate of an extent envelope.",
    "type": "number"
  }
}
```

esri.rest-api.GeometryJson.PointJson properties:
```json
{
  "m": {
    "description": "M coordinate which contains measures used for linear referencing.",
    "type": "number"
  },
  "spatialReference": {
    "description": "The spatial reference can be defined using a well-known ID (WKID) or well-known text (WKT)."
  },
  "x": {
    "description": "X coordinate which is measured along the east/west axis.",
    "type": [
      "string",
      "number"
    ],
    "isRequired": "true"
  },
  "y": {
    "description": "Y coordinate which is measured along the north/south axis.",
    "type": [
      "string",
      "number"
    ],
    "isRequired": "true"
  },
  "z": {
    "description": "Z coordinate which measures height or elevation.",
    "type": [
      "string",
      "number"
    ]
  }
}
```

esri.rest-api.GeometryJson.MultipointJson properties:
```json
{
  "hasM": {
    "description": "Indicates whether the geometry contains M coordinate values.",
    "type": "boolean"
  },
  "hasZ": {
    "description": "Indicates whether the geometry contains Z coordinate values.",
    "type": "boolean"
  },
  "points": {
    "description": "An array that corresponds to 2D and 3D points.",
    "items": {
      "items": {
        "type": "number"
      },
      "type": "array"
    },
    "type": "array",
    "isRequired": "true"
  },
  "spatialReference": {
    "description": "The spatial reference can be defined using a well-known ID (WKID) or well-known text (WKT)."
  }
}
```

esri.rest-api.GeometryJson.PolylineJson properties:
```json
{
  "hasM": {
    "description": "Indicates whether the geometry contains M coordinate values.",
    "type": "boolean"
  },
  "hasZ": {
    "description": "Indicates whether the geometry contains Z coordinate values.",
    "type": "boolean"
  },
  "paths": {
    "description": "Three nested arrays which corresponds to a polyline.",
    "items": {
      "items": {
        "items": {
          "type": "number"
        },
        "type": "array"
      },
      "type": "array"
    },
    "type": "array",
    "isRequired": "true"
  },
  "spatialReference": {
    "description": "The spatial reference can be defined using a well-known ID (WKID) or well-known text (WKT)."
  }
}
```

esri.rest-api.GeometryJson.PolygonJson properties:
```json
{
  "hasM": {
    "description": "Indicates whether the geometry contains M coordinate values.",
    "type": "boolean"
  },
  "hasZ": {
    "description": "Indicates whether the geometry contains Z coordinate values.",
    "type": "boolean"
  },
  "rings": {
    "description": "Represents an array of points. Each point is an array of numbers.",
    "items": {
      "items": {
        "items": {
          "type": "number"
        },
        "type": "array"
      },
      "type": "array"
    },
    "type": "array",
    "isRequired": "true"
  },
  "spatialReference": {
    "description": "The spatial reference can be defined using a well-known ID (WKID) or well-known text (WKT)."
  }
}
```

HasGeometry properties:
```json
{
  "geometry": {
    "description": "The geometry to use for the command/operation."
  }
}
```

HasMapGeometry properties:
```json
{
  "geometry": {
    "description": "The geometry to target."
  },
  "maps": {
    "description": "The map(s) to target."
  }
}
```

---
# command: map.remove-filter-effects
Description: Removes a Filter Effect(s) from the map(s). Web only.

Inputs: `Layers`

Layers properties:
```json
{
  "id": {
    "description": "The table's ID.",
    "type": "string"
  },
  "path": {
    "description": "The path to the geodatabase used by an MMAP layer. Mobile only.",
    "type": "string"
  },
  "subtype": {
    "description": "The Layer's type, used for Layer types with multiple possible layer extension mappings.",
    "type": "string"
  },
  "title": {
    "description": "The table's title.",
    "type": "string"
  },
  "url": {
    "description": "The layer's url.",
    "type": "string"
  },
  "@arcgis.core.layers.Layer.Layer": {
    "$ref": "esri.layers.Layer"
  },
  "layers": {
    "description": "Layer(s) to use for the command/operation."
  }
}
```

---
# command: map.remove-layers
Description: Remove the specified layer(s) from the map(s). Web only.

Inputs: `( @vertigis.arcgis-extensions.mapping._LayerExtension.LayerReference | @vertigis.arcgis-extensions.data._TableExtension.TableReference | @arcgis.core.layers.Layer.Layer | @vertigis.arcgis-extensions.mapping._LayerExtension.LayerExtension | esri.SublayerLike | @vertigis.arcgis-extensions.mapping._SublayerExtension.SublayerExtension | @vertigis.arcgis-extensions.data._TableExtension.TableExtension | LayerLike[] | RemoveLayersArgs | string )`

@vertigis.arcgis-extensions.mapping._LayerExtension.LayerReference properties:
```json
{
  "id": {
    "description": "The layer's ID.",
    "type": "string"
  },
  "path": {
    "description": "The path to the geodatabase used by an MMAP layer. Mobile only.",
    "type": "string"
  },
  "subtype": {
    "description": "The Layer's type, used for Layer types with multiple possible layer extension mappings.",
    "type": "string"
  },
  "title": {
    "description": "The layer's title.",
    "type": "string"
  },
  "url": {
    "description": "The layer's url.",
    "type": "string"
  }
}
```

@vertigis.arcgis-extensions.data._TableExtension.TableReference properties:
```json
{
  "id": {
    "description": "The table's ID.",
    "type": "string"
  },
  "title": {
    "description": "The table's title.",
    "type": "string"
  }
}
```

RemoveLayersArgs properties:
```json
{
  "layers": {
    "description": "The layer(s) to remove.",
    "isRequired": "true"
  },
  "maps": {
    "description": "The associated map(s) for the layer(s)."
  }
}
```

---
# command: map.rotate-by
Description: Rotates the map by the specified amount.

Inputs: `MapRotateArgs`

MapRotateArgs properties:
```json
{
  "maps": {
    "description": "The map to rotate."
  },
  "rotation": {
    "description": "The number of degrees clock-wise, with North being 0 degrees.",
    "type": "number",
    "isRequired": "true"
  }
}
```

---
# command: map.rotate-to
Description: Rotates the map to the specified angle.

Inputs: `MapRotateArgs`

MapRotateArgs properties:
```json
{
  "maps": {
    "description": "The map to rotate."
  },
  "rotation": {
    "description": "The number of degrees clock-wise, with North being 0 degrees.",
    "type": "number",
    "isRequired": "true"
  }
}
```

---
# command: map.set-view-mode
Description: Changes the view mode of a map to the specified mode, if supported. If no maps are specified, all maps will be targeted. Web only.

Inputs: `( SetViewModeArgs | "map" | "scene" )`

SetViewModeArgs properties:
```json
{
  "maps": {
    "description": "Map(s) to use for the command/operation."
  },
  "viewMode": {
    "description": "The new view mode for the specified map(s).",
    "isRequired": "true"
  }
}
```

---
# command: map.show-markup
Description: Show the specified markup collection, if hidden. If no collection is specified the default markup collection will be shown. Web only.

Inputs: `( MarkupArgs )`

MarkupArgs properties:
```json
{
  "collection": {
    "description": "The named collection of markup to operate on. If not specified, the default markup collection will be used.\n\nNote that collections with names prefixed by \"vgs\" are reserved for internal system use and should not be referenced directly.\n\nWeb only.",
    "type": "string"
  },
  "maps": {
    "description": "Map(s) to use for the command/operation."
  }
}
```

---
# command: map.update-layer
Description: Updates a layer in the map. Web only.

Inputs: `UpdateLayerArgs`

UpdateLayerArgs properties:
```json
{
  "layerJson": {
    "description": "The web map spec JSON used to update the Layer.",
    "isRequired": "true"
  },
  "layers": {
    "description": "The layer to update. If more than one layer is present, only the first will be updated and the rest will be ignored.",
    "isRequired": "true"
  },
  "maps": {
    "description": "The associated map(s) for the layer(s)."
  }
}
```

---
# command: map.zoom-in
Description: Zooms the map in by one level of detail. Web only.

Inputs: `( @vertigis.arcgis-extensions.mapping.MapExtension.MapExtension | @vertigis.arcgis-extensions.mapping.MapExtension.MapExtension[] | HasMaps )`

HasMaps properties:
```json
{
  "maps": {
    "description": "Map(s) to use for the command/operation."
  }
}
```

---
# command: map.zoom-out
Description: Zooms the map out by one level of detail. Web only.

Inputs: `( @vertigis.arcgis-extensions.mapping.MapExtension.MapExtension | @vertigis.arcgis-extensions.mapping.MapExtension.MapExtension[] | HasMaps )`

HasMaps properties:
```json
{
  "maps": {
    "description": "Map(s) to use for the command/operation."
  }
}
```

---
# command: map.zoom-to-features
Description: Zooms to one or many features.

Inputs: `ZoomToFeaturesArgs`

ZoomToFeaturesArgs properties:
```json
{
  "features": {
    "description": "The feature(s) to zoom to.",
    "isRequired": "true"
  },
  "maps": {
    "description": "The map(s) to zoom. If omitted, all maps will be zoomed."
  }
}
```

---
# command: map.zoom-to-geometry
Description: Zooms to one or many geometries. Web only.

Inputs: `( @vertigis.api-docs.Features FeatureSet|FeatureList|FeatureStream | CreateGraphicsResult | @arcgis.core.Graphic.Graphic | T_13 | ( @vertigis.arcgis-extensions.data.Feature.FeatureProperties | T_13 )[] | HasFeatures | @arcgis.core.geometry.Extent.Extent | @arcgis.core.geometry.Multipoint.Multipoint | @arcgis.core.geometry.Point.Point | T_18 | @arcgis.core.geometry.Polyline.Polyline | @arcgis.core.geometry.Mesh.Mesh | esri.rest-api.FeatureJson.FeatureJson | @arcgis.core.rest.support.FeatureSet.FeatureSet | ( @arcgis.core.Graphic.Graphic | esri.rest-api.FeatureJson.FeatureJson )[] | esri.rest-api.GeometryJson.PointJson | esri.rest-api.GeometryJson.MultipointJson | esri.rest-api.GeometryJson.PolylineJson | esri.rest-api.GeometryJson.PolygonJson | esri.rest-api.GeometryJson.ExtentJson | ( @arcgis.core.geometry.Extent.Extent | @arcgis.core.geometry.Multipoint.Multipoint | @arcgis.core.geometry.Point.Point | T_18 | @arcgis.core.geometry.Polyline.Polyline | @arcgis.core.geometry.Mesh.Mesh | esri.rest-api.GeometryJson.PointJson | esri.rest-api.GeometryJson.MultipointJson | esri.rest-api.GeometryJson.PolylineJson | esri.rest-api.GeometryJson.PolygonJson | esri.rest-api.GeometryJson.ExtentJson )[] | HasGeometry | HasMapGeometry )`

CreateGraphicsResult properties:
```json
{
  "graphics": {
    "description": "The resulting graphics.",
    "items": {
      "$ref": "#/definitions/@arcgis.core.Graphic.Graphic"
    },
    "type": "array",
    "isRequired": "true"
  },
  "maps": {
    "description": "The map that the graphics were created on. Only available in Web.",
    "isRequired": "true"
  }
}
```

@vertigis.arcgis-extensions.data.Feature.FeatureProperties properties:
```json
{
  "attributes": {
    "anyOf": [
      {},
      {
        "$ref": "Map"
      }
    ],
    "description": "The feature's attributes, keyed by field name."
  },
  "failureMode": {
    "description": "See {@link support /InitializableBase!InitializableBase.failureMode}."
  },
  "geometry": {
    "anyOf": [
      {
        "$ref": "#/definitions/@arcgis.core.geometry.Extent.Extent"
      },
      {
        "$ref": "#/definitions/@arcgis.core.geometry.Multipoint.Multipoint"
      },
      {
        "$ref": "#/definitions/@arcgis.core.geometry.Point.Point"
      },
      {
        "$ref": "T_6"
      },
      {
        "$ref": "#/definitions/@arcgis.core.geometry.Polyline.Polyline"
      },
      {
        "$ref": "#/definitions/@arcgis.core.geometry.Mesh.Mesh"
      },
      {
        "$ref": "#/definitions/esri.rest-api.GeometryJson.PointJson"
      },
      {
        "$ref": "#/definitions/esri.rest-api.GeometryJson.MultipointJson"
      },
      {
        "$ref": "#/definitions/esri.rest-api.GeometryJson.PolylineJson"
      },
      {
        "$ref": "#/definitions/esri.rest-api.GeometryJson.PolygonJson"
      },
      {
        "$ref": "#/definitions/esri.rest-api.GeometryJson.ExtentJson"
      }
    ],
    "description": "The feature's geometry."
  },
  "id": {
    "description": "The unique ID to assign to the entity. If not specified, one will be generated.",
    "type": "string"
  },
  "schema": {
    "description": "Metadata about the feature, such as fields, domains, geometry type, etc."
  },
  "settings": {
    "description": "Settings for this feature."
  },
  "source": {
    "description": "The source of the feature."
  }
}
```

HasFeatures properties:
```json
{
  "features": {
    "description": "Features to use for the command/operation."
  }
}
```

esri.rest-api.FeatureJson.FeatureJson properties:
```json
{
  "attributes": {
    "description": "The feature attributes. It is a JSON object that contains a dictionary of name-value pairs. The names are the feature field names. The values are the field values and they can be any of the standard JSON types - string, number and boolean. Note that date values are encoded as numbers. The number represents the number of milliseconds since epoch (January 1,\n1970) in UTC."
  },
  "geometry": {
    "description": "The feature geometry."
  },
  "popupInfo": {
    "description": "A popupInfo object defining the content of popup window when you click a feature on the map. Applicable to features in a map notes feature layer only."
  },
  "symbol": {
    "description": "Symbol used for drawing the feature."
  }
}
```

esri.rest-api.GeometryJson.PointJson properties:
```json
{
  "m": {
    "description": "M coordinate which contains measures used for linear referencing.",
    "type": "number"
  },
  "spatialReference": {
    "description": "The spatial reference can be defined using a well-known ID (WKID) or well-known text (WKT)."
  },
  "x": {
    "description": "X coordinate which is measured along the east/west axis.",
    "type": [
      "string",
      "number"
    ],
    "isRequired": "true"
  },
  "y": {
    "description": "Y coordinate which is measured along the north/south axis.",
    "type": [
      "string",
      "number"
    ],
    "isRequired": "true"
  },
  "z": {
    "description": "Z coordinate which measures height or elevation.",
    "type": [
      "string",
      "number"
    ]
  }
}
```

esri.rest-api.GeometryJson.MultipointJson properties:
```json
{
  "hasM": {
    "description": "Indicates whether the geometry contains M coordinate values.",
    "type": "boolean"
  },
  "hasZ": {
    "description": "Indicates whether the geometry contains Z coordinate values.",
    "type": "boolean"
  },
  "points": {
    "description": "An array that corresponds to 2D and 3D points.",
    "items": {
      "items": {
        "type": "number"
      },
      "type": "array"
    },
    "type": "array",
    "isRequired": "true"
  },
  "spatialReference": {
    "description": "The spatial reference can be defined using a well-known ID (WKID) or well-known text (WKT)."
  }
}
```

esri.rest-api.GeometryJson.PolylineJson properties:
```json
{
  "hasM": {
    "description": "Indicates whether the geometry contains M coordinate values.",
    "type": "boolean"
  },
  "hasZ": {
    "description": "Indicates whether the geometry contains Z coordinate values.",
    "type": "boolean"
  },
  "paths": {
    "description": "Three nested arrays which corresponds to a polyline.",
    "items": {
      "items": {
        "items": {
          "type": "number"
        },
        "type": "array"
      },
      "type": "array"
    },
    "type": "array",
    "isRequired": "true"
  },
  "spatialReference": {
    "description": "The spatial reference can be defined using a well-known ID (WKID) or well-known text (WKT)."
  }
}
```

esri.rest-api.GeometryJson.PolygonJson properties:
```json
{
  "hasM": {
    "description": "Indicates whether the geometry contains M coordinate values.",
    "type": "boolean"
  },
  "hasZ": {
    "description": "Indicates whether the geometry contains Z coordinate values.",
    "type": "boolean"
  },
  "rings": {
    "description": "Represents an array of points. Each point is an array of numbers.",
    "items": {
      "items": {
        "items": {
          "type": "number"
        },
        "type": "array"
      },
      "type": "array"
    },
    "type": "array",
    "isRequired": "true"
  },
  "spatialReference": {
    "description": "The spatial reference can be defined using a well-known ID (WKID) or well-known text (WKT)."
  }
}
```

esri.rest-api.GeometryJson.ExtentJson properties:
```json
{
  "spatialReference": {
    "description": "The spatial reference can be defined using a well-known ID (WKID) or well-known text (WKT)."
  },
  "xmax": {
    "description": "A numeric value indicating the top-right X-coordinate of an extent envelope.",
    "type": "number"
  },
  "xmin": {
    "description": "A numeric value indicating the bottom-left X-coordinate of an extent envelope.",
    "type": "number"
  },
  "ymax": {
    "description": "A numeric value indicating the top-right Y-coordinate of an extent envelope.",
    "type": "number"
  },
  "ymin": {
    "description": "A numeric value indicating the bottom-left Y-coordinate of an extent envelope.",
    "type": "number"
  }
}
```

esri.rest-api.GeometryJson.PointJson properties:
```json
{
  "m": {
    "description": "M coordinate which contains measures used for linear referencing.",
    "type": "number"
  },
  "spatialReference": {
    "description": "The spatial reference can be defined using a well-known ID (WKID) or well-known text (WKT)."
  },
  "x": {
    "description": "X coordinate which is measured along the east/west axis.",
    "type": [
      "string",
      "number"
    ],
    "isRequired": "true"
  },
  "y": {
    "description": "Y coordinate which is measured along the north/south axis.",
    "type": [
      "string",
      "number"
    ],
    "isRequired": "true"
  },
  "z": {
    "description": "Z coordinate which measures height or elevation.",
    "type": [
      "string",
      "number"
    ]
  }
}
```

esri.rest-api.GeometryJson.MultipointJson properties:
```json
{
  "hasM": {
    "description": "Indicates whether the geometry contains M coordinate values.",
    "type": "boolean"
  },
  "hasZ": {
    "description": "Indicates whether the geometry contains Z coordinate values.",
    "type": "boolean"
  },
  "points": {
    "description": "An array that corresponds to 2D and 3D points.",
    "items": {
      "items": {
        "type": "number"
      },
      "type": "array"
    },
    "type": "array",
    "isRequired": "true"
  },
  "spatialReference": {
    "description": "The spatial reference can be defined using a well-known ID (WKID) or well-known text (WKT)."
  }
}
```

esri.rest-api.GeometryJson.PolylineJson properties:
```json
{
  "hasM": {
    "description": "Indicates whether the geometry contains M coordinate values.",
    "type": "boolean"
  },
  "hasZ": {
    "description": "Indicates whether the geometry contains Z coordinate values.",
    "type": "boolean"
  },
  "paths": {
    "description": "Three nested arrays which corresponds to a polyline.",
    "items": {
      "items": {
        "items": {
          "type": "number"
        },
        "type": "array"
      },
      "type": "array"
    },
    "type": "array",
    "isRequired": "true"
  },
  "spatialReference": {
    "description": "The spatial reference can be defined using a well-known ID (WKID) or well-known text (WKT)."
  }
}
```

esri.rest-api.GeometryJson.PolygonJson properties:
```json
{
  "hasM": {
    "description": "Indicates whether the geometry contains M coordinate values.",
    "type": "boolean"
  },
  "hasZ": {
    "description": "Indicates whether the geometry contains Z coordinate values.",
    "type": "boolean"
  },
  "rings": {
    "description": "Represents an array of points. Each point is an array of numbers.",
    "items": {
      "items": {
        "items": {
          "type": "number"
        },
        "type": "array"
      },
      "type": "array"
    },
    "type": "array",
    "isRequired": "true"
  },
  "spatialReference": {
    "description": "The spatial reference can be defined using a well-known ID (WKID) or well-known text (WKT)."
  }
}
```

HasGeometry properties:
```json
{
  "geometry": {
    "description": "The geometry to use for the command/operation."
  }
}
```

HasMapGeometry properties:
```json
{
  "geometry": {
    "description": "The geometry to target."
  },
  "maps": {
    "description": "The map(s) to target."
  }
}
```

---
# command: map.zoom-to-initial-viewpoint
Description: Zooms the map to its initial viewpoint.

Inputs: `( @vertigis.arcgis-extensions.mapping.MapExtension.MapExtension | @vertigis.arcgis-extensions.mapping.MapExtension.MapExtension[] | HasMaps )`

HasMaps properties:
```json
{
  "maps": {
    "description": "Map(s) to use for the command/operation."
  }
}
```

---
# command: map.zoom-to-layer-extent
Description: Go to the full extent of the layer(s). If more than one layer is specified, it will zoom to the combined extent of all layers. Web only.

Inputs: `ZoomToLayerArgs`

ZoomToLayerArgs properties:
```json
{
  "layers": {
    "description": "The layer(s) to zoom to.",
    "isRequired": "true"
  },
  "maps": {
    "description": "The map(s) to zoom. If omitted, all maps will be zoomed."
  }
}
```

---
# command: map.zoom-to-layer-visible-scale
Description: Go to the closest min/max scale of the layer. The map will not zoom if it is currently within the visible scale range. If multiple layers are provided, it will attempt to zoom to a scale range that makes all of the layers visible. If this is not possible (i.e. some of the layers' scale ranges don't overlap), then priority will be given to layers that come earlier in the sequence. Web only.

Inputs: `ZoomToLayerArgs`

ZoomToLayerArgs properties:
```json
{
  "layers": {
    "description": "The layer(s) to zoom to.",
    "isRequired": "true"
  },
  "maps": {
    "description": "The map(s) to zoom. If omitted, all maps will be zoomed."
  }
}
```

---
# command: map.zoom-to-next-viewpoint
Description: Zooms to the next viewpoint to undo viewpoint changes from zooming to a previous viewpoint.

Note that if no map is included as an argument, the command will run for all maps, which could result in unexpected behavior. Web only.

Inputs: `( @vertigis.arcgis-extensions.mapping.MapExtension.MapExtension | @vertigis.arcgis-extensions.mapping.MapExtension.MapExtension[] | HasMaps )`

HasMaps properties:
```json
{
  "maps": {
    "description": "Map(s) to use for the command/operation."
  }
}
```

---
# command: map.zoom-to-previous-viewpoint
Description: Zooms to the previous viewpoint.

Note that if no map is included as an argument, the command will run for all maps, which could result in unexpected behavior. Web only.

Inputs: `( @vertigis.arcgis-extensions.mapping.MapExtension.MapExtension | @vertigis.arcgis-extensions.mapping.MapExtension.MapExtension[] | HasMaps )`

HasMaps properties:
```json
{
  "maps": {
    "description": "Map(s) to use for the command/operation."
  }
}
```

---
# command: map.zoom-to-scale
Description: Zooms the map to a specified, numerical scale. Web only.

Inputs: `ZoomToScaleArgs`

ZoomToScaleArgs properties:
```json
{
  "maps": {
    "description": "The map(s) to zoom. If omitted, all maps will be zoomed."
  },
  "scale": {
    "description": "The scale to zoom to.",
    "type": "number",
    "isRequired": "true"
  }
}
```

---
# command: map.zoom-to-viewpoint
Description: Go to the given viewpoint.

Inputs: `( @vertigis.arcgis-extensions.mapping.Bookmark.BookmarkProperties | @arcgis.core.Viewpoint.Viewpoint | esri.rest-api.ViewpointJson.ViewpointJson | T_52 | ZoomToViewpointArgs )`

@vertigis.arcgis-extensions.mapping.Bookmark.BookmarkProperties properties:
```json
{
  "id": {
    "description": "The unique ID to assign to the entity. If not specified, one will be generated.",
    "type": "string"
  },
  "source": {
    "description": "See {@link mapping /Bookmark!Bookmark.source}."
  },
  "title": {
    "description": "See {@link mapping /Bookmark!Bookmark.title}.",
    "type": "string"
  },
  "viewpoint": {
    "anyOf": [
      {
        "$ref": "#/definitions/@arcgis.core.Viewpoint.Viewpoint"
      },
      {
        "$ref": "#/definitions/esri.rest-api.ViewpointJson.ViewpointJson"
      }
    ],
    "description": "See {@link mapping /Bookmark!Bookmark.viewpoint}."
  }
}
```

esri.rest-api.ViewpointJson.ViewpointJson properties:
```json
{
  "camera": {
    "description": "The camera defines the position, tilt, and heading of the point from which the SceneView's visible extent is observed."
  },
  "rotation": {
    "description": "The rotation of due north in relation to the top of the view in degrees.",
    "type": "number"
  },
  "scale": {
    "description": "The scale of the viewpoint.",
    "type": "number"
  },
  "targetGeometry": {
    "description": "The target geometry framed by the viewpoint."
  }
}
```

ZoomToViewpointArgs properties:
```json
{
  "maps": {
    "description": "The map(s) to zoom. If omitted, all maps will be zoomed."
  },
  "viewpoint": {
    "anyOf": [
      {
        "$ref": "#/definitions/@vertigis.arcgis-extensions.mapping.Bookmark.BookmarkProperties"
      },
      {
        "$ref": "#/definitions/@arcgis.core.Viewpoint.Viewpoint"
      },
      {
        "$ref": "#/definitions/esri.rest-api.ViewpointJson.ViewpointJson"
      },
      {
        "$ref": "T_52"
      },
      {
        "type": "string"
      }
    ],
    "description": "The viewpoint to zoom to.",
    "isRequired": "true"
  }
}
```

---
