The most specific category associated with a category page.
To represent full path of category, use '>' sign to separate different
hierarchies. If '>' is part of the category name, replace it with
other character(s).
Category pages include special pages such as sales or promotions. For
instance, a special sale page may have the category hierarchy:
"pageCategory" : "Sales > 2017 Black Friday Deals".
Required for view-category-page events. Other event types should not set
this field. Otherwise, an INVALID_ARGUMENT error is returned.
This should be kept the same for all user events triggered from the same
pageview. For example, an item detail page view could trigger multiple
events as the user is browsing the page. The pageview_id property should
be kept the same for all these events so that they can be grouped together
properly.
When using the client side event reporting with JavaScript pixel and Google
Tag Manager, this value is filled in automatically.
When using the client side event reporting with JavaScript pixel and Google
Tag Manager, this value is filled in automatically. However, some browser
privacy restrictions may cause this field to be empty.
Complete URL (window.location.href) of the user's current page.
When using the client side event reporting with JavaScript pixel and Google
Tag Manager, this value is filled in automatically. Maximum length 5,000
characters.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-08-07 UTC."],[[["\u003cp\u003eThis documentation details the \u003ccode\u003ePageInfo\u003c/code\u003e class, which is part of the Google Cloud Discovery Engine v1beta API, specifically within the \u003ccode\u003eGoogle.Cloud.DiscoveryEngine.V1Beta\u003c/code\u003e namespace.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003ePageInfo\u003c/code\u003e class provides detailed information about a web page, with properties like \u003ccode\u003ePageCategory\u003c/code\u003e, \u003ccode\u003ePageviewId\u003c/code\u003e, \u003ccode\u003eReferrerUri\u003c/code\u003e, and \u003ccode\u003eUri\u003c/code\u003e, each designed to capture specific aspects of a page view.\u003c/p\u003e\n"],["\u003cp\u003eThe class is designed to be used in conjunction with various Google services such as JavaScript pixel and Google Tag Manager to ensure proper tracking of user events on a webpage.\u003c/p\u003e\n"],["\u003cp\u003e\u003ccode\u003ePageInfo\u003c/code\u003e implements several interfaces, including \u003ccode\u003eIMessage\u003c/code\u003e, \u003ccode\u003eIEquatable\u003c/code\u003e, \u003ccode\u003eIDeepCloneable\u003c/code\u003e, and \u003ccode\u003eIBufferMessage\u003c/code\u003e, and inherits from the .NET object class, offering functionalities such as deep cloning and message handling.\u003c/p\u003e\n"],["\u003cp\u003eThere are two available versions of the \u003ccode\u003ePageInfo\u003c/code\u003e documentation provided, the latest which is 1.0.0-beta18 and 1.0.0-beta17.\u003c/p\u003e\n"]]],[],null,["# Discovery Engine v1beta API - Class PageInfo (1.0.0-beta19)\n\nVersion latestkeyboard_arrow_down\n\n- [1.0.0-beta19 (latest)](/dotnet/docs/reference/Google.Cloud.DiscoveryEngine.V1Beta/latest/Google.Cloud.DiscoveryEngine.V1Beta.PageInfo)\n- [1.0.0-beta18](/dotnet/docs/reference/Google.Cloud.DiscoveryEngine.V1Beta/1.0.0-beta18/Google.Cloud.DiscoveryEngine.V1Beta.PageInfo) \n\n public sealed class PageInfo : IMessage\u003cPageInfo\u003e, IEquatable\u003cPageInfo\u003e, IDeepCloneable\u003cPageInfo\u003e, IBufferMessage, IMessage\n\nReference documentation and code samples for the Discovery Engine v1beta API class PageInfo.\n\nDetailed page information. \n\nInheritance\n-----------\n\n[object](https://learn.microsoft.com/dotnet/api/system.object) \\\u003e PageInfo \n\nImplements\n----------\n\n[IMessage](https://cloud.google.com/dotnet/docs/reference/Google.Protobuf/latest/Google.Protobuf.IMessage-1.html)[PageInfo](/dotnet/docs/reference/Google.Cloud.DiscoveryEngine.V1Beta/latest/Google.Cloud.DiscoveryEngine.V1Beta.PageInfo), [IEquatable](https://learn.microsoft.com/dotnet/api/system.iequatable-1)[PageInfo](/dotnet/docs/reference/Google.Cloud.DiscoveryEngine.V1Beta/latest/Google.Cloud.DiscoveryEngine.V1Beta.PageInfo), [IDeepCloneable](https://cloud.google.com/dotnet/docs/reference/Google.Protobuf/latest/Google.Protobuf.IDeepCloneable-1.html)[PageInfo](/dotnet/docs/reference/Google.Cloud.DiscoveryEngine.V1Beta/latest/Google.Cloud.DiscoveryEngine.V1Beta.PageInfo), [IBufferMessage](https://cloud.google.com/dotnet/docs/reference/Google.Protobuf/latest/Google.Protobuf.IBufferMessage.html), [IMessage](https://cloud.google.com/dotnet/docs/reference/Google.Protobuf/latest/Google.Protobuf.IMessage.html) \n\nInherited Members\n-----------------\n\n[object.GetHashCode()](https://learn.microsoft.com/dotnet/api/system.object.gethashcode) \n[object.GetType()](https://learn.microsoft.com/dotnet/api/system.object.gettype) \n[object.ToString()](https://learn.microsoft.com/dotnet/api/system.object.tostring)\n\nNamespace\n---------\n\n[Google.Cloud.DiscoveryEngine.V1Beta](/dotnet/docs/reference/Google.Cloud.DiscoveryEngine.V1Beta/latest/Google.Cloud.DiscoveryEngine.V1Beta)\n\nAssembly\n--------\n\nGoogle.Cloud.DiscoveryEngine.V1Beta.dll\n\nConstructors\n------------\n\n### PageInfo()\n\n public PageInfo()\n\n### PageInfo(PageInfo)\n\n public PageInfo(PageInfo other)\n\nProperties\n----------\n\n### PageCategory\n\n public string PageCategory { get; set; }\n\nThe most specific category associated with a category page.\n\nTo represent full path of category, use '\\\u003e' sign to separate different\nhierarchies. If '\\\u003e' is part of the category name, replace it with\nother character(s).\n\nCategory pages include special pages such as sales or promotions. For\ninstance, a special sale page may have the category hierarchy:\n`\"pageCategory\" : \"Sales \u003e 2017 Black Friday Deals\"`.\n\nRequired for `view-category-page` events. Other event types should not set\nthis field. Otherwise, an `INVALID_ARGUMENT` error is returned.\n\n### PageviewId\n\n public string PageviewId { get; set; }\n\nA unique ID of a web page view.\n\nThis should be kept the same for all user events triggered from the same\npageview. For example, an item detail page view could trigger multiple\nevents as the user is browsing the page. The `pageview_id` property should\nbe kept the same for all these events so that they can be grouped together\nproperly.\n\nWhen using the client side event reporting with JavaScript pixel and Google\nTag Manager, this value is filled in automatically.\n\n### ReferrerUri\n\n public string ReferrerUri { get; set; }\n\nThe referrer URL of the current page.\n\nWhen using the client side event reporting with JavaScript pixel and Google\nTag Manager, this value is filled in automatically. However, some browser\nprivacy restrictions may cause this field to be empty.\n\n### Uri\n\n public string Uri { get; set; }\n\nComplete URL (window.location.href) of the user's current page.\n\nWhen using the client side event reporting with JavaScript pixel and Google\nTag Manager, this value is filled in automatically. Maximum length 5,000\ncharacters."]]