Output only. For clusters using Connect, the timestamp of the most recent
connection established with Google Cloud. This time is updated every
several minutes, not continuously. For clusters that do not use GKE
Connect, or that have never connected successfully, this field will be
unset.
Output only. Google-generated UUID for this resource. This is unique across
all Membership resources. If a Membership resource is deleted and another
resource with the same name is created, it gets a different unique_id.
[[["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 GKE Hub v1 API class Membership is 2.5.0, and it contains information about a member cluster.\u003c/p\u003e\n"],["\u003cp\u003eThe Membership class implements interfaces such as IMessage, IEquatable, IDeepCloneable, and IBufferMessage, demonstrating its role in data handling and comparison.\u003c/p\u003e\n"],["\u003cp\u003eMembership includes properties like Authority, CreateTime, DeleteTime, Endpoint, and State, which provide details about the cluster's identity, lifecycle, connection, and status.\u003c/p\u003e\n"],["\u003cp\u003eThe class allows for optional fields like ExternalId and Labels to be set for identification and categorization, offering flexibility in managing memberships.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003eName\u003c/code\u003e property of a membership resource is a unique identifier, with a specific format and restrictions that must be adhered to for creation.\u003c/p\u003e\n"]]],[],null,["# GKE Hub v1 API - Class Membership (2.5.0)\n\nVersion latestkeyboard_arrow_down\n\n- [2.5.0 (latest)](/dotnet/docs/reference/Google.Cloud.GkeHub.V1/latest/Google.Cloud.GkeHub.V1.Membership)\n- [2.4.0](/dotnet/docs/reference/Google.Cloud.GkeHub.V1/2.4.0/Google.Cloud.GkeHub.V1.Membership)\n- [2.3.0](/dotnet/docs/reference/Google.Cloud.GkeHub.V1/2.3.0/Google.Cloud.GkeHub.V1.Membership)\n- [2.2.0](/dotnet/docs/reference/Google.Cloud.GkeHub.V1/2.2.0/Google.Cloud.GkeHub.V1.Membership)\n- [2.1.0](/dotnet/docs/reference/Google.Cloud.GkeHub.V1/2.1.0/Google.Cloud.GkeHub.V1.Membership)\n- [2.0.0](/dotnet/docs/reference/Google.Cloud.GkeHub.V1/2.0.0/Google.Cloud.GkeHub.V1.Membership)\n- [1.2.0](/dotnet/docs/reference/Google.Cloud.GkeHub.V1/1.2.0/Google.Cloud.GkeHub.V1.Membership)\n- [1.1.0](/dotnet/docs/reference/Google.Cloud.GkeHub.V1/1.1.0/Google.Cloud.GkeHub.V1.Membership)\n- [1.0.0](/dotnet/docs/reference/Google.Cloud.GkeHub.V1/1.0.0/Google.Cloud.GkeHub.V1.Membership) \n\n public sealed class Membership : IMessage\u003cMembership\u003e, IEquatable\u003cMembership\u003e, IDeepCloneable\u003cMembership\u003e, IBufferMessage, IMessage\n\nReference documentation and code samples for the GKE Hub v1 API class Membership.\n\nMembership contains information about a member cluster. \n\nInheritance\n-----------\n\n[object](https://learn.microsoft.com/dotnet/api/system.object) \\\u003e Membership \n\nImplements\n----------\n\n[IMessage](https://cloud.google.com/dotnet/docs/reference/Google.Protobuf/latest/Google.Protobuf.IMessage-1.html)[Membership](/dotnet/docs/reference/Google.Cloud.GkeHub.V1/latest/Google.Cloud.GkeHub.V1.Membership), [IEquatable](https://learn.microsoft.com/dotnet/api/system.iequatable-1)[Membership](/dotnet/docs/reference/Google.Cloud.GkeHub.V1/latest/Google.Cloud.GkeHub.V1.Membership), [IDeepCloneable](https://cloud.google.com/dotnet/docs/reference/Google.Protobuf/latest/Google.Protobuf.IDeepCloneable-1.html)[Membership](/dotnet/docs/reference/Google.Cloud.GkeHub.V1/latest/Google.Cloud.GkeHub.V1.Membership), [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.GkeHub.V1](/dotnet/docs/reference/Google.Cloud.GkeHub.V1/latest/Google.Cloud.GkeHub.V1)\n\nAssembly\n--------\n\nGoogle.Cloud.GkeHub.V1.dll\n\nConstructors\n------------\n\n### Membership()\n\n public Membership()\n\n### Membership(Membership)\n\n public Membership(Membership other)\n\nProperties\n----------\n\n### Authority\n\n public Authority Authority { get; set; }\n\nOptional. How to identify workloads from this Membership.\nSee the documentation on Workload Identity for more details:\n\u003chttps://cloud.google.com/kubernetes-engine/docs/how-to/workload-identity\u003e\n\n### CreateTime\n\n public Timestamp CreateTime { get; set; }\n\nOutput only. When the Membership was created.\n\n### DeleteTime\n\n public Timestamp DeleteTime { get; set; }\n\nOutput only. When the Membership was deleted.\n\n### Description\n\n public string Description { get; set; }\n\nOutput only. Description of this membership, limited to 63 characters.\nMust match the regex: `[a-zA-Z0-9][a-zA-Z0-9_\\-\\.\\ ]*`\n\nThis field is present for legacy purposes.\n\n### Endpoint\n\n public MembershipEndpoint Endpoint { get; set; }\n\nOptional. Endpoint information to reach this member.\n\n### ExternalId\n\n public string ExternalId { get; set; }\n\nOptional. An externally-generated and managed ID for this Membership. This\nID may be modified after creation, but this is not recommended.\n\nThe ID must match the regex: `[a-zA-Z0-9][a-zA-Z0-9_\\-\\.]*`\n\nIf this Membership represents a Kubernetes cluster, this value should be\nset to the UID of the `kube-system` namespace object.\n\n### Labels\n\n public MapField\u003cstring, string\u003e Labels { get; }\n\nOptional. Labels for this membership.\n\n### LastConnectionTime\n\n public Timestamp LastConnectionTime { get; set; }\n\nOutput only. For clusters using Connect, the timestamp of the most recent\nconnection established with Google Cloud. This time is updated every\nseveral minutes, not continuously. For clusters that do not use GKE\nConnect, or that have never connected successfully, this field will be\nunset.\n\n### MembershipName\n\n public MembershipName MembershipName { get; set; }\n\n[MembershipName](/dotnet/docs/reference/Google.Cloud.GkeHub.V1/latest/Google.Cloud.GkeHub.V1.MembershipName)-typed view over the [Name](/dotnet/docs/reference/Google.Cloud.GkeHub.V1/latest/Google.Cloud.GkeHub.V1.Membership#Google_Cloud_GkeHub_V1_Membership_Name) resource name property.\n\n### MonitoringConfig\n\n public MonitoringConfig MonitoringConfig { get; set; }\n\nOptional. The monitoring config information for this membership.\n\n### Name\n\n public string Name { get; set; }\n\nOutput only. The full, unique name of this Membership resource in the\nformat `projects/*/locations/*/memberships/{membership_id}`, set during\ncreation.\n\n`membership_id` must be a valid RFC 1123 compliant DNS label:\n\n1. At most 63 characters in length\n2. It must consist of lower case alphanumeric characters or `-`\n3. It must start and end with an alphanumeric character\n\nWhich can be expressed as the regex: `[a-z0-9]([-a-z0-9]*[a-z0-9])?`,\nwith a maximum length of 63 characters.\n\n### State\n\n public MembershipState State { get; set; }\n\nOutput only. State of the Membership resource.\n\n### TypeCase\n\n public Membership.TypeOneofCase TypeCase { get; }\n\n### UniqueId\n\n public string UniqueId { get; set; }\n\nOutput only. Google-generated UUID for this resource. This is unique across\nall Membership resources. If a Membership resource is deleted and another\nresource with the same name is created, it gets a different unique_id.\n\n### UpdateTime\n\n public Timestamp UpdateTime { get; set; }\n\nOutput only. When the Membership was last updated."]]