# REST Resource: customers.certificateProvisioningProcesses

- [Resource: CertificateProvisioningProcess](https://developers.google.com/chrome/management/reference/rest/v1/customers.certificateProvisioningProcesses#CertificateProvisioningProcess)
  - [JSON representation](https://developers.google.com/chrome/management/reference/rest/v1/customers.certificateProvisioningProcesses#CertificateProvisioningProcess.SCHEMA_REPRESENTATION)
- [Methods](https://developers.google.com/chrome/management/reference/rest/v1/customers.certificateProvisioningProcesses#METHODS_SUMMARY)

## Resource: CertificateProvisioningProcess

A certificate provisioning process.

| JSON representation |
|---|
| ``` { "name": string, "provisioningProfileId": string, "subjectPublicKeyInfo": string, "startTime": string, "signData": string, "signatureAlgorithm": enum (`https://developers.google.com/chrome/management/reference/rest/Shared.Types/SignatureAlgorithm`), "signature": string, "issuedCertificate": string, "failureMessage": string, // Union field `ca_connection_type` can be only one of the following: "genericCaConnection": { object (`https://developers.google.com/chrome/management/reference/rest/Shared.Types/CertificateProvisioningProcess#GenericCaConnection`) }, "scepCaConnection": { object (`https://developers.google.com/chrome/management/reference/rest/Shared.Types/CertificateProvisioningProcess#ScepCaConnection`) } // End of list of possible types for union field `ca_connection_type`. // Union field `profile_type` can be only one of the following: "genericProfile": { object (`https://developers.google.com/chrome/management/reference/rest/Shared.Types/CertificateProvisioningProcess#GenericProfile`) }, "scepProfile": { object (`https://developers.google.com/chrome/management/reference/rest/Shared.Types/CertificateProvisioningProcess#ScepProfile`) } // End of list of possible types for union field `profile_type`. // Union field `subject` can be only one of the following: "chromeOsDevice": { object (`https://developers.google.com/chrome/management/reference/rest/Shared.Types/CertificateProvisioningProcess#ChromeOsDevice`) }, "chromeOsUserSession": { object (`https://developers.google.com/chrome/management/reference/rest/Shared.Types/CertificateProvisioningProcess#ChromeOsUserSession`) } // End of list of possible types for union field `subject`. } ``` |

| Fields ||
|---|---|
| `name` | `string` Identifier. Resource name of the `CertificateProvisioningProcess`. The name pattern is given as `customers/{customer}/certificateProvisioningProcesses/{certificateProvisioningProcess}` with `{customer}` being the obfuscated customer id and `{certificateProvisioningProcess}` being the certificate provisioning process id. |
| `provisioningProfileId` | `string` Output only. The ID of the certificate provisioning profile. |
| `subjectPublicKeyInfo` | `string (https://developers.google.com/discovery/v1/type-format format)` Output only. The public key for which a certificate should be provisioned. Represented as a DER-encoded X.509 SubjectPublicKeyInfo. A base64-encoded string. |
| `startTime` | ``string (`https://protobuf.dev/reference/protobuf/google.protobuf#timestamp` format)`` Output only. Server-generated timestamp of when the certificate provisioning process has been created. Uses RFC 3339, where generated output will always be Z-normalized and use 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples: `"2014-10-02T15:01:23Z"`, `"2014-10-02T15:01:23.045123456Z"` or `"2014-10-02T15:01:23+05:30"`. |
| `signData` | `string (https://developers.google.com/discovery/v1/type-format format)` Output only. The data that the client was asked to sign. This field is only present after the `certificateProvisioningProcesses.signData` operation has been initiated. A base64-encoded string. |
| `signatureAlgorithm` | ``enum (`https://developers.google.com/chrome/management/reference/rest/Shared.Types/SignatureAlgorithm`)`` Output only. The signature algorithm that the client and backend components use when processing `signData`. If the `profile_type` is a `GenericProfile`, this field will only be present after the `certificateProvisioningProcesses.signData` operation was initiated. If the `profile_type` is a `ScepProfile`, the field will always be present. |
| `signature` | `string (https://developers.google.com/discovery/v1/type-format format)` Output only. The signature of `signatureAlgorithm`, generated using the client's private key using `signatureAlgorithm`. This field is only present after the `certificateProvisioningProcesses.signData` operation has finished. A base64-encoded string. |
| `issuedCertificate` | `string` Output only. The issued certificate for this `CertificateProvisioningProcess` in PEM format. |
| `failureMessage` | `string` Output only. A message describing why this `CertificateProvisioningProcess` has failed. Presence of this field indicates that the `CertificateProvisioningProcess` has failed. |
| Union field `ca_connection_type`. The type of the Certificate Authority connection which is used for this certificate provisioning process. `ca_connection_type` can be only one of the following: ||
| `genericCaConnection` | ``object (`https://developers.google.com/chrome/management/reference/rest/Shared.Types/CertificateProvisioningProcess#GenericCaConnection`)`` Output only. The CA connection is a generic CA connection. |
| `scepCaConnection` | ``object (`https://developers.google.com/chrome/management/reference/rest/Shared.Types/CertificateProvisioningProcess#ScepCaConnection`)`` Output only. The CA connection is a SCEP CA connection. |
| Union field `profile_type`. The type of the certificate provisioning profile which is used for this certificate provisioning process. `profile_type` can be only one of the following: ||
| `genericProfile` | ``object (`https://developers.google.com/chrome/management/reference/rest/Shared.Types/CertificateProvisioningProcess#GenericProfile`)`` Output only. The profile is a generic certificate provisioning profile. |
| `scepProfile` | ``object (`https://developers.google.com/chrome/management/reference/rest/Shared.Types/CertificateProvisioningProcess#ScepProfile`)`` Output only. The profile is a SCEP certificate provisioning profile. |
| Union field `subject`. The type of the entity a client certificate is being provisioned for (subject). `subject` can be only one of the following: ||
| `chromeOsDevice` | ``object (`https://developers.google.com/chrome/management/reference/rest/Shared.Types/CertificateProvisioningProcess#ChromeOsDevice`)`` Output only. The client certificate is being provisioned for a ChromeOS device. This contains information about the device. |
| `chromeOsUserSession` | ``object (`https://developers.google.com/chrome/management/reference/rest/Shared.Types/CertificateProvisioningProcess#ChromeOsUserSession`)`` Output only. The client certificate is being provisioned for a ChromeOS user. This contains information about the current user session. |

| ## Methods ||
|---|---|
| ### `https://developers.google.com/chrome/management/reference/rest/v1/customers.certificateProvisioningProcesses/claim` | Claims a certificate provisioning process. |
| ### `https://developers.google.com/chrome/management/reference/rest/v1/customers.certificateProvisioningProcesses/get` | Retrieves a certificate provisioning process. |
| ### `https://developers.google.com/chrome/management/reference/rest/v1/customers.certificateProvisioningProcesses/setFailure` | Marks a certificate provisioning process as failed. |
| ### `https://developers.google.com/chrome/management/reference/rest/v1/customers.certificateProvisioningProcesses/signData` | Requests the client that initiated a certificate provisioning process to sign data. |
| ### `https://developers.google.com/chrome/management/reference/rest/v1/customers.certificateProvisioningProcesses/uploadCertificate` | Uploads a successfully issued certificate for a certificate provisioning process. |