googleapis / googleapis/google-cloud-python

Improve support for `X-Goog-FieldMask` header

Ouverte
#16,296 3 commentaires 0 réactions 1 personne assignée Réclamée par @ohmayr Voir sur GitHub
api: places type: feature request
Langage dominant
Python
Étoiles
5.4k
Forks
1.8k
Merge moyen
3 j 4 h
PR mergées (30 j)
122

Description

#### Environment details

- OS type and version: MacOS 14.5 (23F79)
- Python version: 3.12.3
- pip version: 24.0
- `google-api-core` version: 2.19.1

#### Steps to reproduce

1. Set up `PlacesAsyncClient`
2. Make a `search_text` request

#### Code example

```python
from google.auth.api_key import Credentials
from google.maps import places_v1
from google.protobuf import field_mask_pb2
from google.type import latlng_pb2

async def sample_search_text():
api_key = "..."

# Field mask goes where?
field_mask=field_mask_pb2.FieldMask(paths=["places.displayName", "places.id"]),

client = places_v1.PlacesAsyncClient(
credentials=Credentials(token=api_key)
)

request = places_v1.SearchTextRequest(
text_query="21 Great Winchester Street, London",
location_bias=places_v1.SearchTextRequest.LocationBias(
circle=places_v1.Circle(
center=latlng_pb2.LatLng(
latitude=51.519993, longitude=-0.0813288
),
radius=1000,
)
),
max_result_count=20,
)

response = await client.search_text(request=request)

print(response)

if __name__ == "__main__":
import asyncio

asyncio.run(sample_search_text())

```

#### Stack trace
```
google.api_core.exceptions.InvalidArgument: 400 FieldMask is a required parameter. See https://cloud.google.com/apis/docs/system-parameters on how to provide it. As an example, you can set the header 'X-Goog-FieldMask' to value 'places.displayName', 'places.id' to ask for the display name and the place id of a place. You can also set the value to '*' in manual testing to get all the available response fields.
```

Making sure to follow these steps will guarantee the quickest resolution possible.

Thanks!

Guide de contribution

Ouvrir le guide de contribution

Évaluation

Cette issue n'a pas encore été évaluée.

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.