Exporting a Certificate
Function
This API is used to export a certificate.
-
There are two methods for different compression statuses:
-
If is_compressed is set to true, a compressed file package is returned. The package name is in the format of Certificate name_Lowercase letters of the type field.zip, for example, test_apache.zip.
-
If type is set to APACHE, the compressed package contains three files: server.key (key file in PEM format), chain.crt (certificate chain in PEM format), and server.crt (certificate in PEM format).
-
If type is set to IIS, the compressed package contains two files: keystorePass.txt (keystore password) and server.pfx (PFX certificate. The certificate and certificate chain are contained in the same file).
-
If type is set to NGINX, the compressed package contains two files: server.key (key file in PEM format) and server.crt (content in PEM format. The certificate and certificate chain are contained in the same file).
-
If typeis set to TOMCAT, the compressed package contains two files: keystorePass.txt (keystore password) and server.jks (JKX certificate. The certificate and certificate chain are contained in the same file).
-
If type is set to OTHER, the compressed package contains three files: server.key (key file in PEM format), chain.pem (certificate chain), and server.pem (certificate).
-
-
If is_compressed is set to false, a certificate in JSON format is returned, including the following parameters:
-
If type is set to APACHE, NGINX, or OTHER, the following parameters are returned:
-
certificate: indicates the certificate content in PEM format.
-
certificate_chain: indicates the certificate chain in PEM format.
-
private_key: indicates the certificate private key in PEM format.
-
-
If type is set to "IIS" or "TOMCAT", it is not defined currently.
-
-
Only certificates in the Issued status can be exported.
URI
POST /v1/private-certificates/{certificate_id}/export
|
Parameter |
Mandatory |
Type |
Description |
|---|---|---|---|
|
certificate_id |
Yes |
String |
ID of the private certificate you want to export. Minimum: 36 Maximum: 36 |
Request Parameters
|
Parameter |
Mandatory |
Type |
Description |
|---|---|---|---|
|
X-Auth-Token |
Yes |
String |
User token. The token can be obtained by calling the token API of IAM. The value of X-Auth-Token in the response header is the user token. |
|
Parameter |
Mandatory |
Type |
Description |
|---|---|---|---|
|
is_compressed |
Yes |
String |
Whether to compress.
|
|
type |
Yes |
String |
Type of the server on which the certificate is installed. The options are as follows:
|
Response Parameters
Status code: 200
|
Parameter |
Type |
Description |
|---|---|---|
|
private_key |
String |
Private key content |
|
certificate |
String |
Certificate content |
|
certificate_chain |
String |
Certificate chain content. |
Status code: 400
|
Parameter |
Type |
Description |
|---|---|---|
|
error_code |
String |
Error code Minimum: 3 Maximum: 36 |
|
error_msg |
String |
Error message Minimum: 0 Maximum: 1024 |
Status code: 401
|
Parameter |
Type |
Description |
|---|---|---|
|
error_code |
String |
Error code Minimum: 3 Maximum: 36 |
|
error_msg |
String |
Error message Minimum: 0 Maximum: 1024 |
Status code: 403
|
Parameter |
Type |
Description |
|---|---|---|
|
error_code |
String |
Error code Minimum: 3 Maximum: 36 |
|
error_msg |
String |
Error message Minimum: 0 Maximum: 1024 |
Status code: 404
|
Parameter |
Type |
Description |
|---|---|---|
|
error_code |
String |
Error code Minimum: 3 Maximum: 36 |
|
error_msg |
String |
Error message Minimum: 0 Maximum: 1024 |
Status code: 500
|
Parameter |
Type |
Description |
|---|---|---|
|
error_code |
String |
Error code Minimum: 3 Maximum: 36 |
|
error_msg |
String |
Error message Minimum: 0 Maximum: 1024 |
Example Requests
When you use this API to export a certificate, a token is required in the X-Auth-Token field in the request header. The token must have the permission to access the API.
POST https://ccm.ae-ad-1.myhuaweicloud.com/v1/private-certificates/6434f74f-2d13-4e6a-89eb-93ee313f1a43/export
{
"type" : "other",
"is_compressed" : false
}
Example Responses
Status code: 200
Request succeeded.
{
"certificate" : "-----BEGIN CERTIFICATE-----\r\n******\r\n-----END CERTIFICATE-----",
"certificate_chain" : "-----BEGIN CERTIFICATE-----\r\n******\r\n-----END CERTIFICATE-----\r\n-----BEGIN CERTIFICATE-----\r\n******\r\n-----END CERTIFICATE-----",
"private_key" : "-----BEGIN RSA PRIVATE KEY-----\r\n******\r\n-----END RSA PRIVATE KEY-----\r\n"
}
Status code: 400
Invalid request parameters.
{
"error_code" : "PCA.XXX",
"error_msg" : "XXX"
}
Status code: 401
Token required for the requested page.
{
"error_code" : "PCA.XXX",
"error_msg" : "XXX"
}
Status code: 403
Authentication failed.
{
"error_code" : "PCA.XXX",
"error_msg" : "XXX"
}
Status code: 404
No resources available or found.
{
"error_code" : "PCA.XXX",
"error_msg" : "XXX"
}
Status code: 500
Internal service error.
{
"error_code" : "PCA.XXX",
"error_msg" : "XXX"
}
Status Codes
|
Status Code |
Description |
|---|---|
|
200 |
Request succeeded. |
|
400 |
Invalid request parameters. |
|
401 |
Token required for the requested page. |
|
403 |
Authentication failed. |
|
404 |
No resources available or found. |
|
500 |
Internal service error. |
Error Codes
See Error Codes.
Feedback
Was this page helpful?
Provide feedbackThank you very much for your feedback. We will continue working to improve the documentation.