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 within the Google Cloud Discovery Engine v1 API, covering its structure, properties, and usage within the .NET framework.\u003c/p\u003e\n"],["\u003cp\u003eThe latest version of \u003ccode\u003ePageInfo\u003c/code\u003e is 1.6.0, with previous versions also documented, such as 1.5.0, 1.4.0, 1.3.0, 1.2.0, 1.1.0, and a beta version 1.0.0-beta06.\u003c/p\u003e\n"],["\u003cp\u003e\u003ccode\u003ePageInfo\u003c/code\u003e implements interfaces like \u003ccode\u003eIMessage\u003c/code\u003e, \u003ccode\u003eIEquatable\u003c/code\u003e, \u003ccode\u003eIDeepCloneable\u003c/code\u003e, and \u003ccode\u003eIBufferMessage\u003c/code\u003e, offering functionalities such as deep cloning and protocol buffer message handling.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003ePageInfo\u003c/code\u003e class has properties such as \u003ccode\u003ePageCategory\u003c/code\u003e, \u003ccode\u003ePageviewId\u003c/code\u003e, \u003ccode\u003eReferrerUri\u003c/code\u003e, and \u003ccode\u003eUri\u003c/code\u003e to capture detailed information about the current page and associated user interactions.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003ePageInfo\u003c/code\u003e class has two constructors, one empty and one that take \u003ccode\u003ePageInfo\u003c/code\u003e as a parameter for easy cloning and is used to capture detailed information about a viewed web page.\u003c/p\u003e\n"]]],[],null,["# Discovery Engine v1 API - Class PageInfo (1.9.0)\n\nVersion latestkeyboard_arrow_down\n\n- [1.9.0 (latest)](/dotnet/docs/reference/Google.Cloud.DiscoveryEngine.V1/latest/Google.Cloud.DiscoveryEngine.V1.PageInfo)\n- [1.8.0](/dotnet/docs/reference/Google.Cloud.DiscoveryEngine.V1/1.8.0/Google.Cloud.DiscoveryEngine.V1.PageInfo)\n- [1.7.0](/dotnet/docs/reference/Google.Cloud.DiscoveryEngine.V1/1.7.0/Google.Cloud.DiscoveryEngine.V1.PageInfo)\n- [1.6.0](/dotnet/docs/reference/Google.Cloud.DiscoveryEngine.V1/1.6.0/Google.Cloud.DiscoveryEngine.V1.PageInfo)\n- [1.5.0](/dotnet/docs/reference/Google.Cloud.DiscoveryEngine.V1/1.5.0/Google.Cloud.DiscoveryEngine.V1.PageInfo)\n- [1.4.0](/dotnet/docs/reference/Google.Cloud.DiscoveryEngine.V1/1.4.0/Google.Cloud.DiscoveryEngine.V1.PageInfo)\n- [1.3.0](/dotnet/docs/reference/Google.Cloud.DiscoveryEngine.V1/1.3.0/Google.Cloud.DiscoveryEngine.V1.PageInfo)\n- [1.2.0](/dotnet/docs/reference/Google.Cloud.DiscoveryEngine.V1/1.2.0/Google.Cloud.DiscoveryEngine.V1.PageInfo)\n- [1.1.0](/dotnet/docs/reference/Google.Cloud.DiscoveryEngine.V1/1.1.0/Google.Cloud.DiscoveryEngine.V1.PageInfo)\n- [1.0.0-beta06](/dotnet/docs/reference/Google.Cloud.DiscoveryEngine.V1/1.0.0-beta06/Google.Cloud.DiscoveryEngine.V1.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 v1 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.V1/latest/Google.Cloud.DiscoveryEngine.V1.PageInfo), [IEquatable](https://learn.microsoft.com/dotnet/api/system.iequatable-1)[PageInfo](/dotnet/docs/reference/Google.Cloud.DiscoveryEngine.V1/latest/Google.Cloud.DiscoveryEngine.V1.PageInfo), [IDeepCloneable](https://cloud.google.com/dotnet/docs/reference/Google.Protobuf/latest/Google.Protobuf.IDeepCloneable-1.html)[PageInfo](/dotnet/docs/reference/Google.Cloud.DiscoveryEngine.V1/latest/Google.Cloud.DiscoveryEngine.V1.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.V1](/dotnet/docs/reference/Google.Cloud.DiscoveryEngine.V1/latest/Google.Cloud.DiscoveryEngine.V1)\n\nAssembly\n--------\n\nGoogle.Cloud.DiscoveryEngine.V1.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."]]