Skip to content

Google Maps

Google Maps

Google Maps is Google’s mapping and location platform, offering geocoding, directions, place search, satellite imagery, and customizable map tiles. With the Google Maps integration in SquadOS, your agents can convert addresses to coordinates, calculate distances and travel times between multiple points, search for nearby businesses, and retrieve rich place details — all via API, without opening a browser.

This tool uses OAuth 2.0 (OAUTH2) or API key (API_KEY) to connect.

You will need the following fields (for API key connections):

FieldRequiredDescription
api_keyYesGoogle Maps Platform API key generated in the Google Cloud Console, with the required APIs enabled.

Composio provides a managed OAuth app for Google Maps. To use your own OAuth credentials (white-label):

  1. Go to the Google Cloud Console and create or select a project.
  2. Under APIs & Services → Credentials, click Create credentials → OAuth client ID.
  3. Configure the consent screen (type External for general users).
  4. Note the generated Client ID and Client Secret.
  5. Follow the full guide at composio.dev/auth/googleapps to configure the Composio redirect URL.
  1. Go to the Google Cloud Console and select your project.
  2. Under APIs & Services → Credentials, click Create credentials → API key.
  3. Copy the generated key.
  4. Under APIs & Services → Library, enable the Maps Platform APIs your agents need (e.g., Maps JavaScript API, Places API, Routes API, Geocoding API).
  5. (Recommended) Restrict the key by IP or HTTP referrer to limit unauthorized use.
  1. Go to Tools in the side menu (/admin/tools).
  2. Open the Available tab and search for Google Maps.
  3. Click the card to open the details modal and hit Connect.
  4. You’re taken to the secure connection page hosted by Composio, where you authorize access via OAuth 2.0 or enter the API key obtained above.
  5. Once done, you’re sent back to SquadOS with the account connected and the tool available for your agents. (Connection-flow details in Organization Tools.)

How do I set up custom Google OAuth credentials for Google Maps?

Section titled “How do I set up custom Google OAuth credentials for Google Maps?”

For a step-by-step guide on creating and configuring your own Google OAuth credentials with Composio, see composio.dev/auth/googleapps.

Why am I seeing “App is blocked” when connecting Google Maps?

Section titled “Why am I seeing “App is blocked” when connecting Google Maps?”

The OAuth client is requesting scopes that Google hasn’t verified for that client. This usually happens when you add extra scopes beyond the defaults. Remove the additional scopes from your auth config, or create your own OAuth app and submit the scopes for verification. See composio.dev/auth/googleapps.

Why am I getting “Google Maps API has not been used in project” error?

Section titled “Why am I getting “Google Maps API has not been used in project” error?”

When using custom OAuth credentials, the Google Maps API must be enabled in the Google Cloud project that owns those credentials. Enable it in Google Cloud Console under APIs & Services, wait a few minutes, and retry.

Why am I getting “Error 400: invalid_scope”?

Section titled “Why am I getting “Error 400: invalid_scope”?”

The requested scopes are invalid or incorrectly formatted in the authorization URL. Verify your scope values against the Google OAuth scopes docs.

Section titled “Why does the OAuth consent screen show “Composio” instead of my app?”

By default, the consent screen uses Composio’s OAuth app. To show your own app name and logo, create your own OAuth app and set a custom redirect URL. See White-labeling authentication.

Why am I getting 401 errors on tool calls?

Section titled “Why am I getting 401 errors on tool calls?”

The user’s access token is no longer valid. Common causes: the user revoked access, changed their password or 2FA, a Workspace admin policy changed, or Google’s refresh token limit (~50 per account) was exceeded. Re-authenticating the user typically resolves this.

GOOGLE_MAPS_AUTOCOMPLETE

Returns place and query predictions for text input. Use when implementing as-you-type autocomplete functionality for place searches. Returns up to five predictions ordered by relevance.

