Create and import an SSH key pair
Function
This API is used to create and import an SSH key pair.
URI
POST /v3/{project_id}/keypairs
| Parameter | Mandatory | Type | Description |
|---|---|---|---|
| project_id | Yes | String | Project ID. |
Request Parameters
| Parameter | Mandatory | Type | Description |
|---|---|---|---|
| X-Auth-Token | Yes | String | User token. The token can be obtained by calling the IAM API (value of X-Subject-Token in the response header). |
| Parameter | Mandatory | Type | Description |
|---|---|---|---|
| keypair | Yes | CreateKeypairAction object | Parameter in the request body for creating a key pair. |
| Parameter | Mandatory | Type | Description |
|---|---|---|---|
| name | Yes | String | SSH key pair name.
|
| type | No | String | SSH key pair type. |
| public_key | No | String | String of the imported public key. |
| scope | No | String | Tenant-level or user-level. |
| user_id | No | String | User that an SSH key pair belongs to. |
| key_protection | No | KeyProtection object | Private key hosting and protection for the SSH key pair. |
| Parameter | Mandatory | Type | Description |
|---|---|---|---|
| private_key | No | String | Private key of the imported SSH key pair. |
| encryption | No | Encryption object | How a private key is encrypted and stored. |
| Parameter | Mandatory | Type | Description |
|---|---|---|---|
| type | No | String | Value options:
|
| kms_key_name | No | String | Name of a KMS key.
|
Response Parameters
Status code: 200
| Parameter | Type | Description |
|---|---|---|
| keypair | CreateKeypairResp object | SSH key pair details. |
| Parameter | Type | Description |
|---|---|---|
| name | String | SSH key pair name. |
| type | String | SSH key pair type. |
| public_key | String | Public key information about an SSH key pair. |
| private_key | String | Private key information about an SSH key pair.
|
| fingerprint | String | Fingerprint information about an SSH key pair. |
| user_id | String | User that an SSH key pair belongs to. |
Status code: 400
| Parameter | Type | Description |
|---|---|---|
| error_code | String | Error code. |
| error_msg | String | Error message. |
Example Requests
{
"keypair" : {
"name" : "demo2"
}
} Example Responses
Status code: 200
OK.
{
"keypair" : {
"name" : "demo",
"type" : "ssh",
"public_key" : "ssh-rsa AAAAB3NzaC1yc2EAAAADAQAB...",
"private_key" : "-----BEGIN RSA PRIVATE KEY-----...",
"fingerprint" : "49:ef:73:2b:9b:7f:2e:0c:58:d3:e3:42:8e:28:04:3b",
"user_id" : "e4f380899b1248918f3d37098dc63746"
}
} Status code: 400
Error occurred.
{
"error_code" : "KPS.XXX",
"error_msg" : "XXX"
} Status Codes
| Status Code | Description |
|---|---|
| 200 | OK. |
| 400 | Error occurred. |
Error Codes
See Error Codes.
Last Article: Query the SSH key pair list
Next Article: Query SSH key pair details
Did this article solve your problem?
Thank you for your score!Your feedback would help us improve the website.