Maps

This service allows scripts to generate static maps, find directions, convert
addresses into geocode coordinates, and sample elevations.

## Classes

| Name | Brief description |
|---|---|
| `https://developers.google.com/apps-script/reference/maps/avoid` | An enum representing the types of restrictions to avoid when finding directions. |
| `https://developers.google.com/apps-script/reference/maps/color` | An enum representing the named colors available to use in map images. |
| `https://developers.google.com/apps-script/reference/maps/direction-finder` | Allows for the retrieval of directions between locations. |
| `https://developers.google.com/apps-script/reference/maps/direction-finder-enums` | A collection of enums used by `https://developers.google.com/apps-script/reference/maps/direction-finder`. |
| `https://developers.google.com/apps-script/reference/maps/elevation-sampler` | Allows for the sampling of elevations at particular locations. |
| `https://developers.google.com/apps-script/reference/maps/format` | An enum representing the format of the map image. |
| `https://developers.google.com/apps-script/reference/maps/geocoder` | Allows for the conversion between an address and geographical coordinates. |
| `https://developers.google.com/apps-script/reference/maps/maps` | Allows for direction finding, geocoding, elevation sampling and the creation of static map images. |
| `https://developers.google.com/apps-script/reference/maps/marker-size` | An enum representing the size of a marker added to a map. |
| `https://developers.google.com/apps-script/reference/maps/mode` | An enum representing the mode of travel to use when finding directions. |
| `https://developers.google.com/apps-script/reference/maps/static-map` | Allows for the creation and decoration of static map images. |
| `https://developers.google.com/apps-script/reference/maps/static-map-enums` | A collection of enums used by `https://developers.google.com/apps-script/reference/maps/static-map`. |
| `https://developers.google.com/apps-script/reference/maps/type` | An enum representing the type of map to render. |

## `https://developers.google.com/apps-script/reference/maps/avoid`

### Properties

| Property | Type | Description |
|---|---|---|
| `TOLLS` | `Enum` | Avoid tolls. |
| `HIGHWAYS` | `Enum` | Avoid highways. |

## `https://developers.google.com/apps-script/reference/maps/color`

### Properties

| Property | Type | Description |
|---|---|---|
| `BLACK` | `Enum` |   |
| `BROWN` | `Enum` |   |
| `GREEN` | `Enum` |   |
| `PURPLE` | `Enum` |   |
| `YELLOW` | `Enum` |   |
| `BLUE` | `Enum` |   |
| `GRAY` | `Enum` |   |
| `ORANGE` | `Enum` |   |
| `RED` | `Enum` |   |
| `WHITE` | `Enum` |   |

## `https://developers.google.com/apps-script/reference/maps/direction-finder`

### Methods

| Method | Return type | Brief description |
|---|---|---|
| `https://developers.google.com/apps-script/reference/maps/direction-finder#addWaypoint(Number,Number)` | `https://developers.google.com/apps-script/reference/maps/direction-finder` | Adds a waypoint that the route must pass through, using a point (lat/lng). |
| `https://developers.google.com/apps-script/reference/maps/direction-finder#addWaypoint(String)` | `https://developers.google.com/apps-script/reference/maps/direction-finder` | Adds a waypoint that the route must pass through, using an address. |
| `https://developers.google.com/apps-script/reference/maps/direction-finder#clearWaypoints()` | `https://developers.google.com/apps-script/reference/maps/direction-finder` | Clears the current set of waypoints. |
| `https://developers.google.com/apps-script/reference/maps/direction-finder#getDirections()` | `Object` | Gets the directions using the origin, destination, and other options that were set. |
| `https://developers.google.com/apps-script/reference/maps/direction-finder#setAlternatives(Boolean)` | `https://developers.google.com/apps-script/reference/maps/direction-finder` | Sets whether or not alternative routes should be returned, instead of just the highest ranked route (defaults to `false`). |
| `https://developers.google.com/apps-script/reference/maps/direction-finder#setArrive(Date)` | `https://developers.google.com/apps-script/reference/maps/direction-finder` | Sets the desired time of arrival (when applicable). |
| `https://developers.google.com/apps-script/reference/maps/direction-finder#setAvoid(String)` | `https://developers.google.com/apps-script/reference/maps/direction-finder` | Sets whether to avoid certain types of restrictions. |
| `https://developers.google.com/apps-script/reference/maps/direction-finder#setDepart(Date)` | `https://developers.google.com/apps-script/reference/maps/direction-finder` | Sets the desired time of departure (when applicable). |
| `https://developers.google.com/apps-script/reference/maps/direction-finder#setDestination(Number,Number)` | `https://developers.google.com/apps-script/reference/maps/direction-finder` | Sets the ending location for which to calculate directions to, using a point (lat/lng). |
| `https://developers.google.com/apps-script/reference/maps/direction-finder#setDestination(String)` | `https://developers.google.com/apps-script/reference/maps/direction-finder` | Sets the ending location for which to calculate directions to, using an address. |
| `https://developers.google.com/apps-script/reference/maps/direction-finder#setLanguage(String)` | `https://developers.google.com/apps-script/reference/maps/direction-finder` | Sets the language to be used for the directions. |
| `https://developers.google.com/apps-script/reference/maps/direction-finder#setMode(String)` | `https://developers.google.com/apps-script/reference/maps/direction-finder` | Sets the mode of travel (defaults to driving). |
| `https://developers.google.com/apps-script/reference/maps/direction-finder#setOptimizeWaypoints(Boolean)` | `https://developers.google.com/apps-script/reference/maps/direction-finder` | Sets whether or not to optimize the provided route by rearranging the waypoints in a more efficient order (defaults to `false`). |
| `https://developers.google.com/apps-script/reference/maps/direction-finder#setOrigin(Number,Number)` | `https://developers.google.com/apps-script/reference/maps/direction-finder` | Sets the starting location from which to calculate directions, using a point (lat/lng). |
| `https://developers.google.com/apps-script/reference/maps/direction-finder#setOrigin(String)` | `https://developers.google.com/apps-script/reference/maps/direction-finder` | Sets the starting location from which to calculate directions, using an address. |
| `https://developers.google.com/apps-script/reference/maps/direction-finder#setRegion(String)` | `https://developers.google.com/apps-script/reference/maps/direction-finder` | Sets a region to use when interpreting location names. |

