Feed de ações

Criar e fazer o upload de feeds de ações

Ao criar e fazer upload de feeds de ações, siga estas instruções:

  • Siga as especificações descritas no feed de ações para os arquivos de dados de ações. Use nomes exclusivos nos arquivos de dados de ações entre uploads. É recomendável incluir um carimbo de data/hora no nome do arquivo, por exemplo, action1_1633621547.json.
  • No descritor do conjunto de arquivos, defina o campo name como reservewithgoogle.action.v2. Para ver um exemplo do arquivo descritor, consulte a Amostra JSON do arquivo descritor. É necessário usar nomes de arquivos de descritores exclusivos entre uploads. É recomendável incluir um carimbo de data/hora no nome do arquivo, por exemplo, action1_1633621547.filesetdesc.json. O arquivo descritor precisa ser enviado para a caixa de depósito SFTP genérica.
  • Os feeds precisam ser enviados para a caixa de depósito SFTP genérica diariamente como atualizações completas.
  • Você encontra informações genéricas sobre a caixa de depósito SFTP do feed na seção Configuração > Feeds do portal de parceiros.
  • Seleção de caixas de depósito de feeds

  • Você encontra o status genérico de processamento do feed na seção Feeds > Histórico do portal de parceiros.

Definições

Definição de ActionFeed

message ActionFeed {
  repeated ActionDetail data = 1;
}

Definição do ActionDetail

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

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

Definição da ação

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

Definição de 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];
}

Exemplos de feed de ação

Somente entrega

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

Somente retirada

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

Entrega e retirada

Nome do arquivo : 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 diferente para entrega + retirada

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

Arquivo descritor

Nome do arquivo : actions1_1697754089.filesetdesc.json

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