---
title: "Page View"
method: POST
path: "/events/page-view"
tags: ["Send Event"]
---

# Page View

`POST /events/page-view`

Records that a user has viewed a page; this should also include data of the viewed category, search, and/or items.

## Request body

- EventsPageViewEvent
  - `identification` EventsIdentification, required
    - `sessionIdentification` EventsSessionIdentification, required — Metadata representing a users session. Allows Wunderkind to connect multiple events into a single session. NOTE: Exactly one of wunderkindVisitorIdentifier or partnerVisitorId must be provided.
      - `wunderkindVisitorIdentifier` EventsWunderkindVisitorIdentifier
        - `deviceId` string, int64, required — Wunderkind device identifier as returned onsite with `bouncex.cookie.did`
        - `visitId` string, required — Wunderkind visit identifier as returned onsite with `bouncex.cookie.vid`
      - `partnerVisitorId` string — Generate and store a random 16 character alphanumeric identifier for the visitor if not already present. This identifier should be consistent for repeat visitors.
      - `smarterhqVisitorIdentifier` EventsSmarterHQVisitorIdentifier
        - `loiid` string, required — SmarterHQ loiid
        - `sessionId` string, required — SmarterHQ session id
    - `userIdentification` EventsUserIdentification, required — Metadata representing the user behind the session.
      - `email` string — Email address. This is preferred over the SHA256 hashed email.
      - `emailSha256` string — Email address (SHA256 hashed). Ensure to lowercase the email before hashing.
      - `phone` string — Phone Number - please pass in the format +(country code)(phone number). This is preferred over the SHA256 hashed phone number.
      - `phoneSha256` string — Phone Number (SHA256 hashed)
      - `partnerId` string — Partner identifier - An identifier for the partner that owns the user
      - `additionalIdentifiers` object — Additional identifiers
      - `source` string — Source of the user
    - `deviceIdentification` EventsDeviceIdentification, required — Metadata representing the device used by the user.
      - `ipAddress` string, required — The IP address of the user (IPv4 or IPv6)
      - `userAgent` string — The user agent of the browser
    - `source` 'web' | 'app' | 'retail', required
    - `profile` EventsProfile
      - `firstName` string — The first name of the user
      - `lastName` string — The last name of the user
      - `address` string — The address of the user
      - `city` string — The city of the user
      - `state` string — The state of the user
      - `zip` string — The zip code of the user
      - `country` string — The country of the user
    - `location` EventsLocation
      - `timezoneOffset` integer — The UTC timezone offset of the user
      - `latitude` number, float — The latitude of the user
      - `longitude` number, float — The longitude of the user
  - `url` string, required — URL of the page
  - `item` EventsItemPageDetails
    - `itemId` string, required — The unique identifier for the item as defined by the partner. This represents the parent identifier for the item. For example, if you sell similar shirts, they may have the same parent id, but a different sku for each size / color combination
    - `sku` string — The SKU of the item as defined by the partner. This represents the child identifier for the item. For example, if you sell similar shirts, they may have the same parent id, but a different sku for each size / color combination. This is optional, but should be included if available.
    - `name` string, required — The name of the item as defined by the partner
    - `category` string, required — The category of the item as defined by the partner
    - `brand` string, required — The brand of the item as defined by the partner
    - `image` string, required — The URL of the image of the item as defined by the partner
    - `available` boolean, required — Whether the item is available for purchase
    - `price` EventsMoney, required
      - `amount` number, double, required — The amount of money
      - `currency` string, required — The currency code
    - `attributes` object, required — Additional attributes of the item as defined by the partner
  - `category` EventsCategoryPageDetails
    - `name` string, required — The category of the item as defined by the partner
    - `itemIds` string[], required — The unique identifiers of the items as defined by the partner in the category on this specific pageview
  - `search` EventsSearchPageDetails
    - `query` string, required — The search query as entered by the user
    - `itemIds` string[], required — The unique identifiers of the items as defined by the partner in the search results
  - `pageType` 'home' | 'category' | 'product' | 'search' | 'cart' | 'checkout' | 'appdeeplink', required
  - `extra` object, required — Any additional attributes, may be passed empty.
  - `agent` string, required — The agent from which the event was sent
  - `timestamp` string, int64, required — The timestamp of the event in milliseconds since the unix epoch
  - `websiteId` string, int64, required — The unique identifier for the website as provided by Wunderkind

## Response `200`

A successful response.

- EventsSubmitEventResponse
  - `success` boolean — Success
  - `message` string — Message

## Other responses

- `default` — An unexpected error response.

---

[API](https://skmtc.dev/wunderkind/apis/wunderhook.md) · [All operations](https://skmtc.dev/wunderkind/apis/wunderhook/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/wunderkind/wunderhook/revisions/a25138bc98f4/schema)