## `https://developers.google.com/apps-script/reference/maps/direction-finder-enums`

### Properties

| Property | Type | Description |
|---|---|---|
| `Avoid` | `https://developers.google.com/apps-script/reference/maps/avoid` |   |
| `Mode` | `https://developers.google.com/apps-script/reference/maps/mode` |   |

## `https://developers.google.com/apps-script/reference/maps/elevation-sampler`

### Methods

| Method | Return type | Brief description |
|---|---|---|
| `https://developers.google.com/apps-script/reference/maps/elevation-sampler#sampleLocation(Number,Number)` | `Object` | Returns elevation data for a single point (lat/lng). |
| `https://developers.google.com/apps-script/reference/maps/elevation-sampler#sampleLocations(Number)` | `Object` | Returns elevation data for a series of points (lat/lng). |
| `https://developers.google.com/apps-script/reference/maps/elevation-sampler#sampleLocations(String)` | `Object` | Returns elevation data for the points in an encoded polyline. |
| `https://developers.google.com/apps-script/reference/maps/elevation-sampler#samplePath(Number,Integer)` | `Object` | Returns elevation data for a number of samples along a line, defined using a series of points. |
| `https://developers.google.com/apps-script/reference/maps/elevation-sampler#samplePath(String,Integer)` | `Object` | Returns elevation data for a number of samples along a line, defined using an encoded polyline. |

## `https://developers.google.com/apps-script/reference/maps/format`

### Properties

| Property | Type | Description |
|---|---|---|
| `PNG` | `Enum` | 8-bit PNG format. |
| `PNG8` | `Enum` | 8-bit PNG format. |
| `PNG32` | `Enum` | 32-bit PNG format. |
| `GIF` | `Enum` | GIF format. |
| `JPG` | `Enum` | JPEG format. |
| `JPG_BASELINE` | `Enum` | Non-progressive JPEG format. |

## `https://developers.google.com/apps-script/reference/maps/geocoder`

### Methods

| Method | Return type | Brief description |
|---|---|---|
| `https://developers.google.com/apps-script/reference/maps/geocoder#geocode(String)` | `Object` | Gets the approximate geographic points for a given address. |
| `https://developers.google.com/apps-script/reference/maps/geocoder#reverseGeocode(Number,Number)` | `Object` | Gets the approximate addresses for a given geographic point. |
| `https://developers.google.com/apps-script/reference/maps/geocoder#setBounds(Number,Number,Number,Number)` | `https://developers.google.com/apps-script/reference/maps/geocoder` | Sets the bounds of an area that should be given extra preference in the results. |
| `https://developers.google.com/apps-script/reference/maps/geocoder#setLanguage(String)` | `https://developers.google.com/apps-script/reference/maps/geocoder` | Sets the language to be used in the results. |
| `https://developers.google.com/apps-script/reference/maps/geocoder#setRegion(String)` | `https://developers.google.com/apps-script/reference/maps/geocoder` | Sets a region to use when interpreting location names. |

## `https://developers.google.com/apps-script/reference/maps/maps`

### Properties

