エンティティ フィードを作成してアップロードする
エンティティ フィードを作成してアップロードする際は、次の手順に沿って操作してください。
- エンティティ データファイルについては、エンティティ フィードに記載されている仕様に従ってください。アップロードごとに一意のエンティティ データファイル名を使用することをおすすめします。ファイル名にタイムスタンプを含めます(例:
Entity_1633621547.json)。 - ファイルセット記述子で、
nameフィールドをreservewithgoogle.entityに設定します。記述子ファイルの例については、JSON のサンプルを参照してください。アップロードごとに一意の記述子ファイル名を使用することをおすすめします。ファイル名にタイムスタンプを含めます(例:Entity_1633621547.filesetdesc.json)。記述子ファイルは汎用 SFTP サーバーにアップロードする必要があります。 - 汎用 SFTP サーバーにフィードを毎日アップロードして、完全な更新を行います。
- SFTP サーバーの詳細は、パートナー ポータルの [Configuration > Feeds] セクションで確認できます。
- フィードの取り込みステータスは、パートナー ポータルの [Feeds(フィード)> History(履歴)] セクションで確認できます。
定義
EntityFeed の定義
message EntityFeed { repeated Entity data = 1; }
エンティティの定義
// // Information about an Entity that is on the partner's platform. For example, // an Entity could be a retail store, a hospital, an online business etc. message Entity { // An opaque string generated by the partner that identifies an Entity. // Must be unique across all entities. // Strongly recommended to only include URL-safe characters. (required) string entity_id = 1; // If present, the name, telephone, url and location are used to support // matching partner inventory with entities already present on Google. This // information will not be displayed. // The name of the Entity. (required) string name = 2; // The contact telephone number of the Entity including its country and area // codes, e.g. +14567891234. Highly recommended. (optional) string telephone = 3; // The url of the Entity's public website. Highly recommended. (optional) string url = 4; // The location of the Entity (required) madden.ingestion.GeoCoordinates location = 5; // This field is used by the aggregator to define which Brand should be // applied to which entity. (optional) string aggregator_brand_id = 6; }
GeoCoordinates の定義
// The Geo data of a location, including latitude, longitude, and address. // At least one of [lat/lng or address] should be provided (or both). message GeoCoordinates { // [-90, +90] degrees (inclusive). (optional) double latitude = 1; // [-180, +180] degrees (inclusive). (optional) double longitude = 2; // Address for a location, could either be structured or unstructured. oneof addresses { // Postal address of the location, preferred. PostalAddress address = 3; // An unstructured address could also be provided as a fallback. // E.g. "1600 amphitheatre parkway mountain view, ca 94043" string unstructured_address = 4; } }
PostalAddress の定義
// The postal address for a merchant. message PostalAddress { // The country, using ISO 3166-1 alpha-2 country code, e.g. "US" (required) string country = 1; // The locality/city, e.g. "Mountain View". (required) string locality = 2; // The region/state/province, e.g. "CA". This field is only required in // countries where region is commonly a part of the address. (optional) string region = 3; // The postal code, e.g. "94043". (required) string postal_code = 4; // The street address, e.g. "1600 Amphitheatre Pkwy". (required) string street_address = 5; }
エンティティ フィードのサンプル
エンティティ フィード
ファイル名 : entity_1697754089_0001.json
{ "data": [ { "entity_id": "dining-1", "name": "Sample Eatery 1", "telephone": "+1-415-876-5432", "url": "www.sampleeatery1.com", "location": { "latitude": 37.404570, "longitude": -122.033160, "address": { "country": "US", "locality": "Sunnyvale", "region": "CA", "postal_code": "94089", "street_address": "815 11th Ave" } } }, { "entity_id": "dining-2", "name": "Sample Eatery 2", "telephone": "+1-415-123-4567", "url": "www.sampleeatery2.com", "location": { "latitude": 37.422113, "longitude": -122.084041, "address": { "country": "US", "locality": "Sunnyvale", "region": "CA", "postal_code": "94089", "street_address": "805 11th Ave" } } } ] }
記述子ファイル
ファイル名 : entity_1697754089.filesetdesc.json
{
"generation_timestamp": 1697754089,
"name": "reservewithgoogle.entity",
"data_file": [
"entity_1697754089_0001.json",
"entity_1697754089_0002.json"
]
}