Create key metadata (POST /v1/{tenant_id}/secrets)
Creates key metadata.
{tenant_id}: Project ID used to register key metadata
Request headers
X-Auth-Token
Specify the authentication token.
| Data type | Cardinality | 
|---|---|
| String | 1..1 | 
Content-Type
Specify the request body type.
Valid values: application/json
| Data type | Cardinality | 
|---|---|
| String | 1..1 | 
Request parameters
None
Request body
name
Key name
Valid characters: Halfwidth alphanumeric characters and halfwidth symbols
Number of characters: 1 to 255
If omitted, the resource ID of the key metadata is used
| Data type | Cardinality | 
|---|---|
| String | 0..1 | 
expiration
Key expiry datetime Value is returned in ISO-8601 format. When the expiry datetime is reached, the key is automatically deleted. If omitted, null is used, and the information will not be deleted automatically.
Format: YYYY-MM-DDThh:mm:ss.SSSSSSData type
| Data type | Cardinality | 
|---|---|
| datetime | 0..1 | 
payload
Payload of the key metadata to be registered.
While payload is optional, if it is specified, a null string cannot be used. To escape line feeds, specify "\n".
Line feeds can be specified as is.
Example: "-----BEGIN XXXX-----
> MIIEowIBAAKCAQEAuyWf1R49q5ccq60LoJ1MHf0lQ"
>-----END XXXX-----
If "text/plain" is specified for payload_content_type, the value must meet the following conditions:
- It must include a segment beginning with "-----BEGIN XXX-----" and ending in "-----END XXX-----"
 - The segment beginning with "-----BEGIN XXX-----" and ending in "-----END XXX-----", only the following characters are valid:
- Up to 64 characters per line
 - A-Z, a-z, 0-9, +/=
 
 
Number of characters: Unlimited (the actual limit is the number of bytes for Body)
| Data type | Cardinality | 
|---|---|
| String | 0..1 | 
payload_content_type
Format to use in the response for the key information payload
This is required if "payload" is specified
Valid values: "text/plain", "text/plain;charset=utf-8","text/plain; charset=utf-8", "application/octet-stream"
| Data type | Cardinality | 
|---|---|
| Enum("text/plain", "text/plain;charset=utf-8","text/plain; charset=utf-8", "application/octet-stream") | 0..1 | 
payload_content_encoding
Encryption format
This item cannot be specified if any of the following are specified for payload_content_type: "text/plain", "text/plain;charset=utf-8", "text/plain; charset=utf-8"
This item is required if "application/octet-stream" is specified for payload_content_type
Valid value: base64
| Data type | Cardinality | 
|---|---|
| Enum(base64) | 0..1 | 
Response headers
Status
The following error codes can be returned for the request.
One of the following values will be returned.
- 201:
 - Normal completion
 - 401:
 - Authentication error (no authentication token, incorrect authentication token, etc.)
 - 400:
 - Invalid access (invalid parameter, etc.)
 - 403:
 - Cannot access (no privileges)
 - 404:
 - No applicable resources
 - 413:
 - The key metadata exceeds 10000 bytes
 - 415:
 - An unsupported Content-Type was specified
 - 500:
 - Unexpected error
 
| Data type | Cardinality | 
|---|---|
| int | 1..1 | 
Response elements
secret_ref
Resource URI allocated to the registered key metadata
| Data type | Cardinality | Parent element | Child element | 
|---|---|---|---|
| String | 1..1 | None | None | 
Example of request
POST /v1/a759452216fd41cf8ee5aba321cfbd49/secrets
X-Auth-Token: "JpZCI6ICJjM2VlNzA4YTZhZTI0ZGRmOTJjMDc4 . . ."
Content-Type: "application/json"
Body: 
{
  "name": "key1",
  "expiration": "2015-02-28T19:14:44.180394",
  "payload":"-----BEGIN XXXX-----MIIEow . . . Rwg7Jp-----END XXXX-----",
  "payload_content_type": "text/plain",
  "payload_content_encoding": "base64"
}
     
     
   Example of response
Status Code: 201 Created
Content-Length: 118
Content-Type: application/json; charset=UTF-8
Location: http://<host>:9311/ a759452216fd41cf8ee5aba321cfbd49/secrets/a417d40d-cec7-4129-a5ad-afaac6fab603
{"secret_ref": "http://<host>:9311/v1/ a759452216fd41cf8ee5aba321cfbd49/secrets/a417d40d-cec7-4129-a5ad-afaac6fab603"}