| Property | Type | Description |
|---|---|---|
| `DirectionFinder` | `https://developers.google.com/apps-script/reference/maps/direction-finder-enums` |   |
| `StaticMap` | `https://developers.google.com/apps-script/reference/maps/static-map-enums` |   |

### Methods

| Method | Return type | Brief description |
|---|---|---|
| `https://developers.google.com/apps-script/reference/maps/maps#decodePolyline(String)` | `Number[]` | Decodes an encoded polyline string back into an array of points. |
| `https://developers.google.com/apps-script/reference/maps/maps#encodePolyline(Number)` | `String` | Encodes an array of points into a string. |
| `https://developers.google.com/apps-script/reference/maps/maps#newDirectionFinder()` | `https://developers.google.com/apps-script/reference/maps/direction-finder` | Creates a new DirectionFinder object. |
| `https://developers.google.com/apps-script/reference/maps/maps#newElevationSampler()` | `https://developers.google.com/apps-script/reference/maps/elevation-sampler` | Creates an ElevationSampler object. |
| `https://developers.google.com/apps-script/reference/maps/maps#newGeocoder()` | `https://developers.google.com/apps-script/reference/maps/geocoder` | Creates a new Geocoder object. |
| `https://developers.google.com/apps-script/reference/maps/maps#newStaticMap()` | `https://developers.google.com/apps-script/reference/maps/static-map` | Creates a new StaticMap object. |
| `https://developers.google.com/apps-script/reference/maps/maps#resetAuthenticationApiKey()` | `void` | Resets the authentication credentials to use the default quota allowances. |
| `https://developers.google.com/apps-script/reference/maps/maps#setAuthenticationByApiKey(String)` | `void` | Enables the use of an API key to authenticate requests to leverage additional quotas. |
| `https://developers.google.com/apps-script/reference/maps/maps#setAuthenticationByApiKey(String,String)` | `void` | Enables the use of an API key and Signing Key to authenticate requests to leverage additional quotas in StaticMap. |

## `https://developers.google.com/apps-script/reference/maps/marker-size`

### Properties

| Property | Type | Description |
|---|---|---|
| `TINY` | `Enum` | Tiny sized markets (smallest available). |
| `MID` | `Enum` | Medium sized markers (largest available). |
| `SMALL` | `Enum` | Small sized markers. |

## `https://developers.google.com/apps-script/reference/maps/mode`

### Properties

| Property | Type | Description |
|---|---|---|
| `DRIVING` | `Enum` | Driving directions via roads. |
| `WALKING` | `Enum` | Walking directions via pedestrian paths and sidewalks (where available). |
| `BICYCLING` | `Enum` | Bicycling directions via bicycle paths and preferred streets (where available). |
| `TRANSIT` | `Enum` | Transit directions via public transit routes (where available). |

## `https://developers.google.com/apps-script/reference/maps/static-map`

### Methods

