TRAVELDEVELOPER TOOLSAI API MCP READY

Google Maps Photos API

Google Maps Photos API - every photo for any place as structured JSON: full-size image URLs, thumbnails, gallery position, and a stable photo ID. Search by name, paste a map URL, or chain an identifier. Filter to menu, food and drink, vibe, by owner, videos, or Street View and 360.

RECORDS20
MEDIAN LAGon demand
PARAMETERS10
TOTAL USERS2
MONTHLY ACTIVE1
TOTAL RUNS25
SUCCESS (30D)100.0%
RATINGno ratings yet
LAST MODIFIED2026-08-08
PUBLISHED2026-08

Input parameters

PARAMETERTYPEREQDEFAULTDESCRIPTION
searchTerm string no Find a place by name, or by category and city. Billed per search term, not per place found.
searchTerms array no Run several searches in one go.
maxPlacesPerSearch integer no How many of each search's matches to fetch photos for. Default 3, max 20.
placeUrls array no Google Maps place URLs. The identifier is read out of each link locally, so no search charge applies.
dataId string no A place identifier you already have, as the hex pair or the dataId from a places search.
dataIds array no Several identifiers at once.
maxPhotosPerPlace integer no Photos per place. Default 20; they arrive in blocks of 20.
photoCategory enum no Return one gallery section: all, latest, videos, by owner, street view, menu, food and drink, or vibe.
categoryId string no A venue-specific section such as one dish. Overrides photoCategory.
hl string no Two-letter interface language. Default en.

Worked examples

Basic — a realistic first run
{
  "searchTerm": "coffee shops in Austin, TX",
  "maxPlacesPerSearch": 5,
  "photoCategory": "food_and_drink",
  "maxPhotosPerPlace": 40
}
POWER-USER TIP
POWER-USER TIP
POWER-USER TIP

Tasks

Saved runs with the inputs already filled in — each one a standalone page and a working configuration example.

Request a task →

Code

curl

curl -X POST "https://api.apify.com/v2/acts/johnvc~google-maps-photos-api/run-sync-get-dataset-items" \
  -H "Authorization: Bearer $APIFY_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"searchTerm": "coffee shops in Austin, TX", "maxPlacesPerSearch": 5, "photoCategory": "food_and_drink", "maxPhotosPerPlace": 40}'

Python

from apify_client import ApifyClient

client = ApifyClient("APIFY_TOKEN")
run = client.actor("johnvc/google-maps-photos-api").call(
    run_input={'searchTerm': 'coffee shops in Austin, TX', 'maxPlacesPerSearch': 5, 'photoCategory': 'food_and_drink', 'maxPhotosPerPlace': 40}
)
for item in client.dataset(run.default_dataset_id).iterate_items():
    print(item)

What people use it for