Feed azioni

Creare e caricare feed di azioni

Quando crei e carichi feed di azione, assicurati di seguire queste istruzioni:

  • Segui le specifiche descritte nel feed delle azioni per i file di dati delle azioni. Tra un caricamento e l'altro devi utilizzare nomi di file di dati delle azioni univoci. È consigliabile includere un timestamp nel nome del file, ad esempio action1_1633621547.json.
  • Nel descrittore del set di file, imposta il campo name su reservewithgoogle.action.v2. Per un esempio del file descrittore, fai riferimento all'esempio di file JSON descrittore. Devi utilizzare nomi di file descrittori univoci tra un caricamento e l'altro. È consigliabile includere un timestamp nel nome del file, ad esempio action1_1633621547.filesetdesc.json. Il file descrittore deve essere caricato nella casella personale SFTP generica.
  • I feed devono essere caricati ogni giorno nella casella personale SFTP generica durante gli aggiornamenti completi.
  • Puoi trovare informazioni generiche sulla casella personale SFTP del feed nella sezione Configurazione > Feed del portale partner.
  • Selezionare le caselle personali dei feed

  • Puoi trovare lo stato di importazione del feed generico nella sezione Feed > Cronologia del portale partner.

Definizioni

Definizione di ActionFeed

message ActionFeed {
  repeated ActionDetail data = 1;
}

Definizione di ActionDetails

message ActionDetail {
  string entity_id = 2;
  string link_id = 3;

  // Deep link for action detail
  string url = 4;
  repeated Action actions = 1;
}

Definizione dell'azione

// 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;
  }
}

Definizione di Informazioni per ordinare cibo

message FoodOrderingInfo {
  // Service type for food ordering action.
  enum ServiceType {
    UNKNOWN = 0;
    DELIVERY = 1;
    TAKEOUT = 2;
  }

  ServiceType service_type = 1 [features.field_presence = IMPLICIT];
}

Esempi di feed di azioni

Solo consegna

Nome file : 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"
    }
  ]
}

Solo asporto

Nome file : 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"
    }
  ]
}

Consegna a domicilio e asporto

Nome file : 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 diverso per consegna + asporto

Nome file : 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"
    }
  ]
}

File descrittore

Nome file : actions1_1697754089.filesetdesc.json

{
  "generation_timestamp": 1697754089,
  "name": "reservewithgoogle.action.v2",
  "data_file": ["actions1_1697754089.json"]
}