---
title: "Get the photos of a Google Maps place"
method: GET
path: "/google-maps/photos"
tags: ["Google Maps"]
---

# Get the photos of a Google Maps place

`GET /google-maps/photos`

## Request

- Base URL: `https://api.scrapefield.com/v1`
- URL: `https://api.scrapefield.com/v1/google-maps/photos`
- Auth: one of:
  - HTTP bearer
  - none

Fetch the photos on one place's listing, as URLs on Google's CDN; we do not rehost images. Dimensions and uploader are in the object, and null where the source does not give them.

Give exactly one of `place_id` or `url` to identify the place.

Costs 4 credits, whether the answer is fetched or served from cache. A failed call is refunded automatically.

## Query parameters

- `place_id` string
- `url` string
- `limit` integer
- `cursor` string
- `fresh` boolean
- `demo` boolean

## Response `200`

The request succeeded.

- object
  - `data` GoogleMapsPhoto[], required
    - `url` string, uri, required: The image on Google's CDN. We do not rehost images.
    - `width` integer, nullable, required: Pixels.
    - `height` integer, nullable, required: Pixels.
    - `author_name` string, nullable, required: Who uploaded it, as the listing credits them. `null` for the owner's own photos.
    - `author_url` string, uri, nullable, required: Their Google Maps contributor page.
  - `meta` Meta, required
    - `request_id` string, required: Quote this if you contact support.
    - `credits_charged` integer, required: The endpoint's published cost. 0 for a demo answer, and for a list emptied because everyone in it asked not to be served. A failed call has no `meta`: it answers with an error, and is refunded.
    - `credits_remaining` integer
    - `cached` boolean, required
    - `fetched_at` string, date-time, required: When the data was actually fetched — the original time on a cache hit, so freshness is always visible.
    - `next_cursor` string, nullable, required: Pass as `cursor` for the next page. `null` on the last page. It lasts as long as the answer is cached.
    - `demo` boolean: Present, and true, on a demo answer (`?demo=true` with no key).
    - `note` string: On a demo answer: what it is, and what a live call costs.

## Other responses

- `400`: Something went wrong. `error.code` is stable; `error.message` says what to do next.
- `401`: Something went wrong. `error.code` is stable; `error.message` says what to do next.
- `403`: Something went wrong. `error.code` is stable; `error.message` says what to do next.
- `404`: Something went wrong. `error.code` is stable; `error.message` says what to do next.
- `429`: Something went wrong. `error.code` is stable; `error.message` says what to do next.
- `500`: Something went wrong. `error.code` is stable; `error.message` says what to do next.
- `501`: Something went wrong. `error.code` is stable; `error.message` says what to do next.
- `502`: Something went wrong. `error.code` is stable; `error.message` says what to do next.

---

[API](https://skmtc.dev/scrapefield/apis/scrapefield-api.md) · [All operations](https://skmtc.dev/scrapefield/apis/scrapefield-api/llms.txt) · [OpenAPI document](https://skmtc.dev/scrapefield/apis/scrapefield-api/revisions/cc5961ac63cf?raw)