NameTypeRequiredDescription
inputstringYesText string to search for place predictions. Can be full words, substrings, place names, addresses, or plus codes. Must be non-empty.
originobjectNoLatitude/longitude point for distance calculations.
regionCodestringNoRegion code in ccTLD format for formatting responses (e.g., us, br).
inputOffsetintegerNoZero-based Unicode character offset of cursor position in the input string.
languageCodestringNoPreferred language for results using IETF BCP-47 language codes (e.g., en-US, es-ES).
locationBiasobjectNoArea to bias search results toward.
sessionTokenstringNoUser-generated string grouping calls into sessions for billing purposes.
includedRegionCodesarrayNoUp to 15 two-character country codes (ISO 3166-1 Alpha-2) to restrict results. Query predictions unavailable when this is set.
locationRestrictionobjectNoArea to restrict search results within.
includedPrimaryTypesarrayNoRestricts results to up to five specified primary types (e.g., restaurant, cafe).
includeQueryPredictionsbooleanNoIncludes query predictions in response for text searches (default: false).
includePureServiceAreaBusinessesbooleanNoIncludes businesses without physical locations (default: false).
NameTypeRequiredDescription
datastringYesData from the action execution.
errorstringNoError if any occurred during the execution of the action.
successfulbooleanYesWhether or not the action execution was successful.

GOOGLE_MAPS_COMPUTE_ROUTE_MATRIX

Calculates travel distance and duration matrix between multiple origins and destinations using the modern Routes API; supports OAuth2 authentication and various travel modes. Matrix is capped at 625 elements (e.g., 25×25); chunk larger sets to avoid RESOURCE_EXHAUSTED errors. Response elements may be returned out of input order — always use originIndex and destinationIndex to map results. Only use elements where condition='ROUTE_EXISTS'; the matrix may be incomplete.

NameTypeRequiredDescription
unitsstring (METRIC | IMPERIAL)NoUnit system (e.g., METRIC for kilometers, IMPERIAL for miles) for displaying distances. distanceMeters in responses is always in meters regardless of this setting; units affects only human-readable text output.
originsarrayYesList of origin locations. Each can be specified as an address or latitude/longitude coordinates.
fieldMaskstringNoComma-separated list of response fields to include (e.g., originIndex,destinationIndex,duration,distanceMeters). Use * for all fields.
travelModestring (DRIVE | BICYCLE | WALK | TWO_WHEELER | TRANSIT)NoMode of transportation for the route matrix calculation.
destinationsarrayYesList of destination locations. Each can be specified as an address or latitude/longitude coordinates.
languageCodestringNoBCP-47 language code (e.g., en-US, es) for textual information.
routingPreferencestring (ROUTING_PREFERENCE_UNSPECIFIED | TRAFFIC_UNAWARE | TRAFFIC_AWARE | TRAFFIC_AWARE_OPTIMAL)NoSpecifies factors to consider when calculating the route.
NameTypeRequiredDescription
datastringYesData from the action execution.
errorstringNoError if any occurred during the execution of the action.
successfulbooleanYesWhether or not the action execution was successful.

GOOGLE_MAPS_DISTANCE_MATRIX_API

DEPRECATED: Legacy API that calculates travel distance and time for a matrix of origins and destinations. This API only works with API keys (no OAuth2 support). Use the modern ‘Compute Route Matrix’ action instead, which supports OAuth2 authentication. Supports different modes of transportation and options like departure/arrival times. Capped at 100 elements per request (elements = origins × destinations count); split large sets into batches.

