Pular para o conteúdo
Docs

Visualizações de produto registradas pelo script de rastreamento.

product.viewed

Enviado cada vez que o comando product do script de rastreamento registra uma visualização de produto. As visualizações vêm de contatos conhecidos e de visitantes anônimos. Quando um visitante anônimo é identificado depois, as visualizações anteriores dele contam para o contato, mas os eventos já enviados mantêm contact_id como null. Consulte E-commerce.

As visualizações de produtos vêm do tráfego do site, então os webhooks que recebem All events não recebem este evento. Inscreva o webhook em product.viewed pelo nome.

As requisições de webhook trazem um array JSON de eventos como este; consulte Requisições de webhook.

Campos

event_idstring

ID do evento (evt_…). Uma nova tentativa da requisição traz o mesmo ID, então use-o para ignorar eventos que você já processou. Você também pode consultar o evento com Obter um evento.

typestring

Sempre product.viewed.

objectobject

A visualização de produto que o evento descreve. Os campos dela estão listados abaixo.

data.objectobject

O mesmo objeto de novo, no formato que a API de eventos retorna em data.

Objeto de visualização de produto

objectstring

Sempre product_view.

productobject

O produto visualizado: id (prd_…, null quando o produto não está no seu catálogo), external_id (o ID do produto na sua loja), title, url, image_url, price e currency. Os valores vêm do seu catálogo quando o produto está nele e, caso contrário, da chamada product.

contact_idstring | null

O contato que visualizou o produto (con_…), ou null para um visitante anônimo.

emailstring | null

O endereço de e-mail do contato, ou null para um visitante anônimo.

anonymous_idstring | null

O ID que o script de rastreamento usa para o navegador do visitante.

viewed_atstring

Quando o visitante visualizou o produto, em ISO 8601 UTC.

sourcestring

Sempre js (o script de rastreamento).

contextobject | null

O que o script sabe sobre a visita: page (url, path, title, referrer), campaign (valores UTM), locale, timezone, library e user_agent. Os mesmos campos dos eventos do script de rastreamento.

JSON
{
  "event_id": "evt_3xbB2QmL7cVn0Rk8sWd4TfY1uHa",
  "type": "product.viewed",
  "object": {
    "object": "product_view",
    "product": {
      "id": "prd_3Rx6aB1cD2eF3gH4iJ5kL6mN7oP",
      "external_id": "8123456789",
      "title": "Trail running shoe",
      "url": "https://shop.example.com/products/trail-running-shoe",
      "image_url": "https://shop.example.com/images/trail-running-shoe.jpg",
      "price": 89,
      "currency": "USD"
    },
    "contact_id": "con_3EwrXnu9OaQWlfI1AyPUUEoYjQs",
    "email": "ada@example.com",
    "anonymous_id": "anon_5f0c9e2b7d1a4c8e9b3f6a2d1c0e7b4a",
    "viewed_at": "2026-10-19T09:12:40.512Z",
    "source": "js",
    "context": {
      "page": {
        "url": "https://shop.example.com/products/trail-running-shoe",
        "path": "/products/trail-running-shoe",
        "title": "Trail running shoe"
      },
      "campaign": { "source": "emailit", "medium": "email", "name": "Autumn sale" },
      "timezone": "Europe/Prague"
    }
  },
  "data": {
    "object": {
      "object": "product_view",
      "product": {
        "id": "prd_3Rx6aB1cD2eF3gH4iJ5kL6mN7oP",
        "external_id": "8123456789",
        "title": "Trail running shoe",
        "url": "https://shop.example.com/products/trail-running-shoe",
        "image_url": "https://shop.example.com/images/trail-running-shoe.jpg",
        "price": 89,
        "currency": "USD"
      },
      "contact_id": "con_3EwrXnu9OaQWlfI1AyPUUEoYjQs",
      "email": "ada@example.com",
      "anonymous_id": "anon_5f0c9e2b7d1a4c8e9b3f6a2d1c0e7b4a",
      "viewed_at": "2026-10-19T09:12:40.512Z",
      "source": "js",
      "context": {
        "page": {
          "url": "https://shop.example.com/products/trail-running-shoe",
          "path": "/products/trail-running-shoe",
          "title": "Trail running shoe"
        },
        "campaign": { "source": "emailit", "medium": "email", "name": "Autumn sale" },
        "timezone": "Europe/Prague"
      }
    }
  }
}

Esta página foi útil?

Obrigado pelo feedback.

Obrigado, lemos todas as mensagens.