Google Maps Photos API
for full-resolution place photos at scale
Pull the photo gallery for any Google Maps place as clean JSON. One request returns a batch of thumbnails and full-resolution image URLs, paginated through the whole gallery, with proxies handled for you.
of requests succeed
median response
95% finish faster
per 1k photo batches at volume
Google lazy-loads the gallery. Your parser shouldn't care.
- Photos loaded on scroll, not in the HTML
- Full-size URL hidden behind the thumbnail
- Gallery paginated with rotating tokens
- Proxies and captchas per place
- Re-parse the gallery after each redesign
One GET Request. That's the whole integration.
Start with just a query. Add more parameters when your use case needs them.
curl -G 'https://api.hasdata.com/scrape/google-maps/photos' \
--data-urlencode 'dataId=0x80cc0654bd27e08d:0xb1c2554442d42e8d' \
--header 'x-api-key: <YOUR_API_KEY>' \
--header 'Content-Type: application/json'dataId Data IDplaceId Place IDnextPageToken Next Page Tokenhl LanguagecategoryId Category IDEvery photo, one predictable schema
Each photo comes back as a thumbnail and a full-resolution URL. Map the two fields once and forget about it.
// Batches come back paginated. Pass the returned token to walk the whole gallery.
[
{
"thumbnail": "https://lh3.googleusercontent.com/gps-cs-s/AHRPTWmpj2Yg=w150-h150",
"image": "https://lh3.googleusercontent.com/gps-cs-s/AHRPTWmpj2Yg=w4032-h3024"
}
]thumbnail stringSmall preview URL for quick display
image stringFull-resolution image URL
// Gallery categories you can request, e.g. Latest, Videos, or By owner.
[
{ "id": "CgIgAQ", "title": "All" },
{ "id": "CgIYAQ", "title": "Latest" },
{ "id": "CgIYBg", "title": "Videos" },
{ "id": "CgIYBA", "title": "By owner" }
]id stringCategory token to pass on the request
title stringHuman-readable category name
An all-in-one scraping service
Every feature you need to collect data from thousands to millions of requests.
Discover similar
scrapers and APIs
to expand your projects.
Google Maps Search API
Local Market Research • $0.37 / 1k Request
Google Maps Reviews API
Sentiment Analysis • $0.37 / 1k Request
Fits right into your stack.
Works with the tools you already use.
View Documentation ->Teams that deleted their scraper
Now it's the part of the pipeline they don't think about
The Google Maps API from HasData has been incredibly useful for collecting structured local business data. We were able to extract names, categories, contact details, and even customer reviews.
HasData delivers exactly what we need: speed and comprehensive search features. It's the fastest API we've used in this space. Plus, their customer support is fantastic.
We rely on HasData for search performance data and broader scraping needs. Their APIs deliver highly structured data that integrates directly into our platforms.
Great web scraping API which is incredibly easy to use. It requires minimal effort to get up and running, and the documentation is very clear and helpful.
I needed to scrape some information they didn't already support, and they wrote the code for me right away, which was super nice of them.
Plans that get cheaper at scale
Fixed price, fixed volume, no surprises at the end of the month. Upgrade when you need more.
Free
Startup
Business
RecommendedEnterprise
Monthly photo batch volume
Start with 200 free photo batches. No credit card required.
Questions, answered
Pass the place's dataId, which the Google Maps Search API returns for every result. Feed that in and you get the place's photo gallery back.
Each response carries a pagination token. Pass it on the next request to fetch the next batch, and repeat until the token stops coming back. One request is one batch.
Both. Every photo carries a thumbnail for quick previews and image, the full-resolution URL, so you can display previews and download originals only where you need them.
Per successful request. One request is one photo batch. A failed request costs nothing.
Yes, a one-time trial of 200 photo batches with every field included. No credit card required. When you're done testing, pick a plan that fits your volume.
One photo batch costs 5 credits. The unit price drops with volume, from about $1.23 down to $0.37 per 1,000 batches. Need more than the top plan covers? We'll set a custom rate.
No. Requests run on HasData's infrastructure, so there's nothing to provision or maintain. You're responsible for using the results in line with each target site's terms and applicable law.
Yes, you can cancel your subscription at any time from your dashboard in a few seconds. Once cancelled, there are no recurring payments.
Your first photo batch
is minutes away
200 photo batches free · no credit card