NameTypeRequiredDescription
keystringNoYour application’s API key. This key identifies your application for purposes of quota management.
modestring (driving | walking | bicycling | transit)NoSpecifies the mode of transport to use.
avoidstring (tolls | highways | ferries | indoor)NoIndicates that the calculated route should avoid the specified features. Multiple values can be pipe-separated, e.g., tolls|highways.
unitsstring (metric | imperial)NoSpecifies the unit system to use when displaying results. The default is metric.
regionstringNoThe region code, specified as a ccTLD two-character value. Helps influence results based on the region.
originsstringYesThe starting point for calculating travel distance and time. Supply one or more locations separated by the pipe character (|), in the form of a place ID (prefixed with place_id:), an address, latitude/longitude coordinates, a plus code, or an encoded polyline (prefixed with enc: and a colon).
languagestringNoThe language in which to return results.
arrival_timeintegerNoDesired arrival time for transit directions, in seconds since midnight, January 1, 1970 UTC. Cannot be used together with departure_time.
destinationsstringYesOne or more locations to use as the finishing point. Accepts the same formats as origins.
transit_modestring (bus | subway | train | tram | rail)NoSpecifies one or more preferred modes of transit. Only for transit directions. Multiple values can be pipe-separated, e.g., bus|train.
traffic_modelstring (best_guess | pessimistic | optimistic)NoSpecifies assumptions for calculating time in traffic. Only used if the request includes departure_time and mode is driving.
departure_timestringNoDesired departure time. Specify as an integer in seconds since midnight January 1, 1970 UTC, or as the string now. Required for duration_in_traffic.
transit_routing_preferencestring (less_walking | fewer_transfers)NoSpecifies preferences for transit routes. Only for transit directions.
NameTypeRequiredDescription
datastringYesData from the action execution.
errorstringNoError if any occurred during the execution of the action.
successfulbooleanYesWhether or not the action execution was successful.

GOOGLE_MAPS_GEOCODE_ADDRESS

DEPRECATED: Legacy API to convert street addresses into geographic coordinates (latitude and longitude). This API works best with API key authentication. For OAuth connections without an API key, you may need to provide the key parameter or use the newer ‘Text Search’ action instead. Use when you need to geocode an address or location to get its precise latitude/longitude coordinates.

NameTypeRequiredDescription
keystringNoYour application’s API key. Required when using API key authentication. If not provided, will attempt to use OAuth authentication (requires X-Goog-User-Project header with project ID).
boundsstringNoBounding box of the viewport within which to bias geocode results. Format: southwest_lat,southwest_lng|northeast_lat,northeast_lng. Influences, but does not fully restrict, results.
regionstringNoRegion code specified as a ccTLD two-character value. Influences, but does not fully restrict, results.
addressstringNoThe street address to geocode, in the format used by the national postal service. If both address and components are provided, address takes precedence.
languagestringNoLanguage in which to return results.
componentsstringNoComponent filters separated by a pipe (|). Each filter is a component:value pair. Examples: country:US or postal_code:94043|country:US.
NameTypeRequiredDescription
datastringYesData from the action execution.
errorstringNoError if any occurred during the execution of the action.
successfulbooleanYesWhether or not the action execution was successful.

GOOGLE_MAPS_GEOCODE_ADDRESS_WITH_QUERY

Maps addresses to geographic coordinates using the modern v4beta API. Results may match multiple places — always verify formattedAddress, region, and addressComponents in the response before using returned coordinates.

NameTypeRequiredDescription
region_codestringNoRegion code, specified as a ccTLD two-character value (e.g., US, FR). Affects results based on applicable law.
address_querystringYesThe unstructured address to geocode. Should be a single string containing the full address (e.g., 1600 Amphitheatre Parkway Mountain View CA). Include city, state/region, and country where possible — incomplete or ambiguous strings may return zero results or incorrect matches.
language_codestringNoLanguage in which the results should be returned (e.g., en, es, fr).
NameTypeRequiredDescription
datastringYesData from the action execution.
errorstringNoError if any occurred during the execution of the action.
successfulbooleanYesWhether or not the action execution was successful.

GOOGLE_MAPS_GEOCODE_DESTINATIONS

Performs destination lookup and returns detailed destination information including primary place, containing places, sub-destinations, landmarks, entrances, and navigation points. Use when you need comprehensive destination data for an address, place ID, or geographic coordinates.