| Method | Return type | Brief description |
|---|---|---|
| `https://developers.google.com/apps-script/reference/maps/static-map#addAddress(String)` | `https://developers.google.com/apps-script/reference/maps/static-map` | Adds a new address to the current path definition. |
| `https://developers.google.com/apps-script/reference/maps/static-map#addMarker(Number,Number)` | `https://developers.google.com/apps-script/reference/maps/static-map` | Adds a marker to the map using a point (lat/lng). |
| `https://developers.google.com/apps-script/reference/maps/static-map#addMarker(String)` | `https://developers.google.com/apps-script/reference/maps/static-map` | Adds a marker to the map using an address. |
| `https://developers.google.com/apps-script/reference/maps/static-map#addPath(Number)` | `https://developers.google.com/apps-script/reference/maps/static-map` | Adds a path to the map using an array of points. |
| `https://developers.google.com/apps-script/reference/maps/static-map#addPath(String)` | `https://developers.google.com/apps-script/reference/maps/static-map` | Adds a path to the map using an encoded polyline. |
| `https://developers.google.com/apps-script/reference/maps/static-map#addPoint(Number,Number)` | `https://developers.google.com/apps-script/reference/maps/static-map` | Adds a new point (lat/lng) to the current path definition. |
| `https://developers.google.com/apps-script/reference/maps/static-map#addVisible(Number,Number)` | `https://developers.google.com/apps-script/reference/maps/static-map` | Adds a point (lat/lng) location that must be visible in the map. |
| `https://developers.google.com/apps-script/reference/maps/static-map#addVisible(String)` | `https://developers.google.com/apps-script/reference/maps/static-map` | Adds an address location that must be visible in the map. |
| `https://developers.google.com/apps-script/reference/maps/static-map#beginPath()` | `https://developers.google.com/apps-script/reference/maps/static-map` | Starts a new path definition. |
| `https://developers.google.com/apps-script/reference/maps/static-map#clearMarkers()` | `https://developers.google.com/apps-script/reference/maps/static-map` | Clears the current set of markers. |
| `https://developers.google.com/apps-script/reference/maps/static-map#clearPaths()` | `https://developers.google.com/apps-script/reference/maps/static-map` | Clear the current set of paths. |
| `https://developers.google.com/apps-script/reference/maps/static-map#clearVisibles()` | `https://developers.google.com/apps-script/reference/maps/static-map` | Clears the current set of visible locations. |
| `https://developers.google.com/apps-script/reference/maps/static-map#endPath()` | `https://developers.google.com/apps-script/reference/maps/static-map` | Completes a path definition started with beginPath(). |
| `https://developers.google.com/apps-script/reference/maps/static-map#getAs(String)` | `https://developers.google.com/apps-script/base/blob.html` | Return the data inside this object as a blob converted to the specified content type. |
| `https://developers.google.com/apps-script/reference/maps/static-map#getBlob()` | `https://developers.google.com/apps-script/base/blob.html` | Gets the image data as a `https://developers.google.com/apps-script/base/blob.html`. |
| `https://developers.google.com/apps-script/reference/maps/static-map#getMapImage()` | `Byte[]` | Gets the raw image data as a byte array. |
| `https://developers.google.com/apps-script/reference/maps/static-map#getMapUrl()` | `String` | Gets the URL of the map image. |
| `https://developers.google.com/apps-script/reference/maps/static-map#setCenter(Number,Number)` | `https://developers.google.com/apps-script/reference/maps/static-map` | Sets the center of the map using a point (lat/lng). |
| `https://developers.google.com/apps-script/reference/maps/static-map#setCenter(String)` | `https://developers.google.com/apps-script/reference/maps/static-map` | Sets the center of the map using an address. |
| `https://developers.google.com/apps-script/reference/maps/static-map#setCustomMarkerStyle(String,Boolean)` | `https://developers.google.com/apps-script/reference/maps/static-map` | Sets the custom marker image to use when creating new markers. |
| `https://developers.google.com/apps-script/reference/maps/static-map#setFormat(String)` | `https://developers.google.com/apps-script/reference/maps/static-map` | Sets the format of the map image. |
| `https://developers.google.com/apps-script/reference/maps/static-map#setLanguage(String)` | `https://developers.google.com/apps-script/reference/maps/static-map` | Sets the language to be used for text on the map (where available). |
| `https://developers.google.com/apps-script/reference/maps/static-map#setMapType(String)` | `https://developers.google.com/apps-script/reference/maps/static-map` | Sets the type of map to be shown. |
| `https://developers.google.com/apps-script/reference/maps/static-map#setMarkerStyle(String,String,String)` | `https://developers.google.com/apps-script/reference/maps/static-map` | Sets the marker style to use when creating new markers. |
| `https://developers.google.com/apps-script/reference/maps/static-map#setMobile(Boolean)` | `https://developers.google.com/apps-script/reference/maps/static-map` | Sets whether or not to use specialized tile sets for mobile devices. |
| `https://developers.google.com/apps-script/reference/maps/static-map#setPathStyle(Integer,String,String)` | `https://developers.google.com/apps-script/reference/maps/static-map` | Sets the path style to use when creating new paths. |
| `https://developers.google.com/apps-script/reference/maps/static-map#setSize(Integer,Integer)` | `https://developers.google.com/apps-script/reference/maps/static-map` | Sets the width and height of the map image in pixels. |
| `https://developers.google.com/apps-script/reference/maps/static-map#setZoom(Integer)` | `https://developers.google.com/apps-script/reference/maps/static-map` | Sets the zoom factor, or magnification level, used for the map. |

## `https://developers.google.com/apps-script/reference/maps/static-map-enums`

### Properties

| Property | Type | Description |
|---|---|---|
| `Color` | `https://developers.google.com/apps-script/reference/maps/color` |   |
| `Format` | `https://developers.google.com/apps-script/reference/maps/format` |   |
| `MarkerSize` | `https://developers.google.com/apps-script/reference/maps/marker-size` |   |
| `Type` | `https://developers.google.com/apps-script/reference/maps/type` |   |

## `https://developers.google.com/apps-script/reference/maps/type`

### Properties

| Property | Type | Description |
|---|---|---|
| `ROADMAP` | `Enum` | A standard roadmap, as is normally shown on the Google Maps website. |
| `SATELLITE` | `Enum` | A satellite map. |
| `TERRAIN` | `Enum` | A physical relief map, showing terrain and vegetation. |
| `HYBRID` | `Enum` | A hybrid of the satellite and roadmap maps, showing a transparent layer of major streets and place names on the satellite map. |