Zum Inhalt springen

Command: request a certificate for names covered by the project's zones (requires editor). Issuance runs asynchronously (DNS-01).

POST
/projects/{projectId}/certificates/request
curl --request POST \
--url https://example.com/api/v1/projects/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0/certificates/request \
--header 'Content-Type: application/json' \
--cookie dnse_session=<dnse_session> \
--data '{ "names": [ "*.example.com" ], "label": "example", "keyType": "ec256", "profile": "example", "validityDays": 1, "mustStaple": true, "preferredChain": "example", "ephemeralKey": true }'
projectId
required
string format: uuid
Media typeapplication/json
object
names
required
Array<string>
label

Display name for the certificate.

string
keyType
string
default: ec256
Allowed values: ec256 ec384 rsa2048 rsa4096
profile

ACME profile (e.g. classic, tlsserver, shortlived); empty = CA default.

string
validityDays

Requested notAfter in days; 0 = CA default.

integer
<= 397
mustStaple
boolean
preferredChain
string
ephemeralKey

Private key is offered once for download, then discarded (custody choice).

boolean

Certificate requested (status pending).

Malformed request.

Media typeapplication/json
object
error
required
string
Examplegenerated
{
"error": "example"
}

The project’s Let’s Encrypt account e-mail is not configured yet.

Media typeapplication/json
object
id
string format: uuid
projectId
string format: uuid
label
string
names
Array<string>
keyType
string
Allowed values: ec256 ec384 rsa2048 rsa4096
profile
string
validityDays
integer
mustStaple
boolean
preferredChain
string
ephemeralKey

One-time key download (custody choice).

boolean
keyAvailable

The private key is still downloadable.

boolean
keyRetrievedAt
string format: date-time
status
string
Allowed values: pending issued failed
notAfter
string format: date-time
fingerprint

SHA-256 of the leaf certificate.

string
lastError
string
Example
{
"keyType": "ec256",
"status": "pending"
}

No certificate issuer configured (DNSE_ACME_EMAIL unset).