NameTypeRequiredDescription
placestringNoResource name in format places/{placeId} to retrieve destination by Place ID.
regionCodestringNoTwo-character ccTLD region code for formatting/filtering (e.g., US, UK).
travelModesarrayNoFilter navigation points by travel mode. Supported values: DRIVE, WALK.
addressQueryobjectNoAddress query in unstructured or structured format.
languageCodestringNoPreferred language code for results (e.g., en, es, fr).
locationQueryobjectNoLocation query using geographic coordinates.
NameTypeRequiredDescription
datastringYesData from the action execution.
errorstringNoError if any occurred during the execution of the action.
successfulbooleanYesWhether or not the action execution was successful.

GOOGLE_MAPS_GEOCODE_LOCATION

Converts geographic coordinates (latitude and longitude) to human-readable addresses using reverse geocoding. A single coordinate pair may return multiple results; verify formattedAddress, region, and addressComponents before committing to a result.

NameTypeRequiredDescription
typesarrayNoSet of type tags to restrict results; results without specified types are removed.
latitudenumberYesLatitude coordinate in degrees, range [-90.0, +90.0].
longitudenumberYesLongitude coordinate in degrees, range [-180.0, +180.0].
regionCodestringNoRegion code specified as a ccTLD two-character value, affecting results based on applicable law.
languageCodestringNoLanguage code in which the results should be returned (BCP-47 format).
NameTypeRequiredDescription
datastringYesData from the action execution.
errorstringNoError if any occurred during the execution of the action.
successfulbooleanYesWhether or not the action execution was successful.

GOOGLE_MAPS_GEOCODE_PLACE

Performs geocode lookup using a place identifier to retrieve address and coordinates. Use when you need to get detailed geographic information for a specific Google Place ID.

NameTypeRequiredDescription
place_idstringYesPlace identifier to geocode. Must be in the format places/{placeId} or just the place ID (e.g., ChIJj61dQgK6j4AR4GeTYWZsKWw). The unique identifier for a place in the Google Places database.
regionCodestringNoRegion code specified as a ccTLD two-character value, affecting results based on applicable law and address formatting.
languageCodestringNoLanguage code in which the results should be returned (BCP-47 format). Defaults to en if not specified.
NameTypeRequiredDescription
datastringYesData from the action execution.
errorstringNoError if any occurred during the execution of the action.
successfulbooleanYesWhether or not the action execution was successful.

GOOGLE_MAPS_GEOCODING_API

Converts addresses into geographic coordinates (latitude and longitude) and vice versa (reverse geocoding), or gets an address for a Place ID. Uses the Geocoding API v4 (v4beta) which supports OAuth2 authentication. Exactly one of address, latlng, or place_id must be provided per request; omitting all three or mixing incompatible combinations yields no useful results.

NameTypeRequiredDescription
keystringNoYour application’s API key. If not provided, will be extracted from connection metadata.
boundsstringNoThe bounding box of the viewport within which to bias geocode results (e.g., 34.172684,-118.604794|34.236144,-118.500938). Influences, but does not fully restrict, results.
latlngstringNoThe latitude and longitude coordinates for reverse geocoding (e.g., 40.714224,-73.961452).
regionstringNoThe region code, specified as a ccTLD two-character value. Influences, but does not fully restrict, results.
addressstringNoThe street address or plus code to geocode.
languagestringNoThe language in which to return results.
place_idstringNoThe place ID for which to obtain the human-readable address.
componentsstringNoA components filter with elements separated by a pipe (|). E.g., postal_code:94043|country:US. Supplying only components without address may return ZERO_RESULTS for some queries.
result_typestringNoA filter of one or more address types, separated by a pipe (|). E.g., street_address|locality. Used for reverse geocoding.
location_typestringNoA filter of one or more location types, separated by a pipe (|). E.g., ROOFTOP|RANGE_INTERPOLATED. Used for reverse geocoding.
extra_computationsarrayNoSpecifies additional features in the response. Can select multiple values.
NameTypeRequiredDescription
datastringYesData from the action execution.
errorstringNoError if any occurred during the execution of the action.
successfulbooleanYesWhether or not the action execution was successful.

