public sealed class CreateCertificateRequest : IMessage<CreateCertificateRequest>, IEquatable<CreateCertificateRequest>, IDeepCloneable<CreateCertificateRequest>, IBufferMessage, IMessage
Reference documentation and code samples for the Certificate Authority v1 API class CreateCertificateRequest.
Request message for
[CertificateAuthorityService.CreateCertificate][google.cloud.security.privateca.v1.CertificateAuthorityService.CreateCertificate].
Optional. It must be unique within a location and match the regular
expression [a-zA-Z0-9_-]{1,63}. This field is required when using a
[CertificateAuthority][google.cloud.security.privateca.v1.CertificateAuthority]
in the Enterprise
[CertificateAuthority.tier][google.cloud.security.privateca.v1.CertificateAuthority.tier],
but is optional and its value is ignored otherwise.
public string IssuingCertificateAuthorityId { get; set; }
Optional. The resource ID of the
[CertificateAuthority][google.cloud.security.privateca.v1.CertificateAuthority]
that should issue the certificate. This optional field will ignore the
load-balancing scheme of the Pool and directly issue the certificate from
the CA with the specified ID, contained in the same
[CaPool][google.cloud.security.privateca.v1.CaPool] referenced by parent.
Per-CA quota rules apply. If left empty, a
[CertificateAuthority][google.cloud.security.privateca.v1.CertificateAuthority]
will be chosen from the [CaPool][google.cloud.security.privateca.v1.CaPool]
by the service. For example, to issue a
[Certificate][google.cloud.security.privateca.v1.Certificate] from a
Certificate Authority with resource name
"projects/my-project/locations/us-central1/caPools/my-pool/certificateAuthorities/my-ca",
you can set the
[parent][google.cloud.security.privateca.v1.CreateCertificateRequest.parent]
to "projects/my-project/locations/us-central1/caPools/my-pool" and the
[issuing_certificate_authority_id][google.cloud.security.privateca.v1.CreateCertificateRequest.issuing_certificate_authority_id]
to "my-ca".
Required. The resource name of the
[CaPool][google.cloud.security.privateca.v1.CaPool] associated with the
[Certificate][google.cloud.security.privateca.v1.Certificate], in the
format projects/*/locations/*/caPools/*.
Optional. An ID to identify requests. Specify a unique request ID so that
if you must retry your request, the server will know to ignore the request
if it has already been completed. The server will guarantee 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 original operation with the same request ID was
received, and if so, will ignore 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. If this is true, no
[Certificate][google.cloud.security.privateca.v1.Certificate] resource will
be persisted regardless of the
[CaPool][google.cloud.security.privateca.v1.CaPool]'s
[tier][google.cloud.security.privateca.v1.CaPool.tier], and the returned
[Certificate][google.cloud.security.privateca.v1.Certificate] will not
contain the
[pem_certificate][google.cloud.security.privateca.v1.Certificate.pem_certificate]
field.
[[["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\u003eCreateCertificateRequest\u003c/code\u003e class within the Google Cloud Security Private CA v1 API, with the latest version being 3.9.0.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003eCreateCertificateRequest\u003c/code\u003e class is used to request the creation of a new certificate, as detailed by the associated fields and parameters.\u003c/p\u003e\n"],["\u003cp\u003eThe class 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, indicating its role in handling certificate creation requests.\u003c/p\u003e\n"],["\u003cp\u003eKey properties of the \u003ccode\u003eCreateCertificateRequest\u003c/code\u003e include \u003ccode\u003eCertificate\u003c/code\u003e, \u003ccode\u003eCertificateId\u003c/code\u003e, \u003ccode\u003eIssuingCertificateAuthorityId\u003c/code\u003e, \u003ccode\u003eParent\u003c/code\u003e, \u003ccode\u003eRequestId\u003c/code\u003e, and \u003ccode\u003eValidateOnly\u003c/code\u003e, which define the details and constraints of the certificate being requested.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003eCreateCertificateRequest\u003c/code\u003e is associated with the \u003ccode\u003eCaPool\u003c/code\u003e resource, and the \u003ccode\u003eParent\u003c/code\u003e property allows specification of which \u003ccode\u003eCaPool\u003c/code\u003e to associate the new certificate with.\u003c/p\u003e\n"]]],[],null,["# Certificate Authority v1 API - Class CreateCertificateRequest (3.10.0)\n\nVersion latestkeyboard_arrow_down\n\n- [3.10.0 (latest)](/dotnet/docs/reference/Google.Cloud.Security.PrivateCA.V1/latest/Google.Cloud.Security.PrivateCA.V1.CreateCertificateRequest)\n- [3.9.0](/dotnet/docs/reference/Google.Cloud.Security.PrivateCA.V1/3.9.0/Google.Cloud.Security.PrivateCA.V1.CreateCertificateRequest)\n- [3.8.0](/dotnet/docs/reference/Google.Cloud.Security.PrivateCA.V1/3.8.0/Google.Cloud.Security.PrivateCA.V1.CreateCertificateRequest)\n- [3.7.0](/dotnet/docs/reference/Google.Cloud.Security.PrivateCA.V1/3.7.0/Google.Cloud.Security.PrivateCA.V1.CreateCertificateRequest)\n- [3.6.0](/dotnet/docs/reference/Google.Cloud.Security.PrivateCA.V1/3.6.0/Google.Cloud.Security.PrivateCA.V1.CreateCertificateRequest)\n- [3.5.0](/dotnet/docs/reference/Google.Cloud.Security.PrivateCA.V1/3.5.0/Google.Cloud.Security.PrivateCA.V1.CreateCertificateRequest)\n- [3.4.0](/dotnet/docs/reference/Google.Cloud.Security.PrivateCA.V1/3.4.0/Google.Cloud.Security.PrivateCA.V1.CreateCertificateRequest)\n- [3.3.0](/dotnet/docs/reference/Google.Cloud.Security.PrivateCA.V1/3.3.0/Google.Cloud.Security.PrivateCA.V1.CreateCertificateRequest)\n- [3.2.0](/dotnet/docs/reference/Google.Cloud.Security.PrivateCA.V1/3.2.0/Google.Cloud.Security.PrivateCA.V1.CreateCertificateRequest)\n- [3.1.0](/dotnet/docs/reference/Google.Cloud.Security.PrivateCA.V1/3.1.0/Google.Cloud.Security.PrivateCA.V1.CreateCertificateRequest)\n- [3.0.0](/dotnet/docs/reference/Google.Cloud.Security.PrivateCA.V1/3.0.0/Google.Cloud.Security.PrivateCA.V1.CreateCertificateRequest)\n- [2.3.0](/dotnet/docs/reference/Google.Cloud.Security.PrivateCA.V1/2.3.0/Google.Cloud.Security.PrivateCA.V1.CreateCertificateRequest)\n- [2.2.0](/dotnet/docs/reference/Google.Cloud.Security.PrivateCA.V1/2.2.0/Google.Cloud.Security.PrivateCA.V1.CreateCertificateRequest)\n- [2.1.0](/dotnet/docs/reference/Google.Cloud.Security.PrivateCA.V1/2.1.0/Google.Cloud.Security.PrivateCA.V1.CreateCertificateRequest)\n- [2.0.0](/dotnet/docs/reference/Google.Cloud.Security.PrivateCA.V1/2.0.0/Google.Cloud.Security.PrivateCA.V1.CreateCertificateRequest)\n- [1.0.0](/dotnet/docs/reference/Google.Cloud.Security.PrivateCA.V1/1.0.0/Google.Cloud.Security.PrivateCA.V1.CreateCertificateRequest) \n\n public sealed class CreateCertificateRequest : IMessage\u003cCreateCertificateRequest\u003e, IEquatable\u003cCreateCertificateRequest\u003e, IDeepCloneable\u003cCreateCertificateRequest\u003e, IBufferMessage, IMessage\n\nReference documentation and code samples for the Certificate Authority v1 API class CreateCertificateRequest.\n\nRequest message for\n\\[CertificateAuthorityService.CreateCertificate\\]\\[google.cloud.security.privateca.v1.CertificateAuthorityService.CreateCertificate\\]. \n\nInheritance\n-----------\n\n[object](https://learn.microsoft.com/dotnet/api/system.object) \\\u003e CreateCertificateRequest \n\nImplements\n----------\n\n[IMessage](https://cloud.google.com/dotnet/docs/reference/Google.Protobuf/latest/Google.Protobuf.IMessage-1.html)[CreateCertificateRequest](/dotnet/docs/reference/Google.Cloud.Security.PrivateCA.V1/latest/Google.Cloud.Security.PrivateCA.V1.CreateCertificateRequest), [IEquatable](https://learn.microsoft.com/dotnet/api/system.iequatable-1)[CreateCertificateRequest](/dotnet/docs/reference/Google.Cloud.Security.PrivateCA.V1/latest/Google.Cloud.Security.PrivateCA.V1.CreateCertificateRequest), [IDeepCloneable](https://cloud.google.com/dotnet/docs/reference/Google.Protobuf/latest/Google.Protobuf.IDeepCloneable-1.html)[CreateCertificateRequest](/dotnet/docs/reference/Google.Cloud.Security.PrivateCA.V1/latest/Google.Cloud.Security.PrivateCA.V1.CreateCertificateRequest), [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.Security.PrivateCA.V1](/dotnet/docs/reference/Google.Cloud.Security.PrivateCA.V1/latest/Google.Cloud.Security.PrivateCA.V1)\n\nAssembly\n--------\n\nGoogle.Cloud.Security.PrivateCA.V1.dll\n\nConstructors\n------------\n\n### CreateCertificateRequest()\n\n public CreateCertificateRequest()\n\n### CreateCertificateRequest(CreateCertificateRequest)\n\n public CreateCertificateRequest(CreateCertificateRequest other)\n\nProperties\n----------\n\n### Certificate\n\n public Certificate Certificate { get; set; }\n\nRequired. A \\[Certificate\\]\\[google.cloud.security.privateca.v1.Certificate\\]\nwith initial field values.\n\n### CertificateId\n\n public string CertificateId { get; set; }\n\nOptional. It must be unique within a location and match the regular\nexpression `[a-zA-Z0-9_-]{1,63}`. This field is required when using a\n\\[CertificateAuthority\\]\\[google.cloud.security.privateca.v1.CertificateAuthority\\]\nin the Enterprise\n\\[CertificateAuthority.tier\\]\\[google.cloud.security.privateca.v1.CertificateAuthority.tier\\],\nbut is optional and its value is ignored otherwise.\n\n### IssuingCertificateAuthorityId\n\n public string IssuingCertificateAuthorityId { get; set; }\n\nOptional. The resource ID of the\n\\[CertificateAuthority\\]\\[google.cloud.security.privateca.v1.CertificateAuthority\\]\nthat should issue the certificate. This optional field will ignore the\nload-balancing scheme of the Pool and directly issue the certificate from\nthe CA with the specified ID, contained in the same\n\\[CaPool\\]\\[google.cloud.security.privateca.v1.CaPool\\] referenced by `parent`.\nPer-CA quota rules apply. If left empty, a\n\\[CertificateAuthority\\]\\[google.cloud.security.privateca.v1.CertificateAuthority\\]\nwill be chosen from the \\[CaPool\\]\\[google.cloud.security.privateca.v1.CaPool\\]\nby the service. For example, to issue a\n\\[Certificate\\]\\[google.cloud.security.privateca.v1.Certificate\\] from a\nCertificate Authority with resource name\n\"projects/my-project/locations/us-central1/caPools/my-pool/certificateAuthorities/my-ca\",\nyou can set the\n\\[parent\\]\\[google.cloud.security.privateca.v1.CreateCertificateRequest.parent\\]\nto \"projects/my-project/locations/us-central1/caPools/my-pool\" and the\n\\[issuing_certificate_authority_id\\]\\[google.cloud.security.privateca.v1.CreateCertificateRequest.issuing_certificate_authority_id\\]\nto \"my-ca\".\n\n### Parent\n\n public string Parent { get; set; }\n\nRequired. The resource name of the\n\\[CaPool\\]\\[google.cloud.security.privateca.v1.CaPool\\] associated with the\n\\[Certificate\\]\\[google.cloud.security.privateca.v1.Certificate\\], in the\nformat `projects/*/locations/*/caPools/*`.\n\n### ParentAsCaPoolName\n\n public CaPoolName ParentAsCaPoolName { get; set; }\n\n[CaPoolName](/dotnet/docs/reference/Google.Cloud.Security.PrivateCA.V1/latest/Google.Cloud.Security.PrivateCA.V1.CaPoolName)-typed view over the [Parent](/dotnet/docs/reference/Google.Cloud.Security.PrivateCA.V1/latest/Google.Cloud.Security.PrivateCA.V1.CreateCertificateRequest#Google_Cloud_Security_PrivateCA_V1_CreateCertificateRequest_Parent) resource name property.\n\n### RequestId\n\n public string RequestId { get; set; }\n\nOptional. An ID to identify requests. Specify a unique request ID so that\nif you must retry your request, the server will know to ignore the request\nif it has already been completed. The server will guarantee that for at\nleast 60 minutes since the first request.\n\nFor example, consider a situation where you make an initial request and the\nrequest times out. If you make the request again with the same request ID,\nthe server can check if original operation with the same request ID was\nreceived, and if so, will ignore the second request. This prevents clients\nfrom 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### ValidateOnly\n\n public bool ValidateOnly { get; set; }\n\nOptional. If this is true, no\n\\[Certificate\\]\\[google.cloud.security.privateca.v1.Certificate\\] resource will\nbe persisted regardless of the\n\\[CaPool\\]\\[google.cloud.security.privateca.v1.CaPool\\]'s\n\\[tier\\]\\[google.cloud.security.privateca.v1.CaPool.tier\\], and the returned\n\\[Certificate\\]\\[google.cloud.security.privateca.v1.Certificate\\] will not\ncontain the\n\\[pem_certificate\\]\\[google.cloud.security.privateca.v1.Certificate.pem_certificate\\]\nfield."]]