googleapis / googleapis/google-cloud-python

Improve support for `X-Goog-FieldMask` header

オープン
#16,296 コメント 3 件 リアクション 0 件 担当者 1 名 @ohmayr が担当を希望しています GitHub で見る
api: places type: feature request
主要言語
Python
スター
5.4k
フォーク
1.8k
平均マージ
3日 4時間
マージ済み PR(30日)
122

説明

#### 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!

コントリビューションガイド

コントリビューションガイドを開く

評価

この issue はまだ評価されていません。

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。