GOOGLE_MAPS_GEOLOCATE

Determines location based on cell towers and WiFi access points. Use when you need to find the geographic location of a device using network infrastructure data.

NameTypeRequiredDescription
carrierstringNoCarrier name.
radioTypestring (gsm | cdma | wcdma | lte | nr)NoRadio type. Defaults to gsm.
cellTowersarrayNoArray of cell tower objects.
considerIpbooleanNoWhether to fall back to IP geolocation if WiFi and cell tower signals are missing. Defaults to true.
wifiAccessPointsarrayNoArray of WiFi access point objects (minimum 2 required for success).
homeMobileCountryCodeintegerNoMobile country code for device’s home network. Range: 0–999.
homeMobileNetworkCodeintegerNoMNC for GSM/WCDMA/LTE/NR (0–999); SID for CDMA (0–32767).
NameTypeRequiredDescription
datastringYesData from the action execution.
errorstringNoError if any occurred during the execution of the action.
successfulbooleanYesWhether or not the action execution was successful.

GOOGLE_MAPS_GET2D_TILE

Retrieves a 2D map tile image at specified coordinates for building custom map visualizations. Use when you need to download individual map tile images for roadmap, satellite, or terrain views. Requires a valid session token from the createSession endpoint.

NameTypeRequiredDescription
xintegerYesTile column coordinate. Valid range: [0, (2^zoom)-1].
yintegerYesTile row coordinate. Valid range: [0, (2^zoom)-1].
zintegerYesZoom level ranging from 0 (entire world) to 22 (highly detailed).
keystringNoGoogle API key for authentication. If not provided, will be extracted from connection metadata. Required if not using Bearer token authentication.
sessionstringYesSession token UUID obtained from the /v1/createSession endpoint. Valid for approximately two weeks. Reuse across multiple tile requests; each createSession call consumes quota.
orientationintegerNoRotation parameter in degrees counter-clockwise. Valid values: 0, 90, 180, or 270.
NameTypeRequiredDescription
datastringYesData from the action execution.
errorstringNoError if any occurred during the execution of the action.
successfulbooleanYesWhether or not the action execution was successful.

GOOGLE_MAPS_GET3D_TILES_ROOT

Retrieves the 3D Tiles tileset root configuration for photorealistic 3D map rendering. Use when you need to initialize a 3D renderer with Google’s photorealistic tiles following the OGC 3D Tiles specification. The Map Tiles API is billable per request; cache the root response client-side and avoid repeated calls.

NameTypeRequiredDescription
keystringNoYour Google Maps API key with Map Tiles API enabled. If not provided, will be extracted from connection metadata.
NameTypeRequiredDescription
datastringYesData from the action execution.
errorstringNoError if any occurred during the execution of the action.
successfulbooleanYesWhether or not the action execution was successful.

GOOGLE_MAPS_GET_DIRECTION

Fetches detailed directions between an origin and a destination, supporting intermediate waypoints and various travel modes. Automatically uses the modern Routes API with OAuth2 when available, falling back to legacy API with API key if provided.

NameTypeRequiredDescription
modestring (driving | walking | bicycling | transit)NoThe mode of transportation for which to calculate directions.
avoidstringNoSpecifies features to avoid in the generated route. Multiple values can be combined using a pipe delimiter (e.g., tolls|highways). Valid options include tolls, highways, and ferries.
unitsstring (metric | imperial)NoThe unit system for displaying distances. Defaults to imperial.
originstringYesThe starting point for the directions. Can be a textual address (e.g., 123 Main St, Los Angeles, CA), a place name (e.g., Disneyland), or latitude/longitude coordinates (e.g., 34.0522,-118.2437).
languagestringNoThe language code for returning results, e.g., en for English, es for Spanish. Defaults to en.
waypointsstringNoA pipe-separated (|) string of intermediate locations (addresses, place names, or coordinates) to visit between the origin and destination. For example: Anaheim, CA|Long Beach, CA or Hollywood Bowl|Getty Center.
destinationstringYesThe ending point for the directions. Can be a textual address, a place name, or latitude/longitude coordinates.
NameTypeRequiredDescription
datastringYesData from the action execution.
errorstringNoError if any occurred during the execution of the action.
successfulbooleanYesWhether or not the action execution was successful.

