Optional. For logged-in requests or login/registration requests, the unique
account identifier associated with this user. You can use the username if
it is stable (meaning it is the same for every request associated with the
same user), or any stable user ID of your choice. Leave blank for non
logged-in actions or guest checkout.
Optional. Creation time for this account associated with this user. Leave
blank for non logged-in actions, guest checkout, or when there is no
account associated with the current user.
[[["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\u003eThe latest version of the \u003ccode\u003eUserInfo\u003c/code\u003e class for the Google Cloud reCAPTCHA Enterprise v1 API is version 2.17.0.\u003c/p\u003e\n"],["\u003cp\u003eThis class, \u003ccode\u003eUserInfo\u003c/code\u003e, is used to encapsulate user information for requests protected by reCAPTCHA Enterprise.\u003c/p\u003e\n"],["\u003cp\u003e\u003ccode\u003eUserInfo\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.\u003c/p\u003e\n"],["\u003cp\u003eThe class offers properties for account information such as \u003ccode\u003eAccountId\u003c/code\u003e, \u003ccode\u003eCreateAccountTime\u003c/code\u003e, and \u003ccode\u003eUserIds\u003c/code\u003e, allowing for the optional storage of user-related data.\u003c/p\u003e\n"],["\u003cp\u003eDocumentation is available for versions of \u003ccode\u003eUserInfo\u003c/code\u003e going back to version 1.2.0, providing a range of historical versions.\u003c/p\u003e\n"]]],[],null,["# Google Cloud reCAPTCHA Enterprise v1 API - Class UserInfo (2.18.0)\n\nVersion latestkeyboard_arrow_down\n\n- [2.18.0 (latest)](/dotnet/docs/reference/Google.Cloud.RecaptchaEnterprise.V1/latest/Google.Cloud.RecaptchaEnterprise.V1.UserInfo)\n- [2.17.0](/dotnet/docs/reference/Google.Cloud.RecaptchaEnterprise.V1/2.17.0/Google.Cloud.RecaptchaEnterprise.V1.UserInfo)\n- [2.16.0](/dotnet/docs/reference/Google.Cloud.RecaptchaEnterprise.V1/2.16.0/Google.Cloud.RecaptchaEnterprise.V1.UserInfo)\n- [2.15.0](/dotnet/docs/reference/Google.Cloud.RecaptchaEnterprise.V1/2.15.0/Google.Cloud.RecaptchaEnterprise.V1.UserInfo)\n- [2.14.0](/dotnet/docs/reference/Google.Cloud.RecaptchaEnterprise.V1/2.14.0/Google.Cloud.RecaptchaEnterprise.V1.UserInfo)\n- [2.13.0](/dotnet/docs/reference/Google.Cloud.RecaptchaEnterprise.V1/2.13.0/Google.Cloud.RecaptchaEnterprise.V1.UserInfo)\n- [2.12.0](/dotnet/docs/reference/Google.Cloud.RecaptchaEnterprise.V1/2.12.0/Google.Cloud.RecaptchaEnterprise.V1.UserInfo)\n- [2.11.0](/dotnet/docs/reference/Google.Cloud.RecaptchaEnterprise.V1/2.11.0/Google.Cloud.RecaptchaEnterprise.V1.UserInfo)\n- [2.10.0](/dotnet/docs/reference/Google.Cloud.RecaptchaEnterprise.V1/2.10.0/Google.Cloud.RecaptchaEnterprise.V1.UserInfo)\n- [2.9.0](/dotnet/docs/reference/Google.Cloud.RecaptchaEnterprise.V1/2.9.0/Google.Cloud.RecaptchaEnterprise.V1.UserInfo)\n- [2.8.0](/dotnet/docs/reference/Google.Cloud.RecaptchaEnterprise.V1/2.8.0/Google.Cloud.RecaptchaEnterprise.V1.UserInfo)\n- [2.7.0](/dotnet/docs/reference/Google.Cloud.RecaptchaEnterprise.V1/2.7.0/Google.Cloud.RecaptchaEnterprise.V1.UserInfo)\n- [2.6.0](/dotnet/docs/reference/Google.Cloud.RecaptchaEnterprise.V1/2.6.0/Google.Cloud.RecaptchaEnterprise.V1.UserInfo)\n- [2.5.0](/dotnet/docs/reference/Google.Cloud.RecaptchaEnterprise.V1/2.5.0/Google.Cloud.RecaptchaEnterprise.V1.UserInfo)\n- [2.4.0](/dotnet/docs/reference/Google.Cloud.RecaptchaEnterprise.V1/2.4.0/Google.Cloud.RecaptchaEnterprise.V1.UserInfo)\n- [2.3.0](/dotnet/docs/reference/Google.Cloud.RecaptchaEnterprise.V1/2.3.0/Google.Cloud.RecaptchaEnterprise.V1.UserInfo)\n- [2.2.0](/dotnet/docs/reference/Google.Cloud.RecaptchaEnterprise.V1/2.2.0/Google.Cloud.RecaptchaEnterprise.V1.UserInfo)\n- [2.1.0](/dotnet/docs/reference/Google.Cloud.RecaptchaEnterprise.V1/2.1.0/Google.Cloud.RecaptchaEnterprise.V1.UserInfo)\n- [2.0.0](/dotnet/docs/reference/Google.Cloud.RecaptchaEnterprise.V1/2.0.0/Google.Cloud.RecaptchaEnterprise.V1.UserInfo)\n- [1.6.0](/dotnet/docs/reference/Google.Cloud.RecaptchaEnterprise.V1/1.6.0/Google.Cloud.RecaptchaEnterprise.V1.UserInfo)\n- [1.5.0](/dotnet/docs/reference/Google.Cloud.RecaptchaEnterprise.V1/1.5.0/Google.Cloud.RecaptchaEnterprise.V1.UserInfo)\n- [1.4.0](/dotnet/docs/reference/Google.Cloud.RecaptchaEnterprise.V1/1.4.0/Google.Cloud.RecaptchaEnterprise.V1.UserInfo)\n- [1.3.0](/dotnet/docs/reference/Google.Cloud.RecaptchaEnterprise.V1/1.3.0/Google.Cloud.RecaptchaEnterprise.V1.UserInfo)\n- [1.2.0](/dotnet/docs/reference/Google.Cloud.RecaptchaEnterprise.V1/1.2.0/Google.Cloud.RecaptchaEnterprise.V1.UserInfo) \n\n public sealed class UserInfo : IMessage\u003cUserInfo\u003e, IEquatable\u003cUserInfo\u003e, IDeepCloneable\u003cUserInfo\u003e, IBufferMessage, IMessage\n\nReference documentation and code samples for the Google Cloud reCAPTCHA Enterprise v1 API class UserInfo.\n\nUser information associated with a request protected by reCAPTCHA Enterprise. \n\nInheritance\n-----------\n\n[object](https://learn.microsoft.com/dotnet/api/system.object) \\\u003e UserInfo \n\nImplements\n----------\n\n[IMessage](https://cloud.google.com/dotnet/docs/reference/Google.Protobuf/latest/Google.Protobuf.IMessage-1.html)[UserInfo](/dotnet/docs/reference/Google.Cloud.RecaptchaEnterprise.V1/latest/Google.Cloud.RecaptchaEnterprise.V1.UserInfo), [IEquatable](https://learn.microsoft.com/dotnet/api/system.iequatable-1)[UserInfo](/dotnet/docs/reference/Google.Cloud.RecaptchaEnterprise.V1/latest/Google.Cloud.RecaptchaEnterprise.V1.UserInfo), [IDeepCloneable](https://cloud.google.com/dotnet/docs/reference/Google.Protobuf/latest/Google.Protobuf.IDeepCloneable-1.html)[UserInfo](/dotnet/docs/reference/Google.Cloud.RecaptchaEnterprise.V1/latest/Google.Cloud.RecaptchaEnterprise.V1.UserInfo), [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.RecaptchaEnterprise.V1](/dotnet/docs/reference/Google.Cloud.RecaptchaEnterprise.V1/latest/Google.Cloud.RecaptchaEnterprise.V1)\n\nAssembly\n--------\n\nGoogle.Cloud.RecaptchaEnterprise.V1.dll\n\nConstructors\n------------\n\n### UserInfo()\n\n public UserInfo()\n\n### UserInfo(UserInfo)\n\n public UserInfo(UserInfo other)\n\nProperties\n----------\n\n### AccountId\n\n public string AccountId { get; set; }\n\nOptional. For logged-in requests or login/registration requests, the unique\naccount identifier associated with this user. You can use the username if\nit is stable (meaning it is the same for every request associated with the\nsame user), or any stable user ID of your choice. Leave blank for non\nlogged-in actions or guest checkout.\n\n### CreateAccountTime\n\n public Timestamp CreateAccountTime { get; set; }\n\nOptional. Creation time for this account associated with this user. Leave\nblank for non logged-in actions, guest checkout, or when there is no\naccount associated with the current user.\n\n### UserIds\n\n public RepeatedField\u003cUserId\u003e UserIds { get; }\n\nOptional. Identifiers associated with this user or request."]]