public sealed class GenerateClientCertificateRequest : IMessage<GenerateClientCertificateRequest>, IEquatable<GenerateClientCertificateRequest>, IDeepCloneable<GenerateClientCertificateRequest>, IBufferMessage, IMessage
Reference documentation and code samples for the AlloyDB v1alpha API class GenerateClientCertificateRequest.
Message for requests to generate a client certificate signed by the Cluster
CA.
Optional. An optional hint to the endpoint to generate the client
certificate with the requested duration. The duration can be from 1 hour to
24 hours. The endpoint may or may not honor the hint. If the hint is left
unspecified or is not honored, then the endpoint will pick an appropriate
default duration.
Optional. An optional request ID to identify requests. Specify a unique
request ID so that if you must retry your request, the server ignores the
request if it has already been completed. The server guarantees that for at
least 60 minutes since the first request.
For example, consider a situation where you make an initial request and
the request times out. If you make the request again with the same request
ID, the server can check if the original operation with the same request ID
was received, and if so, ignores the second request. This prevents
clients from accidentally creating duplicate commitments.
The request ID must be a valid UUID with the exception that zero UUID is
not supported (00000000-0000-0000-0000-000000000000).
Optional. An optional hint to the endpoint to generate a client certificate
that can be used by AlloyDB connectors to exchange additional metadata with
the server after TLS handshake.
[[["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 document provides reference information for the \u003ccode\u003eGenerateClientCertificateRequest\u003c/code\u003e class within the AlloyDB v1alpha API, specifically for the .NET environment.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003eGenerateClientCertificateRequest\u003c/code\u003e class is used to request the generation of a client certificate signed by the Cluster CA, inheriting from various interfaces for message handling and object comparison.\u003c/p\u003e\n"],["\u003cp\u003eIt includes properties such as \u003ccode\u003eCertDuration\u003c/code\u003e, which allows suggesting a duration for the certificate, and \u003ccode\u003eParent\u003c/code\u003e, which indicates the cluster the certificate request is associated with, using a specific format.\u003c/p\u003e\n"],["\u003cp\u003eThe class offers options for specifying the client's public key or a pem-encoded CSR and allows for setting a unique \u003ccode\u003eRequestId\u003c/code\u003e for operation idempotency.\u003c/p\u003e\n"],["\u003cp\u003eThere are parameters that provide options for metadata exchange and that are deemed obsolete such as the \u003ccode\u003ePemCsr\u003c/code\u003e field.\u003c/p\u003e\n"]]],[],null,["# AlloyDB v1alpha API - Class GenerateClientCertificateRequest (1.0.0-alpha12)\n\nVersion latestkeyboard_arrow_down\n\n- [1.0.0-alpha12 (latest)](/dotnet/docs/reference/Google.Cloud.AlloyDb.V1Alpha/latest/Google.Cloud.AlloyDb.V1Alpha.GenerateClientCertificateRequest)\n- [1.0.0-alpha11](/dotnet/docs/reference/Google.Cloud.AlloyDb.V1Alpha/1.0.0-alpha11/Google.Cloud.AlloyDb.V1Alpha.GenerateClientCertificateRequest) \n\n public sealed class GenerateClientCertificateRequest : IMessage\u003cGenerateClientCertificateRequest\u003e, IEquatable\u003cGenerateClientCertificateRequest\u003e, IDeepCloneable\u003cGenerateClientCertificateRequest\u003e, IBufferMessage, IMessage\n\nReference documentation and code samples for the AlloyDB v1alpha API class GenerateClientCertificateRequest.\n\nMessage for requests to generate a client certificate signed by the Cluster\nCA. \n\nInheritance\n-----------\n\n[object](https://learn.microsoft.com/dotnet/api/system.object) \\\u003e GenerateClientCertificateRequest \n\nImplements\n----------\n\n[IMessage](https://cloud.google.com/dotnet/docs/reference/Google.Protobuf/latest/Google.Protobuf.IMessage-1.html)[GenerateClientCertificateRequest](/dotnet/docs/reference/Google.Cloud.AlloyDb.V1Alpha/latest/Google.Cloud.AlloyDb.V1Alpha.GenerateClientCertificateRequest), [IEquatable](https://learn.microsoft.com/dotnet/api/system.iequatable-1)[GenerateClientCertificateRequest](/dotnet/docs/reference/Google.Cloud.AlloyDb.V1Alpha/latest/Google.Cloud.AlloyDb.V1Alpha.GenerateClientCertificateRequest), [IDeepCloneable](https://cloud.google.com/dotnet/docs/reference/Google.Protobuf/latest/Google.Protobuf.IDeepCloneable-1.html)[GenerateClientCertificateRequest](/dotnet/docs/reference/Google.Cloud.AlloyDb.V1Alpha/latest/Google.Cloud.AlloyDb.V1Alpha.GenerateClientCertificateRequest), [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.AlloyDb.V1Alpha](/dotnet/docs/reference/Google.Cloud.AlloyDb.V1Alpha/latest/Google.Cloud.AlloyDb.V1Alpha)\n\nAssembly\n--------\n\nGoogle.Cloud.AlloyDb.V1Alpha.dll\n\nConstructors\n------------\n\n### GenerateClientCertificateRequest()\n\n public GenerateClientCertificateRequest()\n\n### GenerateClientCertificateRequest(GenerateClientCertificateRequest)\n\n public GenerateClientCertificateRequest(GenerateClientCertificateRequest other)\n\nProperties\n----------\n\n### CertDuration\n\n public Duration CertDuration { get; set; }\n\nOptional. An optional hint to the endpoint to generate the client\ncertificate with the requested duration. The duration can be from 1 hour to\n24 hours. The endpoint may or may not honor the hint. If the hint is left\nunspecified or is not honored, then the endpoint will pick an appropriate\ndefault duration.\n\n### Parent\n\n public string Parent { get; set; }\n\nRequired. The name of the parent resource. The required format is:\n\n- projects/{project}/locations/{location}/clusters/{cluster}\n\n### ParentAsClusterName\n\n public ClusterName ParentAsClusterName { get; set; }\n\n[ClusterName](/dotnet/docs/reference/Google.Cloud.AlloyDb.V1Alpha/latest/Google.Cloud.AlloyDb.V1Alpha.ClusterName)-typed view over the [Parent](/dotnet/docs/reference/Google.Cloud.AlloyDb.V1Alpha/latest/Google.Cloud.AlloyDb.V1Alpha.GenerateClientCertificateRequest#Google_Cloud_AlloyDb_V1Alpha_GenerateClientCertificateRequest_Parent) resource name property.\n\n### PemCsr\n\n [Obsolete]\n public string PemCsr { get; set; }\n\nOptional. A pem-encoded X.509 certificate signing request (CSR). It is\nrecommended to use public_key instead.\n\n### PublicKey\n\n public string PublicKey { get; set; }\n\nOptional. The public key from the client.\n\n### RequestId\n\n public string RequestId { get; set; }\n\nOptional. An optional request ID to identify requests. Specify a unique\nrequest ID so that if you must retry your request, the server ignores the\nrequest if it has already been completed. The server guarantees that for at\nleast 60 minutes since the first request.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same request\nID, the server can check if the original operation with the same request ID\nwas received, and if so, ignores the second request. This prevents\nclients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is\nnot supported (00000000-0000-0000-0000-000000000000).\n\n### UseMetadataExchange\n\n public bool UseMetadataExchange { get; set; }\n\nOptional. An optional hint to the endpoint to generate a client certificate\nthat can be used by AlloyDB connectors to exchange additional metadata with\nthe server after TLS handshake."]]