GOOGLE_MAPS_GET_PLACE_DETAILS

Retrieves comprehensive details for a place using its resource name (places/{place_id} format). Use when you need detailed information about a specific place.

NameTypeRequiredDescription
namestringYesGoogle Place ID ONLY — an alphanumeric code (NOT a business name, address, or search query). Accepts places/{place_id} or just the place_id. Place IDs typically start with ChIJ followed by alphanumeric characters. To find a place ID from a business name, first use TEXT_SEARCH or NEARBY_SEARCH.
fieldMaskstringNoComma-separated list of place fields to return (no spaces allowed). Use * for all fields (not recommended for performance/cost). Common fields: id, displayName, formattedAddress, location, types, rating, photos, reviews, regularOpeningHours, nationalPhoneNumber, internationalPhoneNumber, websiteUri, googleMapsUri.
regionCodestringNoUnicode country/region code (CLDR format) for region-specific display names. Examples: US, GB, FR, JP.
languageCodestringNoPreferred language code for place details (BCP-47 format). Examples: en, es, fr, ja.
sessionTokenstringNoURL-safe base64 string (max 36 characters) for Autocomplete session billing.
NameTypeRequiredDescription
datastringYesData from the action execution.
errorstringNoError if any occurred during the execution of the action.
successfulbooleanYesWhether or not the action execution was successful.

GOOGLE_MAPS_GET_ROUTE

Calculates one or more routes between two specified locations. Uses various travel modes and preferences; addresses must be resolvable by Google Maps. Response duration is a string with s suffix (e.g., "4557s"); parse before displaying.

NameTypeRequiredDescription
unitsstring (METRIC | IMPERIAL)NoUnit system for displaying distances. routes.distanceMeters in the response is always in meters; units only affects human-readable distance formatting in other fields.
fieldMaskstringNoComma-separated list of Route object fields to include in the response. If not specified, a default fieldMask is used based on travelMode. Explicitly include all needed fields such as routes.legs.steps and routes.polyline.encodedPolyline.
travelModestring (DRIVE | BICYCLE | WALK | TWO_WHEELER | TRANSIT)NoMode of transportation for the route.
languageCodestringNoBCP-47 language code (e.g., en-US, es) for textual information like navigation instructions.
origin_addressstringYesStarting point for the route calculation. Can be an address (e.g., 1600 Amphitheatre Parkway, Mountain View, CA) or coordinates as latitude,longitude (e.g., 48.8566,2.3522).
routingPreferencestring (ROUTING_PREFERENCE_UNSPECIFIED | TRAFFIC_UNAWARE | TRAFFIC_AWARE | TRAFFIC_AWARE_OPTIMAL)NoSpecifies routing preference. Cannot be set when travelMode is WALK, BICYCLE, or TRANSIT.
destination_addressstringYesDestination point for the route calculation. Can be an address or coordinates as latitude,longitude.
computeAlternativeRoutesbooleanNoComputes and returns alternative routes if true.
routeModifiers_avoidTollsbooleanNoAttempts to avoid toll roads if true.
routeModifiers_avoidFerriesbooleanNoAttempts to avoid ferries if true.
routeModifiers_avoidHighwaysbooleanNoAttempts to avoid highways if true.
NameTypeRequiredDescription
datastringYesData from the action execution.
errorstringNoError if any occurred during the execution of the action.
successfulbooleanYesWhether or not the action execution was successful.

