Créer et importer des flux d'action
Lorsque vous créez et importez des flux d'actions, veillez à respecter les instructions suivantes:
- Suivez la spécification décrite dans le flux d'actions pour les fichiers de données d'action. Vous devez utiliser des noms de fichiers de données d'action uniques entre les importations.
Nous vous recommandons d'inclure un code temporel dans le nom du fichier, par exemple
action1_1633621547.json
. - Dans le descripteur d'ensemble de fichiers, définissez le champ
name
surreservewithgoogle.action.v2
. Pour obtenir un exemple de fichier descripteur, consultez l'exemple JSON de fichier de descripteur. Vous devez utiliser des noms de fichiers de descripteurs uniques entre les importations. Nous vous recommandons d'inclure un code temporel dans le nom du fichier, par exempleaction1_1633621547.filesetdesc.json
. Le fichier descripteur doit être importé dans la boîte de dépôt SFTP générique. - Les flux doivent être importés tous les jours sur la boîte de dépôt SFTP générique sous forme d'actualisations complètes.
- Vous trouverez des informations génériques sur la boîte de dépôt SFTP pour les flux dans la section Configuration > Flux du portail des partenaires.
- Vous pouvez consulter l'état générique d'ingestion du flux dans la section Flux > Historique du portail des partenaires.
Définitions
Définition d'ActionFeed
message ActionFeed { repeated ActionDetail data = 1; }
Définition d'ActionDetail
message ActionDetail { string entity_id = 2; string link_id = 3; // Deep link for action detail string url = 4; repeated Action actions = 1; }
Définition de l'action
// Information about an Action which could be performed. message Action { // Deprecated fields not to be reused. reserved 1; oneof action_info { FoodOrderingInfo food_ordering_info = 3; } }
Définition FoodOrderingInfo
message FoodOrderingInfo { // Service type for food ordering action. enum ServiceType { UNKNOWN = 0; DELIVERY = 1; TAKEOUT = 2; } ServiceType service_type = 1 [features.field_presence = IMPLICIT]; }
Exemples de flux d'actions
Livraison uniquement
Nom de fichier : actions1_1697754089.json
{ "data": [ { "actions": [{ "food_ordering_info": { "service_type": "DELIVERY" } }], "entity_id": "entity002", "link_id": "delivery_link/entity002", "url": "https://www.restaurant.com/delivery/entity002" } ] }
Vente à emporter uniquement
Nom de fichier : actions1_1697754089.json
{ "data": [ { "actions": [{ "food_ordering_info": { "service_type": "TAKEOUT" } }], "entity_id": "entity002", "link_id": "takeout_link/entity002", "url": "https://www.restaurant.com/takeout/entity002" } ] }
Livraison et vente à emporter
Nom de fichier : actions1_1697754089.json
{ "data": [ { "actions": [ { "food_ordering_info": { "service_type": "DELIVERY" } }, { "food_ordering_info": { "service_type": "TAKEOUT" } } ], "entity_id": "entity002", "link_id": "common_link/entity002", "url": "https://www.restaurant.com/commonlink/entity002" } ] }
URL différente pour la livraison et la vente à emporter
Nom de fichier : actions1_1697754089.json
{ "data": [ { "actions": [ { "food_ordering_info": { "service_type": "TAKEOUT" } } ], "entity_id": "entity002", "link_id": "takeout_link/entity002", "url": "https://www.restaurant.com/takeout/entity002" }, { "actions": [ { "food_ordering_info": { "service_type": "DELIVERY" } } ], "entity_id": "entity002", "link_id": "delivery_link/entity002", "url": "https://www.restaurant.com/delivery/entity002" } ] }
Fichier de descripteur
Nom de fichier : actions1_1697754089.filesetdesc.json
{ "generation_timestamp": 1697754089, "name": "reservewithgoogle.action.v2", "data_file": ["actions1_1697754089.json"] }