**European Economic Area (EEA) developers**

> [!NOTE]
> If your billing address is in the European Economic Area, effective on 8 July 2025, the [Google Maps Platform EEA Terms of Service](https://cloud.google.com/terms/maps-platform/eea) will apply to your use of the Services. Functionality varies by region. [Learn more](https://developers.google.com/maps/comms/eea/faq.md.txt).

## Introduction

The Places API supports
[Place Photos (Legacy)](https://developers.google.com/maps/documentation/places/web-service/photos).
If you are familiar with Place Photos (Legacy),
[Place Photos (New)](https://developers.google.com/maps/documentation/places/web-service/place-photos.md.txt)
makes the following changes:

- Place Photos (New) requires that you pass the resource name of the photo, which includes the place ID in the request URL, instead of just the photo reference. For more information, see [Change to photo references](https://developers.google.com/maps/documentation/places/web-service/legacy/migrate-photo.md.txt#photo-ref).
- Place Photos (New) supports both [API keys](https://developers.google.com/maps/documentation/places/web-service/get-api-key.md.txt) and [OAuth](https://developers.google.com/maps/documentation/places/web-service/oauth-token) tokens as the authentication mechanism.

The following table lists parameters in
Place Photos (Legacy) that have been renamed or
modified for Place Photos (New), or parameters
that are no longer supported.

| Current parameter | New parameter | Notes |
|---|---|---|
| `maxheight` | `maxHeightPx` | You must specify either `maxHeightPx`, `maxWidthPx`, or both. |
| `maxwidth` | `maxWidthPx` | You must specify either `maxHeightPx`, `maxWidthPx`, or both. |

### Increased photo size

Place Photos (Legacy) supported a maximum photo
size of 1600 by 1600 pixels. Place Photos (New)
supports sizes up to 4800 by 4800 pixels.

### Change to photo references

[Place Photos (New)](https://developers.google.com/maps/documentation/places/web-service/place-photos.md.txt)
API requires that you pass the *resource name* of the requested photo, which
includes a **place ID** and the **photo reference**, in the form:

```json
https://places.googleapis.com/v1/places/PLACE_ID/photos/PHOTO_REFERENCE/media?maxWidthPx=400&key=API_KEY
```

Nearby Search (New),
Text Search (New), and
Place Details (New)
all return a `photos[]` array in the response that supports this format. Each
element of `photos[]` in the new response contains the following fields:

- `name` --- A string containing the resource name of the
  photo. This string is in the form:

  ```
  places/PLACE_ID/photos/PHOTO_REFERENCE
  ```
- `heightPx` --- The maximum height of the image, in pixels.
- `widthPx` --- The maximum width of the image, in pixels.
- `authorAttributions[]` --- Any required attributions. This field is always present, but might be empty.

With the legacy API, you only have to pass the **photo reference**, in the
form:

```json
https://maps.googleapis.com/maps/api/place/photo?photo_reference=PHOTO_REFERENCEmaxwidth=400&key=API_KEY
```

Find Place (Legacy),
Nearby Search (Legacy),
Text Search (Legacy), and
Place Details (Legacy) all return a `photos[]` array in
the response that supports this format. Each `photo` element in the legacy
response contains the following fields:

- `photo_reference` --- A string used to identify the photo when you perform a Photo request.
- `height` --- The maximum height of the image.
- `width` --- The maximum width of the image.
- `html_attributions[]` --- Any required attributions. This field is always present, but might be empty.

> [!NOTE]
> **Note:** The `photo_reference` field does not include the place ID. If you want to use Place Photos (New) with these legacy APIs, you must add the place ID to construct the full resource name.