GOOGLE_MAPS_LOOKUP_AERIAL_VIDEO

Looks up an aerial view video by address or video ID. Returns video metadata including state and URIs for playback. Use when you need to retrieve a previously rendered aerial video or check the status of a video render request. Note that receiving a video is a billable event.

NameTypeRequiredDescription
addressstringNoA US postal address. Either videoId or address must be provided, but not both.
videoIdstringNoAn ID returned from videos.renderVideo. Either videoId or address must be provided, but not both.
NameTypeRequiredDescription
datastringYesData from the action execution.
errorstringNoError if any occurred during the execution of the action.
successfulbooleanYesWhether or not the action execution was successful.

GOOGLE_MAPS_MAPS_EMBED_API

Generates an embeddable Google Map URL and HTML iframe code. Use when you need to display a map (place, view, directions, street view, search) on a webpage without JavaScript. Note: This API only works with API keys (no OAuth2 support). It generates embed URLs and does not make direct API calls. Generated embed URLs are publicly accessible; avoid passing sensitive or internal location queries.

NameTypeRequiredDescription
modestring (place | view | directions | streetview | search)YesThe mode of the embedded map.
api_keystringNoGoogle Maps API key. Required if not provided via connection metadata. The Maps Embed API only supports API key authentication, not OAuth.
view_paramsobjectNoParameters for view mode.
place_paramsobjectNoParameters for place mode.
search_paramsobjectNoParameters for search mode.
directions_paramsobjectNoParameters for directions mode.
streetview_paramsobjectNoParameters for streetview mode.
NameTypeRequiredDescription
datastringYesData from the action execution.
errorstringNoError if any occurred during the execution of the action.
successfulbooleanYesWhether or not the action execution was successful.

GOOGLE_MAPS_NEARBY_SEARCH

Searches for places (e.g., restaurants, parks) within a specified circular area, with options to filter by place types and customize the returned fields and number of results.

NameTypeRequiredDescription
radiusnumberYesRadius of the circular search area in meters.
latitudenumberYesLatitude coordinate of the search center in decimal degrees.
fieldMaskstringNoComma-separated list of place fields for the response. Fields are automatically prefixed with places. if missing. Use * for all fields (not recommended for production). Common fields: displayName, formattedAddress, id, types, rating, location, businessStatus, regularOpeningHours, photos.
longitudenumberYesLongitude coordinate of the search center in decimal degrees.
excludedTypesarrayNoList of place types to exclude from Table A. Results matching any of these types are omitted. Up to 50 types allowed.
includedTypesarrayNoList of place types to include from Table A. Results will match at least one of these types. Up to 50 types allowed. Common types: restaurant, cafe, bank, atm, hospital, pharmacy, school, park, gym, hotel, airport, gas_station.
maxResultCountintegerNoMaximum number of search results to return. Valid range: 1–20.
NameTypeRequiredDescription
datastringYesData from the action execution.
errorstringNoError if any occurred during the execution of the action.
successfulbooleanYesWhether or not the action execution was successful.

GOOGLE_MAPS_PLACE_PHOTO

Retrieves high quality photographic content from the Google Maps Places database. Use when you need to download a place photo using a photo_reference obtained from Place Details, Nearby Search, or Text Search requests. Images are scaled proportionally to fit within specified dimensions.

NameTypeRequiredDescription
maxwidthintegerNoMaximum desired width of the image in pixels (1–1600). Image will be scaled proportionally. You must specify either maxwidth, maxheight, or both.
maxheightintegerNoMaximum desired height of the image in pixels (1–1600). Image will be scaled proportionally. You must specify either maxwidth, maxheight, or both.
photo_referencestringYesA string identifier that uniquely identifies a photo. Can be either: (1) a full photo resource name in format places/{place_id}/photos/{photo} from the new Places API, or (2) just the photo reference string from the legacy API. Note: photo references cannot be cached and may expire over time.
NameTypeRequiredDescription
datastringYesData from the action execution.
errorstringNoError if any occurred during the execution of the action.
successfulbooleanYesWhether or not the action execution was successful.

