Delete a revoked or expired certificate
const url = 'https://opfield.example.com/api/certificates/550e8400-e29b-41d4-a716-446655440000';const options = {method: 'DELETE', headers: {Authorization: 'Bearer <token>'}};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request DELETE \ --url https://opfield.example.com/api/certificates/550e8400-e29b-41d4-a716-446655440000 \ --header 'Authorization: Bearer <token>'Deletes a certificate that no longer works: revoked, or past its expiry. A valid certificate is refused with 409 CERT_STILL_VALID (revoke it first). A revoked certificate deleted before it expires stays on its CA’s CRL until then (keptOnCrlUntil). Refused with 409 CERT_IN_USE (details.routes, details.sslCertificates) while a route uses it as internalCertificateId or an SSL certificate is linked from it, and with 403 SYSTEM_CERT for system certificates. Audited as cert.delete. Needs pki:cert:revoke on the certificate; works after the license grace period.
Authorizations
Section titled “Authorizations”Parameters
Section titled “Parameters”Path Parameters
Section titled “Path Parameters”Example
550e8400-e29b-41d4-a716-446655440000Responses
Section titled “Responses”Successful response
object
Resource object. Exact fields depend on the endpoint.
object
Example
{ "data": { "id": "550e8400-e29b-41d4-a716-446655440000", "commonName": "app.example.com", "type": "tls-server", "status": "active", "notAfter": "2025-01-01T00:00:00.000Z" }}Bad request
object
Error code
Human-readable error message
Additional error details
Example
{ "code": "VALIDATION_ERROR", "message": "Request validation failed", "details": [ { "path": [ "name" ], "message": "Required" } ]}Authentication required
object
Error code
Human-readable error message
Additional error details
Example
{ "code": "UNAUTHORIZED", "message": "Authentication required"}Forbidden
object
Error code
Human-readable error message
Additional error details
Example
{ "code": "FORBIDDEN", "message": "Insufficient permissions"}Not found
object
Error code
Human-readable error message
Additional error details
Example
{ "code": "NOT_FOUND", "message": "Resource not found"}Conflict
object
Error code
Human-readable error message
Additional error details
Example
{ "code": "CONFLICT", "message": "Resource already exists"}Unprocessable entity
object
Error code
Human-readable error message
Additional error details
Example
{ "code": "UNPROCESSABLE_ENTITY", "message": "Request could not be processed"}Internal server error
object
Error code
Human-readable error message
Additional error details
Example
{ "code": "INTERNAL_ERROR", "message": "Internal server error"}