GOOGLE_MAPS_RENDER_AERIAL_VIDEO

Starts rendering an aerial view video for a US postal address. Returns a video ID that can be used with lookupVideo to retrieve the video once rendering completes. Rendering typically takes up to a few hours.

NameTypeRequiredDescription
addressstringYesUS postal address for which to render aerial video. Must be a valid US address with street, city, state, and postal code.
NameTypeRequiredDescription
datastringYesData from the action execution.
errorstringNoError if any occurred during the execution of the action.
successfulbooleanYesWhether or not the action execution was successful.

GOOGLE_MAPS_TEXT_SEARCH

Searches for places on Google Maps using a textual query (e.g., “restaurants in London”, “Eiffel Tower”). Results may include CLOSED_PERMANENTLY or TEMPORARILY_CLOSED places — filter by businessStatus=OPERATIONAL. Include city/region and business type in textQuery to avoid empty or irrelevant results. Deduplicate using id or formattedAddress, not name alone. Throttle to ~1 req/s; OVER_QUERY_LIMIT (HTTP 429) requires exponential backoff.

NameTypeRequiredDescription
fieldMaskstringNoComma-separated list of place fields to return. The places. prefix is optional and will be added automatically. Use * for all fields (not recommended for performance/cost). Common aliases: namedisplayName, addressformattedAddress, url/websitewebsiteUri.
textQuerystringYesText query for searching places. Matched against place name, address, and category. Underspecified queries (missing city, region, or business type) yield empty or irrelevant results.
maxResultCountintegerNoMaximum number of place results to return (must be 1–20).
NameTypeRequiredDescription
datastringYesData from the action execution.
errorstringNoError if any occurred during the execution of the action.
successfulbooleanYesWhether or not the action execution was successful.

GOOGLE_MAPS_TILES_CREATE_SESSION

Creates a session token required for accessing 2D Tiles and Street View imagery. Use when you need to initialize tile-based map rendering or street view display. The session token is valid for approximately two weeks and must be included in all subsequent tile requests. Each call consumes quota — cache and reuse the returned token across all tile requests within its validity window rather than creating a new session per request.

NameTypeRequiredDescription
scalestring (scaleFactor1x | scaleFactor2x | scaleFactor4x)NoLabel scaling factor for high-resolution displays. Valid values: scaleFactor1x (standard), scaleFactor2x (2x resolution), or scaleFactor4x (4x resolution).
regionstringYesTwo-letter CLDR region code representing the user’s location (e.g., US, GB, FR). Helps Google Maps provide region-specific content.
stylesarrayNoJSON style objects for customizing map appearance (roadmap only). Allows custom styling of map features like roads, buildings, and landmarks.
highDpibooleanNoEnable high-resolution tiles for high DPI displays. Works only with 2x or 4x scale factors.
mapTypestring (roadmap | satellite | terrain | streetview)YesBase map type. Valid values: roadmap for standard road map, satellite for satellite imagery, terrain for terrain maps, or streetview for street view imagery.
overlaybooleanNoRender map layers separately (true) or combined into a single image (false).
languagestringYesIETF language tag specifying the display language for map labels and information (e.g., en-US, es-ES, fr-FR).
layerTypesarrayNoOverlay options for the map. Valid values: layerRoadmap (road overlay), layerStreetview (street view overlay), layerTraffic (traffic layer). Note: terrain mapType requires layerRoadmap.
imageFormatstring (jpeg | png)NoOutput format for tile images. Valid values: jpeg or png. If omitted, the format will be auto-selected by the API.
NameTypeRequiredDescription
datastringYesData from the action execution.
errorstringNoError if any occurred during the execution of the action.
successfulbooleanYesWhether or not the action execution was successful.